Throwaway prototyping6 includes the development of prototypes, but uses the
prototypes primarily to explore design alternatives rather than as the actual new system
(as in system prototyping). As shown in Figure 2-7, throwaway prototyping has a
fairly thorough analysis phase that is used to gather requirements and to develop
ideas for the system concept. Many of the features suggested by the users may not
be well understood, however, and there may be challenging technical issues to be
solved. Each of these issues is examined by analyzing, designing, and building a
design prototype. A design prototype is not intended to be a working system. It contains
only enough detail to enable users to understand the issues under consideration.
For example, suppose that users are not completely clear on how an order
entry system should work. The analyst team might build a series of HTML pages
to be viewed on a Web browser to help the users visualize such a system. In this
case, a series of mock-up screens appear to be a system, but they really do nothing.
Or, suppose that the project team needs to develop a sophisticated graphics program
in Java. The team could write a portion of the program with artificial data to ensure
that they could create a full-blown program successfully.
A system that is developed by this type of methodology probably requires several
design prototypes during the analysis and design phases. Each of the prototypes
is used to minimize the risk associated with the system by confirming that important
issues are understood before the real system is built. Once the issues are resolved,
the project moves into design and implementation. At this point, the design prototypes
are thrown away, which is an important difference between this approach and
system prototyping, in which the prototypes evolve into the final system.
Throwaway prototyping balances the benefits of well-thought-out analysis
and design phases with the advantages of using prototypes to refine key issues before
a system is built. It may take longer to deliver the final system compared with