The advantages of prototyping include cost-effectiveness which enables the programmer as well as the user to have full control over cost reduction, having quantifiable and regular user feedback, and helping the developers of the prototype to be subject to any future possible enhancements. However, in spite of these advances, prototyping has yet to achieve completely the conditions for a modular production system where linkages between product design and production are dependant upon the SDLC. Prototyping is not based entirely on codified information and products are more difficult to formalize than language, and product designers are typically dealing with products considerably more complex and technically demanding than exemplars for modularity.
The disadvantages include unnecessary expectations of the customer or user to expect the ultimate system to be the same as the prototype, incomplete documentation and manuals, and unfinished or unimplemented systems. This clearly indicates that prototyping where on one hand provides advantages, on the other it often remains unable to fulfill end users’ requirements of the organization and often neglect users’ needs. This has not been such a great problem if the systems are usually relatively straightforward, with requirements well defined.
Prototyping applications are typically limited functional copies of existing manual systems but as the complexity of the systems is increased, it subjects more of a problem. Another common disadvantage goes with human resources i.e., developers who are technically trained but rarely familiar with the business or the organizational context in which the systems are being implemented, and in such a manner they are typically not very good at communicating with non-technical people. The needs of the users keep on increasing and are rarely well established with the consequence that the system designs were often inappropriate to the real requirements of the application and the business. Briefly, the prototype is a logical model that needs to solve all the business problems.