9.7 Agile Software Development
9.7.1 Introduction and Basic Concepts
The core concepts of Agile software development methods can be simply and clearly by reference to Figure 9.66. Here, Figure 9.66(a), we have the classical Waterfall software development process. First, the system requirements are analyzed and, using this information, the software is designed. This is followed by the implementation phase: coding, compilation, and installation of machine code into the target. Finally, the installed software is tested to eliminate bugs, improve performance, and check that it meets its requirements.
Well, that seems fine and reasonable. However, its detractors point out that this approach has a number of serious flaws:
- It is a very rigid technique, lacking the flexibility to incorporate requirement changes during the development process.
- There isn't any way, during the development...