In this tutorial you will learn about the Prototype Model and its application with practical example.
The main idea behind the Prototype Model is that rather of freezing the requirements before proceeding with design or coding, a throwaway prototype is developed to understand the needs. This prototype is based on the needs that are currently known. A prototype model is a model for software development. The client can acquire a “real feel” of the system by interacting with the prototype, since interactions with the prototype can help the customer better comprehend the requirements of the intended system. Prototyping is an appealing notion for complex and huge systems when there is no manual procedure or existing system to assist in defining the needs.
In this stage, the first Prototype is created, where the most basic needs are shown and user interfaces are supplied. These functionalities may not function exactly the same way in the final programmer built. While, in the prototype developed, workarounds are made to provide the same appearance and feel to the consumer.
Evolutionary prototyping, also known as breadboard prototyping, is centered on creating workable prototypes with limited capability at first. The produced prototype serves as the foundation for subsequent prototypes, upon which the full system is built. The well-known needs are included in the prototype by applying evolutionary prototyping, and the requirements are added as they are understood. Prototyping is used to allow consumers to review and test developer suggestions before they are implemented. It also aids in understanding user-specific requirements that may not have been considered by the developer during product creation.
The prototype is typically not a full system, and many of the intricacies are not included. The purpose is to offer general functioning to a system.
Benefits of the Prototype Model
- Users have an active role in the development.
- Because this process includes a functioning model of the system, users have a better knowledge of the system being constructed.
- Errors may be spotted at a far earlier stage.
- Users may provide input more quickly, which leads to better solutions.
- It is simple to identify missing functionality.
- Functions that are perplexing or difficult to understand can be identified.
- Validation of requirements, rapid implementation of an unfinished but working application.
Prototype model disadvantages
- This leads to the implementation and then repair of a method of creating systems.
- In practice, this process may enhance the system’s complexity when the scope of the system expands beyond the original goals.
- Because the entire system was created, an incomplete application may result in the application not being used.
- Incomplete or insufficient problem analysis
When to Apply the Prototype Model
- When the planned system requires extensive contact with end users, a prototype model should be employed.
- Online systems and web interfaces with a high level of engagement with end users are typically best suited for the Prototype approach. It may take some time to develop a system that is simple to use and requires little training for the end user.
- Prototyping ensures that that end users interact with the system on a regular basis and offer input, which is incorporated into the prototype to produce a usable system they are great for creating effective human-computer interaction systems.