Beruflich Dokumente
Kultur Dokumente
Outline description
Development
Intermediate versions
Validation
Final version
Main characteristics:
The phases of the software construction are interleaved Feedback from the user is used throughout the entire process The software product is refined through many versions
Main characteristics:
The phases of the software construction are interleaved Feedback from the user is used throughout the entire process The software product is refined through many versions
Phases
Define the basic requirements Create a working prototype Verification of prototype Evaluate and deliberate . Advantages Deals constantly with changes Provides quickly an initial version of the system Involves all development teams
Quick fixes may be involved Invisible process, not well-supported by documentation The systems structure can be corrupted by continuous change
Applicable
When requirements are not well understood When the client and the developer agree on a rapid prototype that will be thrown away Good for small and medium-sized software systems
Requirements planning phase (a workshop utilizing structured discussion of business problems) User design phase users to participate in the nontechnical design of the system Construction phase productivity tools, such as code generators, screen generators. Cutover phase -- installation of the system, user acceptance testing and user training
Prototyping
Construction phase
Cutover phase
Reduced cycle time and improved productivity with fewer people means lower costs Customer involved throughout the complete cycle minimizes risk of not achieving customer satisfaction and business needs Focus moves from documentation to code
Accelerated development process must give quick responses to the user Requires a system that can be modularized Developers and customers must be committed to rapid-fire activities in an abbreviated time frame. May compromises functionality and performance in exchange for faster development and better application maintenance
Sources
When requirements are not fully understood. User involved throughout the life cycle Functionality delivered in increments High performance not required System can be modularized Ian Sommerville, Software Engineering, 8th Ed., Addison-Wesley, 2006 John Petlicki of DePaul University, USA