In computing, the Chaos model
is a structure of
software development that extends the spiral model and
waterfall model.
The chaos model notes that the
phases of the life cycle apply to all levels of projects,
from the whole project to individual lines of code.
-
The whole project must be defined, implemented, and
integrated.
-
Systems must be defined, implemented, and integrated.
-
Modules must be defined, implemented, and integrated.
-
Functions must be defined, implemented, and integrated.
-
Lines of code are defined, implemented and
integrated.
One important change in
perspective is whether projects can be thought of as whole
units, or must be thought of in pieces. Nobody writes tens of
thousands of lines of code in one sitting. They write small
pieces, one line at a time, verifying that the small pieces
work. Then they build up from there. The behavior of a
complex system emerges from the combined behavior of the
smaller building blocks.
There are several tie-ins with
chaos theory.
The chaos model may help
explain why software tends to be so unpredictable.
It explains why high-level concepts like architecture cannot
be treated independently of low-level lines of code.
It provides a hook for explaining what to do next, in terms
of the chaos strategy.