A prototype is a model of something to be further developed. The higher the fidelity the more representative is the prototype. Rapid prototyping implies that there is a short time between conceiving an initial notion and modeling it in physical form and between successive iterations. A popular method is to use paper to create the prototype (Snyder 2003) which can be done without programming skills and which has the look of work in progress thus encouraging users to comment on it. Software prototypes can then be developed when the ideas have been thought through and tested on paper. These can then be used for usability testing.
Low fidelity prototyping seems to have been advocated around 1990 by authors such as Jakob Nielsen, Bob Virzi and Tom Tullis. A few high-tech companies were using the technique during the 1980s as described by Robin Kinkead.
Leone, P., Gillihan, D. and Rauch, T. (2000) Web-based prototyping for user sessions: Medium fidelity prototyping. Proceedings of the Society for Technical Communications 44th Annual Conference, pp231-234. Toronto, Canada: STC.
Nielsen, J. (1993) Usability engineering, Morgan Kaufman: Academic Press.Contains a number of general references to prototyping as part of a general usability engineering process.
Rudd, J., Stern, K., and Isensee, S. (1996) Low vs. high-fidelity prototyping debate. Interactions, January: pp76-85.
Snyder, C. (2003) Paper prototyping, The fast and easy way to design and refine user interfaces, Elsevier Science.A comprehensive source for understanding a simple but powerful technique.
Tullis, T.S. (1990) High-fidelity prototyping throughout the design process. Proceedings of the Human Factors and Ergonomics Society, 34th Annual Meeting, p266, Santa Monica, CA: HFES.
Uceta, F. A., Dixon, M. A. and Resnik, M. L., (1998) Adding interactivity to paper prototypes, Proceedings of the Human Factors and Ergonomics Society, 42nd Annual Meeting (Chicago), pp506-511. Santa Monica , CA: HFES.
See Snyder (2003) and Tullis (1990) for example case studies.
Rapid prototyping can be used for a number of purposes:
Outcomes and Deliverables
Representation of the system in a prototype form which has been in some way accepted by user representatives. (This will follow an iterative design process in which several prototypes have been produced.)
Benefits, Advantages and Disadvantages
Rapid prototyping gives users (especially non-technical users such as the general public) a tangible demonstration of what the system is about. The use of pencil and paper and simple software development tools allows the prototype to be quickly replaced or changed in line with design feedback.
Experience shows that the method is very cost effective in highlighting the main problems with a product or system after a small number of iterations and user tests. More formal user tests of a software prototype which generate metrics (needed to "prove" usability) will take more preparation and may require more detailed video analysis to generate the metrics which normally takes longer. It is not easy to measure ROI, as this rapid prototyping would typically be used early in the design process.
Participants and Other Stakeholders
Who Can Facilitate
The usability or human factors specialist is in a good position to facilitate the prototyping activity. They may be assisted by a task domain expert.
Data Analysis Approach
If the prototype has been tested with end users, then typically the facilitator instructs the user to work through the allocated tasks, interacting with, and responding to, the system as appropriate. The user is then observed and their interactions may be recorded. Additional information can be obtained by interviewing users following their use of the prototype.
As a developmental method, rapid prototyping will identify good and bad points about the design. The themes and severity of the problems will be identified. One rule of thumb may be that if 3 users experience the same problem in a sample of 8 to 10, then it should be addressed in the revised prototype with high priority in the revised design.
Extract the design implications and recommendations for improvements and feed those back to design team. Video recordings can support this. Where necessary the prototype is refined and re-assessed until it seen as meeting usability goals.
Costs and Scalability
People and Equipment
Paper prototyping can be carried out by human factors or usability specialists with the support of domain experts and users. No special equipment is required.
Software prototyping also requires someone with knowledge of the prototyping tool being used.
Paper prototyping can be done very rapidly and a simple prototype can be developed in a matter of hours. If the paper prototype is to be tested with end users and iterated several times then a period of 2-4 days should be allowed. The development and testing of a software prototype will normally take about 2-3 weeks for development and small scale testing, although for a small system this could be carried out in a period of 1-2 weeks.
Special consideration should be given to accessibility of the system when the prototype is developed e.g. flexibility in choosing text size, font and color, good layout, operation with a screen reader. Accessibility should be planned for at the early prototyping stage even if implementation comes later.
Ethical and Legal Considerations
Users outside of the design team are normally required to sign a consent form before they participate in a prototype evaluation session e.g. that they have been informed of the true purpose of the text, that the data recorded will be kept confidential and that they may withdraw at any time.
If a well developed prototype is only presented formally to users they may be reluctant to comment on it especially in the presence of management staff.