How Software Breaks
This site is a reference for organizing recurring failure structures as Failure Patterns,
starting from the question of how software breaks.
The focus is not on judging specific technologies or methodologies.
The purpose is to observe and understand how software in operation,
through incomplete assumptions, limited information,
and accumulation of well-intentioned decisions,
converges toward certain forms of breakage.
Why Start from "How It Breaks"
In many contexts, failures are treated as isolated mistakes or problems with technology choices.
In reality, however, similar failures are often observed repeatedly in different forms.
This site is intended to provide a language to treat them not as accidental problems,
but as recurring structures.
Rather than determining "correctness,"
it organizes how decisions and changes have accumulated under what assumptions.
How to Read
This site is not intended to be read in order.
It assumes dictionary-style reference to necessary chapters and Patterns.
- For understanding the classification of how things break:
I. What Breaks - For organizing reasons why breakage becomes fixed:
II. Why It Breaks - For referencing cases organized as recurring structures:
III. Failure Patterns - For addressing recovery of decision-making in situations where assumptions are incomplete:
IV. Restoring Decision-Making
About Assumptions
This site does not take a position against Agile or AI.
It addresses what assumptions and decision structures are necessary
to make them viable in practice.
The position and intent behind the overall structure of this site
are summarized in Perspective.
Background concepts and referenced knowledge are organized in the Appendix.
About Terminology
This site uses certain terms in ways that differ from their common meanings.
For definitions, refer to the Glossary.