Prototype Model
- Prototype is defined as first or preliminary form using which other forms are copied or derived.
- Prototype model is a set of general objectives for software.
- It does not identify the requirements like detailed input, output.
- It is software working model of limited functionality.
- In this model, working programs are quickly produced.
The different phases of Prototyping model are:
1) Communication
2) Quick design
3) Modeling and quick design
4) Construction of prototype
5) Deployment, delivery, feedback
1. Communication
In this phase, developer and customer meet and discuss the overall objectives of the software.
2. Quick design- Quick design is implemented when requirements are known.
- It includes only the important aspects i.e input and output format of the software.
- It focuses on those aspects which are visible to the user rather than the detailed plan.
- It helps to construct a prototype.
3. Modeling quick design- This phase gives the clear idea about the development of software as the software is now constructed.
- It allows the developer to better understand the exact requirements.
4. Construction of prototype
The prototype is evaluated by the customer itself.
5. Deployment, delivery, feedback- If the user is not satisfied with current prototype then it is refined according to the requirements of the user.
- The process of refining the prototype is repeated till all the requirements of users are met.
- When the users are satisfied with the developed prototype then the system is developed on the basis of final prototype.
Advantages of Prototyping Model- In the development process of this model users are actively involved.
- The development process is the best platform to understand the system by the user.
- Earlier error detection takes place in this model.
- It gives quick user feedback for better solutions.
- It identifies the missing functionality easily. It also identifies the confusing or difficult functions.
Disadvantages of Prototyping Model- The client involvement is more and it is not always considered by the developer.
- It is a slow process because it takes more time for development.
- Many changes can disturb the rhythm of the development team.
- It is a throw away prototype when the users are confused with it.