Saturday, June 29, 2013

Prototype Model



The basic idea here is that instead of freezing the requirements before a design or coding can proceed, a throwaway prototype is built to understand the requirements. This prototype is developed based on the currently known requirements. By using this prototype, the client can get an “actual feel” of the system, since the interactions with prototype can enable the client to better understand the requirements of the desired system.  Prototyping is an attractive idea for complicated and large systems for which there is no manual process or existing system to help determining the requirements. The prototype are usually not complete systems and many of the details are not built in the prototype. The goal is to provide a system with overall functionality.





  •  Requirement Identification: This step involves understanding the very basics product requirements especially in terms of user interface.
  • Building Prototype: The initial Prototype is developed in this stage, where the very basic requirements are showcased and user interfaces are provided. These features may not exactly work in the same manner internally in the actual software developed.
  • Customer evaluation: The prototype developed is then presented to the customer and the other important stakeholders in the project. The feedback is collected in an organized manner and used for further enhancements in the product under development.
  • Refining Prototype: The feedback and the review comments are discussed during this stage and some negotiations happen with the customer based on factors like, time and budget constraints and technical requirements of actual implementation. The changes accepted are again incorporated in the new Prototype developed and the cycle repeats until customer expectations are met.
 
Advantages of Prototype model:
  • Users are actively involved in the development
  • Since in this methodology a working model of the system is provided, the users get a better understanding of the system being developed.
  • Errors can be detected much earlier.
  • Quicker user feedback is available leading to better solutions.
  • Missing functionality can be identified easily
  • Confusing or difficult functions can be identified
    Requirements validation, Quick implementation of, incomplete, but
    functional, application.
Disadvantages of Prototype model:
  • Leads to implementing and then repairing way of building systems.
  • Practically, this methodology may increase the complexity of the system as scope of the system may expand beyond original plans.
  • Incomplete application may cause application not to be used as the
    full system was designed
    Incomplete or inadequate problem analysis.

No comments: