The Chaos Model
A combination between linear problem solving loop with fractals used to describe the complexity of software development.
The model imposes little organization on the development process to allow organizations to evolve and therefore can be applied in many complex situations.
Reductionist approach is used to deal with large problems. Fractals require subproblems of any one problem have approximately the same size and value.
The Linear Problem-Solving Loop
4 stages include: Status quo, problem definition, technical development and solution integration.
The loop begins and ends with a status quo.
1. Problem definition:
- Choose problem to solve
- Define solution's constraints
- Solving problem may or may not be possible
2. Technical Development:
- Do the work
- Developers may or may not ensure that the right problem gets solved
3. During Solution integration:
- Integrate technical solving results to the world at large
- Communicate to users
- Users may rejects or ignore b/c they may find it wrong
4. The status quo:
- Represent the current state of affairs in the world
- As the new technical solution gains acceptance, a new status quo emerges and the cycle repeats.
The fractal Problem-Solving Loop
The Linear Problem-Solving Loop applies in many project levels
- Entire project
- Sub-group
- Individual developer
Example for project levels:
An integration of the chaos model:
User's needs
Technical Resources
Developers solve mid-level problems
Fractal phase definitions
Reference:
Raccoon, L. B. S., 1995. he chaos model and the chaos cycle. ACM SIGSOFT Software Engineering Notes, 20 (1), 55-66.
No comments:
Post a Comment