Transcript

Waterfall DevelopmentThe waterfall model is a sequential software development model in which development is seen as flowing steadily downwards through the phases of requirements analysis, design, implementation, testing, integration, and maintenance.

Values gained- Processes and tools, over individuals and interactions.- Comprehensive documentation, over quality software.- Contract negotiation, over customer collaboration.- Following the initial plan, over responding to change.

Main principles- Time spent early on software production can lead to greater economy later.- Emphasis is placed on documentation as well as source code.- Program requirements are set in stone before design is started.- Program design should be perfected before implementing the design.- Components are methodically verified to ensure that they fully meet requirements.- Enforce discipline through a defined start and end point at every development phase.- Aid in efficient knowledge transfer when team members are dispersed or leave.

Suitability- The customer knows what they want upfront and has clearly defined requirements.- Estimating accurate time and cost is not necessary.- Division of labor between business and programmers is not important.- System to develop is extremely complicated.

Application- High criticality.- Large number of developers, especially non-senior.- Requirements do not change, or rarely change.- Culture thrives on structure.

Waterfall Development, 7/31/2007 Sam Boustani

Process

Waterfall Development, 7/31/2007 Sam Boustani


Recommended