Agile . since Jun 23 . Index . DOCs TOP TOC
If CMM is a set of loosely connected software management best practices, agile development is a set of highly integrated development and management practices.11 In his book, Extreme Programming Explained [1], Beck proposes 12 different ideas that are key to his form of agile development:12
1. The planning game
2. Small releases
3. Metaphor
4. Simple design
5. Testing
6. Refactoring
7. Pair programming
8. Collective ownership
9. Continuous integration
10. 40-hour week
11. On-site customer
12. Coding standards
| | |
Agile . since Jun 23 . Index . DOCs TOP TOC
For Beck, "software development is always an evolving dialogue between the possible and the desirable" [1]. Neither the customers (business users) nor the technical folks should have complete control. The business users decide scope and priorities, as well as the time and scope of the product releases. The technical people, on the other hand, decide estimates, technical consequences, the development process, and detail scheduling. In XP projects, the planning game is a give-and-take process emphasizing true collaboration.