What is a Prototype
A prototype is a sample or a working model of a particular product which can be a simple TOY to a complex machine say a car. It is the stage between development and releasing the final product. It is basically a technique that various developers follow to enhance the quality of their product. Prototyping is the technique one follows to develop a prototype.
We often see the beta versions of various soft wares being released every now and then, they nothing but prototypes being released by the company to get feedback on what it needs to improve in order to enhance the quality of product.
Developing a prototype starts with the development of a concept for the product. For example, a company might want to create an innovative Computer which could answer your mails. The team of engineers and the development team work on the design features, typically producing several cardboard and paper models to illustrate how the product will look and feel. Once the development team is given the go-ahead, a single working prototype is created. This prototype is evaluated to determine how effective it is, and additional prototypes may be developed with different features as the design team responds to feedback.
Feedbacks are important where prototyping is concerned, weather be feedback from the users i.e. the customers or the engineers which were handed the prototype. Feedback enhances the product and increases its reliability as the final product is not yet made so changes can be done to the prototype and can be again sent to the customers for their feedback. This could on and on unless the development team thinks that the prototype is complete and meets the demands of the customer to an extent. Then the product can be sent for manufacturing.
Prototyping is a very effective tool to develop something as users get a feel for the actual system and developers get to build something immediately. Yet, prototyping can also be problematic for the following reasons:
1. The customer sees what appears to be a working version of the product, unaware that the prototype is held together “with chewing gum and baling wire,” unaware that in the rush to get it working no one has considered overall product quality or long-term maintainability. When informed that the product must be rebuilt so that high levels of quality can be maintained, the customer cries foul and demands that “a few fixes” be applied to make the prototype a working product. Too often, software development management relents.
2. The developer often makes implementation compromises in order to get a prototype working quickly. An inappropriate approach may be used simply because it is available and known.
After a time, the developer may become familiar with these choices and forget all the reasons why they were inappropriate. The less-than-ideal choice has now become an integral part of the system.
Although problems can occur, prototyping can be an effective for development of a good and reliable product. This can be done with the customer and developer communicating and agreeing on the grounds on which the prototype should be built.