What is mean by prototype?
A prototype is a preliminary or first built working model of the desired product. It represents and resembles the original, desired product, in terms of basic or limited features or functionalities, but lacks the completeness. This operational dummy, gives the overview of the final product, which is to be developed.
What is Prototype Model?
It is one of the forms of the Software Development Cycle (SDLC) models, which is based on the quick initial development of the prototypes based on the currently available or limited requirements. This enables the developers, to understand the further requirements that needs to be implemented in the software product, through receiving feedbacks, in respect of delivered prototype, from the client.
These prototypes are developed, through less formal or informal way of development process i.e. each prototype is developed through specified, traditional way of development process, viz planning, designing, implementation & development, but each of these phases lacks detailing and strict adherence to the requirements.
What happens during software prototype development process?
The activities, that are carried out, in the prototype development process, may be understood through following given points, in a sequential manner.
- What is currently available or limited known requirements are used to begin the development process.
- These requirements are analysed and planned.
- Based on the requirements, quick design is prepared.
- The design, developed during the designing phase, is then implemented to develop the software prototype.
- Thereafter, prototype is handed over to the client, for its evaluation.
- Based on the feedbacks and reviews, received from the client, the prototype is either accepted for further actual development process, and thereafter testing, to achieve the final product, or is being diverted to the designing phase, again, for the refinement.
- An approach based on prototype, which enables the client to perceive an overview of the final desirable software product and provide their feedback and reviews.
- It is, usually approached, when the exact requirements are not available, or on the availability of few requirements.
- Involvement of the client, who works as an approver, to either carry out the further development process on the prototype, so as to achieve develop final product or may ask for the improvement in the prototype.
- Earlier detection of defects, saves both time and cost.
- Missing functionality or feature can easily be identified.
- Complexity of the development process increases.
- Risk of insufficient amount of requirements analysis.
- The client may likely to get confused, between what is observed in the prototype and what is being received in the final product.