You must be aware of beta testing software. For example, you are been asked to play a game before it is fully uploaded by the developer in order to check the gaps between the game. This is beta testing and in other terms it is also known as software prototype. Using this way, the developer gets a clear idea of what the end product would look like. Software prototype is defined as a paradigm of software applications with limited functions. Software prototyping refers to the creation of prototypes with curbed functions that allows the process of software testing.
Dimensionally software prototyping is of two types: Vertical prototyping and horizontal prototyping.
Horizontal prototyping: This prototyping consists of a user based interface prototype. The major functions of horizontal prototyping are:
Vertical prototyping: The vertical prototyping is more elaborated form of the prototype. It has the following benefits:
There are many types of prototyping which are as follows:
Throwaway prototyping: This kind of prototyping is also known with the names "Rapid prototyping" or "Close ended prototyping. As the name suggests the prototype is discarded or thrown away and in no way part of final software. This involves creation of a model of software at initial stages. The steps included in throw away prototyping are as follows:
Evolutionary prototyping: It is also known as breadboard prototyping. This type of prototyping allows a continuous updating of the software's according to the needs. A continuous evolution can be seen in such a prototyping method
Incremental prototyping: In such a prototyping method several prototypes are created initially and are merged in the final stages. By this method the time gap can be successfully managed.
Extreme prototyping: This prototyping is usually used for the creation of web applications.