Chaos Model of Software Development
In the chaos model a complicated software project is made up of many fractals. The relationships among these fractals aren't clear. The development process of a project can be regarded as micro-process in bottom-level, complexity gap in middle-level and macro-process in top-level. In these three levels, the complexity gap is most complicated and it bridges the goal of macro-process to the solution of micro-process. The size of complexity gap is determined by the scale of issue, tools and the architecture of project. To design and cope with complexity gap is developer's main tasks. "Resolve the most important issue first" is the chaos model's development strategy.
The idea of chaos model into software architecture and brings forward a chaos-model based framework for software development (CBFSD) and gives a detail description for components level's architecture, then establishes a development strategy and environment for it.
A Three-Layer Framework Based on Chaos Model
Generally it is a linear process to resolve a problem, which has a clear structure. Traditional software development models divide a development process into task definition, technical development and system integration linearly. The characteristic of it is that the relationships between sub-tasks are linear and clear. On the contrary, to cope with a complicated problem is more difficult, which turns out to be a chaotic process. The relationships between subtasks are not linear, since they have fuzzy and complicated relationships. So CBFSD divides the software development process into three levels:
Tasks Level: In this level the focus is the finished programs or products. The requirements will be divided into some specific tasks, and it takes the responsibility of organizing and scheduling these tasks. In this level, the tasks can be distinguished and dispatched strictly.
Codes Level: In this level programmers care about what technology can support their coding and the code's function. The function is based on the program tools, methods and a specific advanced language, and the codes realize the function.
Components Level: This level copes with chaos model's complexity gap. Complexity gap is "everything between the macro-process and the micro-process", In CBSFD, tasks level deals with the macro-process and codes level deals with the micro-process. Components level is in the middle of them and bridges the gap of tasks level and codes level. The components level has complicated structure, and it may include several subcomponents levels. The number of subcomponents levels is determined by the system's complexity. The components level embodies the components plug-in architecture. The components level relies on the tasks level and codes level in the entire software development process. It is unstable and will have to change when the goal of tasks level or the technology of codes level changes.
Questionnaire:
| Name* : |
|||||
| Email* : |
|||||
| Country* : |
|||||
| Phone* : |
|||||
| Subject* : |
|||||
| Upload Homework : Upload another homework (upto 5 uploads max.)
|
|||||
| Due Date |
Time |
AM/PM |
Timezone |
||
| Instructions |
|||||
|
|||||