A programming method in which a quick prototype is generated before producing a large scale, production, version.
The prototype may have limited functionality, or a limited interface, or limited performance, and can be used to
- test feasibility
- demonstrate an interface to a customer
- test out functionality
Sometimes the prototype turns out to be sufficient to actually do the required job, in which case there is no need to
build the production version.
Often the prototype can be constructed using
CaseTools, which may enable a quick evaluation of the program, but could
deliver poorer performance than using other program development methods. However, the use of
CaseTools should normally
give rise to better quality code, and if performance is a problem, it will often be possible to isolate this to a few routines or sections which can be optimized later. --
DavidMartland
Are some languages better than others for
RapidPrototyping?
ExtendedObjectTcl claims to be a fast prototyping language. --
BenThomasson
The danger of rapid prototyping is that the prototype is usually written quickly, as throw-away code, with poor architecture and next to no test coverage. This means that the code is not well suited for ongoing development. Putting a prototype into production use is a false economy if the business requires changes to the software. It's better (I think) to write production quality code from the outset and direct development with frequent feedback from the customer.