โ† All CPA Flashcard Decks

Software Development & Design Principles Flashcards

7 cards from real CPA practice questions. Tap to flip, then mark Knew It or Still Learning โ€” missed cards come back until you master them.

Read the first 7 Software Development & Design Principles flashcards as text
  1. Which software development model delivers working software at the end of every iteration?

    Answer: Iterative/Incremental

    Iterative/Incremental models like Agile deliver working software increments at the end of each iteration or sprint.

  2. What is the Dependency Inversion Principle (DIP) concerned with?

    Answer: High-level modules should not depend on low-level modules; both should depend on abstractions

    DIP states that high-level modules should not depend on low-level modules; both should depend on abstractions, decoupling implementation details.

  3. In software engineering, what is 'technical debt'?

    Answer: The implied cost of rework caused by choosing a quick solution now instead of a better long-term approach

    Technical debt refers to the future cost of additional rework caused by choosing an expedient but suboptimal solution in the present.

  4. Which design pattern allows incompatible interfaces to work together?

    Answer: Adapter

    The Adapter pattern acts as a wrapper that converts the interface of a class into another interface that clients expect, enabling incompatible interfaces to collaborate.

  5. In Agile, what is a 'user story'?

    Answer: A short description of a feature from the end user's perspective

    A user story is a short, simple description of a feature told from the perspective of the person who desires the new capability, typically following the format: 'As a [role], I want [goal] so that [benefit].'

  6. What is the purpose of Continuous Integration (CI) in software development?

    Answer: Automatically merging and testing code changes frequently to detect integration problems early

    Continuous Integration is the practice of frequently merging developer code changes into a shared repository, where automated builds and tests are run to catch problems early.

  7. Which structural design pattern composes objects into tree structures to represent part-whole hierarchies?

    Answer: Composite

    The Composite pattern lets clients treat individual objects and compositions of objects uniformly by organizing them into tree structures.

Software Development & Design Principles Flashcards โ€” CPA Study Cards with Answers