COEN/ELEC 390 1
Jan 04, 2016
COEN/ELEC 390
1
What is prototypingWhy prototypingTypes of prototypingAdvantages of eachRecommendations Incremental Development?
2
Waterfall model .. Does not really work
Design / Coding / Integration Test / Acceptance Test
Design 49.2 / 34.1 / 10.3 / 6.4
Hence, prototyping is used to clarify requirements
The first push-button phone had 2000 prototypes built!
3
4
~ 0 cost of fabricating different versions Most cost associated with developing the first fully working version
Hence, software prototyping used for:◦ Rapid development of a basic & inefficient
executable version◦ Rapid development of the user interface
This assumes throw-away prototyping
5
6
Throw-away prototyping actually saves money by eliminating the need for expensive late-cycle re-engineering
To ensure it is thrown away, a very high-level language is used
This contrasts with evolutionary prototyping, where the prototype grows into the final product
7
8
Resulting system easier to use User needs better accommodated Resulting system has fewer features Problems detected earlier Design is of higher quality Resulting system easier to maintain Development incurs less effort
9
Resulting systems has more features Worse performance Lesser quality design Resulting systems harder to maintain Prototyping approach requires experienced
engineers
10
11
1. Good for situations where user requirements are unclear
2. Good where there is emphasis on user interface
3. User must be made aware of the costs of changes/additions and that proto’s are not products
4. Prototyping must be controlled, with explicit procedures and documentation
12
13