Types of SDLC Prototype Models: As we know that prototype model is one of the standard software development life cycle model. In this model the system requirements are not fixed initially like waterfall model. Prototype model is one of the most attractive and adaptive approach to develop software in which the customer interaction with the development team is high. In prototyping approach the requirement gathering and analysis phase to capture the exact requirement of the proposed system, when the requirements are frozen completely, then the remaining phases of the development process needs to be executed to complete the other tasks of development of software system.
A sdlc prototype model can have horizontal or vertical dimensions. The horizontal prototype model displays the user interface for the product and gives a view of the entire system broadly. This process held without concentrating of internal functionality of the system. On the other hand, a vertical prototype model is a detailed description about of all specific function in the system and/or a sub system in the product. The purpose of working with both horizontal and vertical prototype is different. The horizontal prototype models are used to get information in detail on the user interface level and the business requirements. It mainly concern about the sales demos to get business in the market. While vertical prototype model are technical in nature and are used to get details of the exact functioning of the sub systems. For example, database requirements, interaction and data processing loads in a given sub system.
To elaborate the working of prototype model relate with e-commerce website (like; online shopping), in which a customer can implement the prototyping approach. Customer develop the prototype of the various web pages according to the site dealing requirements such as catalogue pages, products lists, product categorization, cart, place order etc., and present it to the customer for approval. If customer successively approves the prototype of the site, requirements are states again and the design of the web site is initiated. But if the customer does not approve the web site, the development team revisits the prototype consider the review and feedback and then understand the requirements and resubmits it to the customer for approval. This process continues in a cyclic form until the prototype is approved.
Types of Prototype models:
There have many different types of software development life cycle prototype models used in companies for system development. The detailed descriptions about the types of prototype model are given below;
- Throwaway Prototyping:
The throwaway prototyping also known as rapid prototyping or close ended prototyping. This prototyping includes those prototypes that are eventually discarded rather than becoming a part of the finally developed software product. In other words, throwaway prototyping uses very little efforts with minimum requirement analysis to build a prototype. Once the actual requirements are understood, the prototype is discarded and the actual system is developed with a much clear understanding of user requirements. For example; screen mock-ups and story boards.
- Evolutionary Prototyping:
Evolutionary prototyping also called as breadboard prototyping. This prototyping is based on building actual functional prototypes with minimal functionality in the beginning. The prototype developed forms the heart of the future prototypes on top of which the entire system is built. Using evolutionary prototyping only well understood requirements are included in the prototype and the requirements are added as and when they are understood. In other words we can say an evolutionary prototyping is relates to those prototypes that evolve into the final system through iterative incorporation of user review and feedback.
- Incremental Prototyping:
In incremental prototyping, building multiple functional prototypes related to the various sub-systems and functional products. After building all these functional prototypes integrating all these available prototypes to form a full functional system called final product.
- Extreme Prototyping:
Extreme prototyping approach used in web development domain. This prototype consists of three sequential phases.
- First phase includes, a basic prototype with all the existing pages is presented in the .html (or .hml) format.
- Second phase include, the data processing is simulated using a prototype services layer.
- Finally third phase include, the services are implemented and integrated to the final prototype.
These processes are called Extreme prototyping used to draw attention to the second phase of the process, in which fully functional unit integration is developed with very little regard to the actual services.