The Chaos Model - Lecture 4

Racoon, L. B. S. (1995) The chaos model and the chaos cycle. ACM SIGSOFT Software Engineering Notes, 20, 12.


"I believe that to truly understand software development, we must not only understand the flow of an entire project and how to write each line of code, we must also understand how one line of code relates to the whole project."

The Chaos model combines a linear problem solving loop with fractals to describe the complexity of software development. The linear problem-solving loop involves four different stages: problem definition, technical development, solution integration, and status quo. Fractals describe the structure between different parts of a project. The Chaos model differs from other models in that it imposes little organization on the development process, rather, it allows many organizations to evolve.  This allows the Chaos model to apply in many complex situations. 

 the Chaos life cycle which views requirements analysis, design, implementation, maintenance, and prototyping -- the phases of the life cycle -- in terms of fractals. I include prototypes in this list because prototypes are,identifiable parts of a software development project. A life cycle shows how phases change over the course of a project. While we usually view these phases as flexible concepts, defining them as fractals leads to some refinements and generalities that we normally overlook and shows that all phases occur throughout all of software development.