What is Prototyping?
- Prototyping is the process of building a model of a system. In terms of an information system, prototypes are employed to help system designers build an information system that intuitive and easy to manipulate for end users. Prototyping is an iterative process that is part of the analysis phase of the systems development life cycle.
- During the requirements determination portion of the systems analysis phase, system analysts gather information about the organization's current procedures and business processes related the proposed information system. In addition, they study the current information system, if there is one, and conduct user interviews and collect documentation. This helps the analysts develop an initial set of system requirements.
- Prototyping can augment this process because it converts these basic, yet sometimes intangible, specifications into a tangible but limited working model of the desired information system. The user feedback gained from developing a physical system that the users can touch and see facilitates an evaluative response that the analyst can employ to modify existing requirements as well as developing new ones.
- Prototyping comes in many forms - from low tech sketches or paper screens(Pictive) from which users and developers can paste controls and objects, to high tech operational systems using CASE (computer-aided software engineering) or fourth generation languages and everywhere in between. Many organizations use multiple prototyping tools. For example, some will use paper in the initial analysis to facilitate concrete user feedback and then later develop an operational prototype using fourth generation languages, such as Visual Basic, during the design stage.
- Some Advantages of Prototyping:
- Reduces development time.
- Reduces development costs.
- Requires user involvement.
- Developers receive quantifiable user feedback.
- Facilitates system implementation since users know what to expect.
- Results in higher user satisfaction.
- Exposes developers to potential future system enhancements.
- Some Disadvantages of Prototyping
- Can lead to insufficient analysis.
- Users expect the performance of the ultimate system to be the same as the prototype.
- Developers can become too attached to their prototypes
- Can cause systems to be left unfinished and/or implemented before they are ready.
- Sometimes leads to incomplete documentation.
- If sophisticated software prototypes (4th GL or CASE Tools) are employed, the time saving benefit of prototyping can be lost.
Because prototypes inherently increase the quality and amount of communication between the developer/analyst and the end user, its' use has become widespread. In the early 1980's, organizations used prototyping approximately thirty percent (30%) of the time in development projects. By the early 1990's, its use had doubled to sixty percent (60%). Although there are guidelines on when to use software prototyping, two experts believed some of the rules developed were nothing more than conjecture.
- In the article "An Investigation of Guidelines for Selecting a Prototyping Strategy", Bill C. Hardgrave and Rick L. Wilson compare prototyping guidelines that appear in information systems literature with their actual use by organizations that have developed prototypes. Hardgrave and Wilson sent out 500 prototyping surveys to information systems managers throughout the United States. The represented organizations were comprised of a variety of industries - educational, health service, financial, transportation, retail, insurance, government, manufacturing and service. A copy of the survey was also presented to a primary user and a key developer of two systems that the company had implemented within the two years of the survey.
- There were usable survey results received from 88 organizations representing 118 different projects. Hardgrave and Wilson wanted to find out how many of the popular prototyping guidelines outlined in literature were actually used by organizations and whether compliance affected system success (measured by the user's stated level of satisfaction). It should be noted that, although not specifically stated, the study was based on the use of "high tech" software models, not "low tech" paper or sketch prototypes.
- Based on the results of their research, Hardgrave and Wilson found that industry followed only six of the seventeen recommended in information system literature. The guidelines practiced by industry whose adherence was found to have a statistical effect on system success were:
- Prototyping should be employed only when users are able to actively participate in the project.
- Developers should either have prototyping experience or given training.
- Users involved in the project should also have prototyping experience or be educated on the use and purpose of prototyping.
- Prototypes should become part of the final system only if the developers are given access to prototyping support tools.
- If experimentation and learning are needed before there can be full commitment to a project, prototyping can be successfully used.
- Prototyping is not necessary if the developer is already familiar with the language ultimately used for system design.
- Instead of software prototyping , several information systems consultants and researchers recommend using "low tech" prototyping tools (also known as paper prototypes or Pictive), especially for initial systems analysis and design. The paper approach allows both designers and users to literally cut and paste the system interface. Object command and controls can be easily and quickly moved to suit user needs.
- Among its' many benefits, this approach lowers the cost and time involved in prototyping, allows for more iterations, and gives developers the chance to get immediate user feedback on refinements to the design. It effectively eliminates many of the disadvantages of prototyping since paper prototypes are inexpensive to create, developers are less likely to become attached to their work, users do not develop performance expectations, and best of all, your paper prototypes are usually "bug-free" (unlike most software prototypes)!
- The Analysis and Prototyping of Effective Graphical User Interfaces
- Design Principles
- Relevant Cases
Project Team Members: C. Melissa Mcclendon, Larry Regot,