From Wikipedia, the free encyclopedia
For other uses, see Prototyping (computer science).
Software prototyping, refers to the activity of creating prototypes of software applications, i.e., incomplete versions of the software program being developed. It is an activity that can occur in software development and is comparable to prototyping as known from other fields, such as mechanical engineering or manufacturing.
A prototype typically simulates only a few aspects of, and may be completely different from, the final product.
Prototyping has several benefits: The software designer and implementer can get valuable feedback from the users early in the project. The client and the contractor can compare if the software made matches the software specification, according to which the software program is built. It also allows the software engineer some insight into the accuracy of initial project estimates and whether the deadlines and milestones proposed can be successfully met. The degree of completeness and the techniques used in the prototyping have been in development and debate since its proposal in the early 1970s.[6]
Contents
[hide]
1 Overview
2 Outline of the prototyping process
3 Dimensions of prototypes
3.1 Horizontal Prototype
3.2 Vertical Prototype
4 Types of prototyping
4.1 Throwaway prototyping
4.2 Evolutionary prototyping
4.3 Incremental prototyping
4.4 Extreme prototyping
5 Advantages of prototyping
6 Disadvantages of prototyping
7 Best projects to use prototyping
8 Methods
8.1 Dynamic systems development method
8.2 Operational prototyping
8.3 Evolutionary systems development
8.4 Evolutionary rapid development
8.5 Scrum
9 Tools
9.1 Screen generators, design tools & Software Factories
9.2 Application definition or simulation software
9.3 Requirements Engineering Environment
9.4 LYMB
9.5 Non-relational environments
9.6 PSDL
10 Notes
11 References
[edit]Overview
The original purpose of a prototype