Creating a demo of a new system. Prototyping is essential for clarifying information requirements. The design of a system (functional specs) must be finalized before the system can be built. While analytically-oriented people may have a clear picture of requirements, others may not.
Using fourth-generation languages, systems analysts and users can develop the new system together. Databases can be created and manipulated while the user monitors the progress. Once users see tangible output on screen or paper, they can figure out what's missing or what the next question might be if this were a production system. If prototyping is carefully done, the end result is the precise specification of the final system.
The final system is often reprogrammed in other languages for standardization or machine efficiency. However, prototyping has served to provide specifications for a real, working system rather than a theoretical one. See scope creep
See function prototype