1 / 13

Software Prototyping

Software Prototyping. COEN/ELEC 390. Outline. What is prototyping Why prototyping Types of prototyping Advantages of each Recommendations Incremental Development?. Background. Waterfall model .. Does not really work Design / Coding / Integration Test / Acceptance Test

maree
Download Presentation

Software Prototyping

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Prototyping COEN/ELEC 390

  2. Outline • What is prototyping • Why prototyping • Types of prototyping • Advantages of each • Recommendations • Incremental Development?

  3. Background • 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!

  4. Software Prototyping • ~ 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. Throw-away vs. Evolutionary • 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

  6. Advantages vs. Disadvantages 1/2 • 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

  7. Advantages vs. Disadvantages 2/2 • Resulting systems has more features • Worse performance • Lesser quality design • Resulting systems harder to maintain • Prototyping approach requires experienced engineers

  8. Recommendations • Good for situations where user requirements are unclear • Good where there is emphasis on user interface • User must be made aware of the costs of changes/additions and that proto’s are not products • Prototyping must be controlled, with explicit procedures and documentation

  9. Compromise: Incremental Development

More Related