The prototyping model is a software development process that begins with requirements collection, followed by prototyping and user evaluation. Often the end users may not be able to provide a complete set of application objectives, detailed input, processing, or output requirements in the initial stage. After the user evaluation, another prototype will be built based on feedback from users, and again the cycle returns to customer evaluation.

The cycle starts by listening to the user, followed by building or revising a mock-up, and letting the user test the mock-up, then back.

The term "prototyping" does not just apply to software. Companies may produce prototype products to show off certain features, or just to get a working model before refining other parts of the design.

In electronics, prototyping means building an actual circuit to a theoretical design to verify that it works, and to provide a physical platform for debugging it if it does not. The prototype is often constructed using techniques such as wire wrap or using veroboard, that create an electrically correct circuit, but one that is not physically identical to the productionised product.