← All B.S.W.E. Bachelor of Software Engineering Flashcard Decks

Software Architecture & Design Patterns Flashcards

6 cards from real B.S.W.E. Bachelor of Software Engineering practice questions. Tap to flip, then mark Knew It or Still Learning — missed cards come back until you master them.

Read the first 6 Software Architecture & Design Patterns flashcards as text
  1. What does SOLID stand for in object-oriented design?

    Answer: Single responsibility, Open/closed, Liskov substitution, Interface segregation, Dependency inversion

    SOLID represents five object-oriented design principles introduced by Robert C. Martin for writing maintainable and scalable code.

  2. The Facade pattern is used to:

    Answer: Provide a unified interface to a complex subsystem

    The Facade pattern provides a simplified, unified interface to a complex subsystem, making it easier to use without knowing its internals.

  3. What is 'coupling' in software architecture?

    Answer: The degree of interdependence between modules

    Coupling refers to the degree of interdependence between software modules — low coupling is preferred for maintainability.

  4. Which pattern is used to define a family of algorithms and make them interchangeable?

    Answer: Strategy

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable at runtime without changing clients.

  5. What is the primary advantage of a layered architecture?

    Answer: Separation of concerns with clear layer responsibilities

    Layered architecture separates concerns across presentation, business logic, and data layers, making systems easier to maintain and test.

  6. In the Decorator pattern, what is the main mechanism used?

    Answer: Composition to wrap objects with additional behaviors

    The Decorator pattern uses composition to dynamically wrap objects with new responsibilities without modifying their class.