Module 1
What is Software Architecture?
Define architecture by consequence rather than by diagram: the decisions that are expensive to reverse, why they exist, and how to tell one from an ordinary design choice.
What you will be able to do
- Apply a concrete test for whether a decision is architectural.
- Explain architecture in terms of quality attributes rather than components.
- Separate architecture, design and implementation without arguing about labels.
- Recognise the four failure modes that account for most damaged systems.
- 9 min
01Architecture Is What You Cannot Cheaply Undo
Every popular definition of architecture is either circular or useless in a meeting. This one is neither: architecture is the set of decisions whose cost of reversal is high.
- 9 min
02Structure Serves Quality Attributes
Structure is never the goal. It is the mechanism by which a system achieves the qualities someone is willing to pay for — and those qualities are always in conflict.
- 9 min
03Architecture, Design, and Implementation
Where the line falls between the three, why arguing about the labels is a waste of time, and the one question that actually settles it.
- 10 min
04Four Ways Architecture Fails in Practice
The big ball of mud, the distributed monolith, gold-plating, and the ivory tower — what each one looks like from the inside, and the early signal for each.
What is Software Architecture?
8 questions · pass at 70%