[Robelle] [SmugBook] [Index] [Prev] [Next]

Software Development Methods

The traditional "waterfall" method of developing a system includes endless user interviews, voluminous specifications, official approval by confused users, programming phase, integrating phase, testing phase, user training phase, and endless bureaucracy.

Creating a software system without delivering anything to the users until everything is done, is like constructing a complete office building on its side, then trying to lift it into position. The system is likely to collapse in a heap of rubble.

[cartoon: collapsed building]

The better approach is to construct the system Step-by-Step, creating a virtual spiral based on user feedback, and following the inexorable Laws of Computer Programming.

For more discussion of this issue, read Bob Green's two papers, Building Better Software and Improving Software Quality. Then visit the Extreme Programming Home Page.

[Robelle] [SmugBook] [Index] [Quality] [Prev] [Next]