The Architecture Reference

Path systems thinking · The Architect's Path · Beginner

Systems Thinking Basics

Systems thinking is a practice of nonlinear thinking — seeing stocks, flows, and feedback loops, and using the Iceberg Model to look beneath events to the structures and mental models that cause them.

Path systems thinking Beginner ⏱ 5 min read Complete

🌱 Analogy

In a linear world, 7 kale seeds give 7 plants in 50 days. In a real garden you get 9 (kale is biennial) or 0 — rabbits, deer, heat, nitrogen, cabbage worms, slugs, and birds all act on each other in hard-to-predict ways. That is nonlinearity in its simplest form. Software has become a garden, not an assembly line.

Diana Montalion frames systems thinking as a practice — “reading a book about tennis won’t teach you to play tennis” — not a body of knowledge you finish. As software became systems of software, relational complexity (the number of variables you must consider to make a decision) outran the linear, reductionist thinking we were trained in. We have moved from the machine age into the systems age.

Linear and nonlinear thinking

Both are necessary; neither is “good” or “bad.”

  • Linear thinking is sequential, predictable, repeatable, and control-focused. It is exactly right for breaking a problem into parts, finding a bug, following best practice, and driving toward elegant simplicity.
  • Nonlinear (systems) thinking sees that relationships among parts produce behavior the parts don’t have alone. Systems are emergent and not fully controllable or predictable.

A system is “a group of interrelated hardware, software, people, organizations, and other elements that interact and/or interdepend to serve a shared purpose.” A group of parts with no relationships among them is just a collection.

Stocks, flows, and feedback

Donella Meadows’ basic model is a central state box (the system’s parts and activities at a moment) with inflows and outflows.

graph LR
IN["Inflows"] --> S["State<br/>(stock at a moment in time)"]
S --> OUT["Outflows"]
S -.->|"compare to goal"| D["Discrepancy<br/>(want vs. have)"]
D -.->|"adjust inflows until → 0"| IN
OUT -->|"feedback loop"| IN

A discrepancy is the gap between what we want the system to do and what it does; we adjust inflows until it approaches zero. The model works for intangibles too — trust rises with transparency and falls with lies. Time is always a factor, because the state changes over time, asynchronously, while the world changes around it. A feedback loop uses output to improve future input.

🔑 Conceptual integrity

Our ideas design our systems — “everything running in production represents our concepts.” Conceptual integrity (Brooks: “the most important consideration in system design”) is concepts in good relationship, serving the whole. Its opposite is “many good but independent and uncoordinated ideas.” To change production, first change the concepts. Relationship design is systems design.

The Iceberg Model

We react endlessly to events — bugs, outages, late initiatives — patching and adding features, yet “nothing ever really changes.” The Iceberg Model guides thinking downward through four levels to the real causes:

  1. Events — what happened and was visible (two teams fight for control).
  2. Patterns and Trends — has this happened before, under what circumstances? (Hiring valued a tech-centric skillset and never “how well do you think with others?”)
  3. Structures — the rules, rituals, and processes that hold the pattern in place (whiteboard tests measure knowledge stock but not knowledge flow).
  4. Mental Models — the beliefs that generate the structures (“soft skills aren’t a priority for engineers”). Root causes are almost always mental models.
graph TD
EV["Events<br/>what happened, visible"] -->|"look deeper"| PT["Patterns and Trends<br/>has this happened before?"]
PT -->|"look deeper"| ST["Structures<br/>rules and rituals holding it"]
ST -->|"look deeper"| MM["Mental Models<br/>beliefs that generate structures"]
MM -->|"root causes almost always live here"| RC["Lasting change"]

⚠️ Structure produces behavior — the Beer Game

In Jay Forrester’s Beer Game, a demand spike ripples up a supply chain (Retailer → Wholesaler → Distributor → Brewery). Almost everyone over-orders and loses — because a hierarchical ordering structure with no shared real-time information makes it inevitable. As Sterman put it, “it just cannot be true that, by chance, all the smart people ended up as retailers.” Blame the structure, not the players.

A hands-on practice

Systems thinking is hands-on: you make artifacts (documents, models, whiteboard photos), not just abstractions. The first step is willingness — to see differently, change your mind, and step into the unknown.

💡 The central paradox

“The most valuable quality of a systems thinker is they know they don’t know.” Two obstacles block us: we are spectacularly bad at nonlinear thinking, and we don’t know we’re bad at it — “the worse we are at it, the more certain we are that we are good at it.”

See also

When to use it — and when not

✅ Reach for it when

  • When relational complexity has outpaced reductionist, divide-and-conquer thinking.
  • When a problem keeps recurring despite repeated surface fixes.
  • When you need to look beneath visible events to the structures and beliefs driving them.

⛔ Think twice when

  • When the problem is genuinely simple and linear thinking (find the bug, follow best practice) is exactly right.
  • When you mistake making a diagram for actually modeling and thinking together.
  • When you stay abstract instead of going deeper — systems thinking means going down, not floating up.

Check your understanding

Score: 0 / 4

1. What is the core difference between linear and nonlinear (systems) thinking?

Linear thinking is reductionist, predictable, and control-focused — and necessary in its place. Systems behavior is emergent: relationships among parts drive it, and it is not fully controllable or predictable.

2. What are the four levels of the Iceberg Model, top to bottom?

The Iceberg dives from the visible tip (events) down through recurring patterns and the structures that hold them in place, to the mental models that are 'almost always' the root cause.

3. In Donella Meadows' basic system model, what is a 'discrepancy'?

A central state box has inflows and outflows; we change inflows until the discrepancy approaches zero. Linear thinking stops at 'delivered', but systems thinking keeps observing because outputs generate new discrepancies.

4. What does the Beer Game teach about systemic outcomes?

A hierarchical ordering structure with no system-wide real-time information makes everyone over-order. As Sterman noted, 'it just cannot be true that, by chance, all the smart people ended up as retailers' — blame the structure, not the players.

Comments

Sign in with GitHub to join the discussion.