Courseiva
easyMultiple Choice

200-901 Practice Question: Which design principle suggests that a module…

Which design principle suggests that a module should be responsible for a single part of the functionality?

⚠ Common exam trap

Cisco often tests the distinction between Separation of Concerns and DRY, as candidates may confuse 'not repeating code' with 'assigning single responsibility' — the trap is that DRY is about code reuse, not module focus.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Separation of Concerns

Separation of Concerns (SoC) is the design principle that dictates each module or component should focus on a single, well-defined part of the functionality. In software development, this reduces coupling and increases cohesion, making code easier to maintain, test, and refactor. For example, in a Python Flask web application, separating route handling, business logic, and database access into distinct modules follows SoC.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    Separation of Concerns

    Why this is correct

    Separation of Concerns assigns each module one distinct responsibility, directly satisfying the stem's requirement for a single part of the functionality. Unlike cohesion, which measures how strongly related a module's internals are, this principle prescribes the boundary itself, keeping unrelated functionality isolated so changes in one area do not ripple across others.

  • ✗

    YAGNI (You Aren't Gonna Need It)

    Why it's wrong here

    YAGNI advises against building features before they are needed; it says nothing about how responsibilities are divided within a module. The single-responsibility principle is the design rule that assigns one part of the functionality to each module, and YAGNI applies to deferring speculative features instead.

  • ✗

    DRY (Don't Repeat Yourself)

    Why it's wrong here

    DRY targets duplicated logic, not module scope; it advocates consolidating repeated code into one authoritative place. The stem asks about assigning one responsibility per module, which is the Single Responsibility Principle. DRY would be correct when the same validation routine is copy-pasted across several modules and should be extracted.

  • ✗

    KISS (Keep It Simple, Stupid)

    Why it's wrong here

    KISS advocates avoiding unnecessary complexity in a solution, not limiting a module to one responsibility. The stem describes cohesion of purpose, which is the Single Responsibility Principle. KISS would be the right principle when a working script is over-engineered with needless abstraction layers.

About these practice questions

One of 975 original 200-901 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This 200-901 practice question is part of Courseiva's free Cisco certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 200-901 exam.