Prototyping Model

13 Flares 13 Flares ×

Prototyping approach, also known as evolutionary approach, came to picture because of failures that occurred in the final version of the software application developed using the waterfall approach. The failure generally occurs because of the changes in the requirement of the proposed system or because of the gap in understanding the customer requirement by the development team. A gap in the first version of the developed application, inevitably leads to the need for redoing the application. To overcome these limitations, the concept of prototyping was introduced.

Prototyping Approach

A prototype is the sample implementation of the system that shows limited and main functional capabilities of the proposed system. After a prototype is built, it is delivered to the customer for the evaluation. The prototype helps the customer determine how the feature will function in the final software. The customer provides suggestion and improvements on the prototype. The development team implements the suggestion in the new prototype, which is again evaluated by the customer. The process continues until the customer and the development team understands the exact requirement of the proposed system. When the final prototype is developed, the requirement is considered to be frozen.

Prototype Model Example

The prototyping approach is used in the requirement gathering and in the analysis phase to capture the exact requirement of the proposed system. After the requirements are frozen, the remaining phases of the development process needs to be executed to complete the development of the software system.

An e-commerce website, such as shopping site is an example where you can implement the prototyping approach. You can develop the prototype of the various web pages of the shopping site such as catalogue page, product order page etc., and present it to the customer for approval. If the customer approves the prototype of the site, requirements are states again and the design of the web site is initiated. If the customer does not approve the web site, the development team revisits the prototype and resubmits it to the customer for approval. This process continues until the prototype is approved.

Prototypes are of two types:

Throwaway prototypes: Prototypes that are eventually discarded rather than becoming a part of the finally delivered software. Examples of throwaway prototypes include screen mock-ups and story boards.

Evolutionary Prototypes: prototypes that evolve into the final system through iterative incorporation of user feedback.

Although prototyping is a very useful technique to obtain accurate requirements of the system and to speed up the development process, it has some disadvantage associated with it. Some disadvantages of Prototyping are:

It gives client a false impression that a few minor changes to the prototype will give them the required system.
It may comprise on the overall quality of the software in the rush to develop the prototype. For example, the developer may use insufficient algorithm or inappropriate programming languages for developing the prototype quickly and the same may find place in the final application thus leading to insufficient code running in the final application.

About Tutor

I am a part time blogger who holds an Advance Diploma in Software Engineering and loves to write about core technical stuffs. SDLC has been a very interesting topic for me and this website is simply a humble effort to provide every information related to Software Development life cycle in a Single place. Contact me directly if you have any doubts or questions.

sdlc Comment Guidelines: Make sure you comment is relevant and helpful to the topic and the readers. Do Not try to sneak in commercial links here. If you are looking for paid advertisements you can Contact Us directly and we can discuss them. Clean XHTML are currently accepted in comments. Please Do NOT Spam and keep the discussion healthy.

Discussion Board

  1. Sdlc_Models says:

    You have explained every point clearly. Can I use this for my Engineering Project reference?
    Thank you.

  2. Thank you for the detailed information about prototyping model it helped me a lot.

  3. Hey, thanks for this. ;) It had helped me a lot.

  4. hey this is very clear about protocal thanks

  5. very clear about prototype thanks

  6. very concise and clear explanations…excellent work..thanks a lot

  7. Shahid Ahmad says:

    Really, abstract explaination

  8. sada shiva says:

    Hey its a very good info about what is a prototype model in software development module.. thanks for ur info..

  9. May someone please pin point the exact difference between prototyping, incremental, and spiral models cause am having difficulty in getting it.

  10. rajendra says:

    The content is very simple to understand,thank you.

  11. Sophia Ed says:

    Thanks so much this was so helpful!

  12. murali siluveru says:

    nice presentation

  13. tsholofelo mosa moriri says:

    can you please help me to fully describe how phases of prototyping relate to the phases of SDLC

  14. sankeerthana says:

    Can u please explain the difference between Proof of concept(spiral Model) and Prototype?? Also please give live examples for examples for each model.?

  15. ahmad abubakar says:

    hi.please can you help me explain the following stages in prototype model.
    1.quick design
    2.customer evaluation
    3. refining prototype product

  16. In which circumstances we have to use, protyping model?

Join the Discussion


13 Flares Google+ 3 Twitter 0 LinkedIn 0 Facebook 10 13 Flares ×