Free Online Flashcard Deck

5 Software Architecture Free Online FlashCards

Study 5 Software Architecture with 12 free online flashcards. Review key terms, definitions, and concepts with this interactive flashcard deck.

12 cards
01
Front

What does software architecture describe?

Back

Software architecture is a system’s high-level organization: its major components, their interactions, constraints, and the reasoning behind key decisions.

02
Front

Why describe architecture using different views?

Back

Different views address different stakeholder concerns; for example, a module view can help developers, while a deployment view can help operators.

03
Front

How does a layered architectural style organize responsibilities?

Back

A layered style organizes responsibilities into levels, such as presentation, application logic, and data access. Limits on which layers can call others help preserve the structure.

04
Front

What is a key benefit and limitation of client–server architecture?

Back

Clients request services from servers. This centralizes service provision, but clients may depend on server availability and network performance.

05
Front

How does a pipe-and-filter style process data?

Back

Independent filters transform data and pass results through pipes. This suits sequences of data-processing steps, especially when filters avoid shared state and dependence on other filters’ identities.

06
Front

What is a trade-off of event-driven architecture?

Back

Producers publish events for consumers to handle. This can reduce direct dependencies, but complicates event ordering, tracing, and failure handling.

07
Front

What trade-off comes with separately deployable services?

Back

Capabilities are provided by separately deployable services. Independent deployment and scaling may help, but network communication, distributed data, and operational complexity add costs.

08
Front

Can a system combine architectural styles?

Back

Styles can be combined: a system may be layered internally while using client–server communication between its user interface and backend.

09
Front

What is system decomposition?

Back

System decomposition divides a system into components or subsystems with defined responsibilities and interfaces.

10
Front

What do high cohesion and low coupling mean?

Back

High cohesion keeps related responsibilities together within a component; low coupling means changes in one component require few changes elsewhere.

11
Front

What do quality attributes describe?

Back

Quality attributes describe how well a system performs important behaviors or meets operational needs, rather than what features it provides.

12
Front

How does a quality scenario make a goal useful?

Back

A measurable scenario makes a quality goal concrete, such as specifying that 95% of catalog searches finish within 300 milliseconds at 5,000 requests per second.