Throw Away / Rapid Prototyping
A prototype developed as part of a throw-away approach will not form part of the final solution. It is likely to inform the final solution, but the prototype itself will not become part of the final solution.
Throw-away prototypes are a useful way of exploring ideas, and gaining feedback from the client and/or end-user. They tend to be used to answer questions. They are then discarded.
A question about a functional requirement may necessitate the rapid development of a prototype; perhaps using a particular tool, in order to answer that question.
Example: would it be possible to read values from a text file into a program?
A throw-away prototype could be produced very quickly to establish if this is possible, and how.
The outcome of the prototype might be: Yes, it is possible and would be relativity easy to achieve using a particular tool or method (eg a comma delimited text file can read into a application, program or script. The elements from the file could be stored in one or more variables or arrays).
The prototype has answered the question, thus has serviced its purpose and can now be discarded.
Interface design, layout and interaction styles is another area which can be explored using throw-away prototypes. These are sometimes referred to as 'mock-ups' or 'click dummies' because they look realistic but contain little or no code to provide the functionality expected (eg clicking on an interface icon does not perform the function associated with the icon).
The speed at which throw-away prototypes can be generated and modified is a major reason for their use and why this method is sometimes referred to as 'rapid prototyping'.
They also provide a useful and meaningful way for a developer to walk the client and/or end-user through the system requirements as interpreted by the developer. Feedback from the client and/or end-user should aid in allowing misinterpretations or unnecessary complexities to be picked up and addressed at an early stage.
The speed of development and the potential to catch misinterpretations or missing features at an early stage can help to make the throw-away prototype a cost effective approach.
Next: Incremental Prototyping