prototype
A model of a system developed to demonstrate and validate a
customer's expectations of major functions and user interfaces.
Key roles of the prototype are to :
- Determine the feasibility of requirements
- Determine the necessity of a function
- Uncover missing requirements
- Determine the viability of a user interface
Prototypes are used where the requirements of a system are not
well understood and working models can improve communication with
the user. They are developed with small teams using high
productivity tools that are typically not those of the target
production environment.
Most prototypes are not delivered as production systems as
they do not have:
- Robustness. They are typically unstable.
- Performance when scaled to production
use.
- Concurrency control. Designed for single
user environments.
- Completeness. Only demonstrate part of
the system's functionality.
- Recovery/restart. Do not address system
failure modes.
- Operational Documentation. Are not
formally specified.
- Quality control. Are not thoroughly
tested.