Prototyping can be referred as the initial stage in software release in which development process is evaluated by a small user group and product hits can be identify, before a bigger release is initiated. Such activities can also be called as Beta phase or beta testing. Prototyping is a part of more detailed process of producing sophisticated software product. The main idea behind is that, to identify the bugs and user problem in development, even when code features are complete. Development team and technical companies will typically elicit feedback on a product during prototyping in order to fix the problem before final release of an application. There are certain best practices for prototyping which includes interpreting prototyping or making initial user more informed about the software.
Stages of Prototyping
- Low Fidelity prototype
They perform key functions of the software and basic interaction process which is easy to modify, fast to prototype and lower production cost. Tools like pen and paper, Balsamiq mock-ups are more efficient.
- Medium Fidelity Prototype
They add more details and interactive to the final product. User can fully experience the final product the test usability of the product and ensure no major problem can be found in the development process. Tools such as Axure and Mockplus are used for such prototype.
- High Fidelity Prototype
These prototypes are closer to the final product including all the product features and interactions which reduce communication costs and are more accurate and exquisite. Tools such as Justinmind and Adobe XD are used for developing such mock-ups.
Advantages
- User can feel the product before it is full developed
- Bugs and user problems can be identified at early stage
- Easy to communicate with the end user
- Improve product efficiency
Disadvantages
- Time –consuming with great expense , especially when project budget is fixed
- Insufficient analysis of the project can distract the developer from actually product development
- Customer wrongly perceive the prototype to accurate model, which effect performance of the final system
- Clear defined of requirements should be provided to the development team
There are many unexpected issues occurs in development process, even if we revised it several times. But at least by adopting the prototyping testing, development team can identify the bugs at the early stage and gets an opportunity to rectify it before product release.