Systems ThinkingFND-05 · theory

Source · Learning Systems Thinking (Diana Montalion); Thinking in Systems (Donella Meadows)

Why this matters

Learning Systems Thinking (Diana Montalion), Part I

Architects rarely fail from a bad component. They fail from bad interactions — a change that is locally sensible and globally catastrophic. Optimizing a part can degrade the whole.

Systems thinking is the discipline of seeing the whole — the parts, their interconnections, and the behaviour those connections produce over time — rather than reasoning about pieces in isolation. It is the mental habit that keeps an architect from fixing a symptom and moving the problem elsewhere.

The concept

Learning Systems Thinking (Montalion); Thinking in Systems (Meadows, referenced)

A system is a set of elements interconnected in a way that produces a behaviour or purpose. The behaviour lives in the interconnections, not the parts — which is why swapping a part rarely changes systemic behaviour.

Feedback loops are the engine of system behaviour. Reinforcing (positive) loops amplify change — growth or collapse. Balancing (negative) loops resist change and seek stability. Most surprising system behaviour comes from delays and interacting loops.

Emergence is behaviour that appears only at the level of the whole and cannot be predicted from any single part — a traffic jam is not a property of any one car.

Mental models are our internal beliefs about how the system works. They are always simplifications, and most disagreement between smart people is really a clash of mental models. Systems thinking works by making those models explicit and revising them against feedback.

Worked example

Learning Systems Thinking (Montalion), on feedback loops and leverage

A team is drowning in production incidents, so they add a rule: every change needs three approvals. Incidents drop — briefly.

Seen as a system, the approval rule is a balancing loop meant to reduce defects. But it introduces a delay: changes now queue for days. Developers respond by batching many changes into one big release to amortize the approval cost. Big releases are riskier, so incidents climb again — a reinforcing loop the team never intended.

The symptom (incidents) was treated locally; the systemic structure (loops plus delay) pushed the problem somewhere worse. A systems thinker would have looked for the loop, not just the incident, and intervened on the structure — perhaps by making small changes safer rather than harder.

How it connects

Learning Systems Thinking (Montalion); Fundamentals of Software Architecture, Ch. 2

Systems thinking is the meta-skill behind everything else in this path. Architecture characteristics (FND-03) are emergent properties of the whole — you cannot point to the 'scalability component'. Trade-off analysis (FND-02) is reasoning about how optimizing one part affects the system. And an architecture style (FND-04) is a structure that shapes the system's feedback loops.

Montalion's core move — surface your mental model, then revise it against feedback — is exactly how an architect should hold every decision: as a current best model, not a fixed truth.

Common traps
  • Optimizing a part in isolation. Local improvements can degrade the whole because behaviour lives in the interconnections, not the components.
  • Treating a symptom instead of the systemic structure. Feedback loops and delays often push a locally-fixed problem somewhere worse.
  • Mistaking your mental model for reality. Models are always simplifications; systems thinking means making them explicit and revising them against feedback.
Key takeaways
  • A system's behaviour lives in the interconnections between elements, not in the parts themselves.
  • Feedback loops drive behaviour: reinforcing loops amplify, balancing loops stabilize, and delays create surprise.
  • Emergent properties and mental models mean architects should see the whole and continually revise their beliefs against feedback.