A review of Greg Kearsley (1987). 33 ways to better software design

Author: Cheryl Cottle
Date: 8/2/96

© copyright, 1996


INTRODUCTION

Greg Kearsley (1987) provides a model to facilitate effective software design. His design principles includes "thirty-three ways to better software design" p. 46. The parameters of his model include screen displays, user control, response analysis, handling errors, helps, and quality control.

SUMMARY

Screen display: The following principles apply to almost all types of displays.
  1. Don't crowd screens. Put only a small amount of information on each screen (eg.,10 to 12 lines of test or one graphic).

  2. Use attention-getting devices sparingly. Blinking, highlighting, and reverse video are great for drawing attention but you can be overdone easily.

  3. Use windows to organize information. Isolating directions, questions, or prompts messages in a window helps the user find them.

  4. Use color combination carefully, for proper contrast.

  5. Use graphics whenever possible. A good illustration is worth a 1,000 words.

  6. Use titles and headings whenever possible. Its easy for users to lose their place in a program.

    User Control: The user should always be in control of the program (Kearsley, 1987).

  7. Allways let the user set the pace. People read and comprehend at different speeds.

    (li) Allow users to control sequencing. People should be able to skip ahead, go back, and quit at any time in a program.

  8. Use menus as much as possible. Menus eliminate the need to explain or remember commands and also decrease the chances of error.

  9. Let the user customize the program. Users should be able to change and add information.

  10. Always provide defaults. There should be default options for every input. It can save time and avoid frustration when the user doesn't care about (or understands) the choices.

  11. Provide multiple control options. It is important to provide redundant controls using commands, control keys, function keys, or pointing devices. Response analysis: A large part of designing an interactive program concerns user responses: giving directions, asking questions, checking input and providing feedback. These are the following response processes (Kearsley, 1987).

  12. State directions and questions to prevent misunderstanding. Tell users exactly what you want them to do.

  13. Use pointing rather than typed input whenever possible. Arrow keys, the mouse or trackball, or a touch screens make it much easier.

  14. Always acknowledge input. Users need to know that their responses are recognized and processed.

  15. Be tolerant of response variation. The program should not be bothered with upper versus lower case, extra spaces, or slight misspellings.

  16. Allow users to change their answers. People often make inadvertent choices or change their minds, so they should be able to correct their input before it is processed.

  17. Always provide corrective feedback for errors. The program should identify exactly what is wrong with the answer. Handling errors: respond to users errors and eliminate error in the program itself. Eliminate both kinds of errors by following the guideline below (Kearsley, 1987).

  18. Test a program for both expected and unexpected responses. Check for the anticipated wrong answers as well as random errors caused by accidental key presses or misspelled commands.

  19. Check the range of answers that are too small, too large or of the wrong format, subsequent errors can be avoided.

  20. Draw attention to errors. If the user makes an error the program should provide a distinct warning message.

  21. Tell the user to correct the problem. Error message should clearly state the problem and show how to correct it.

  22. Always "fail soft" if possible. The program should allow the user to recover from an error or recover automatically by keeping a trace on the user's action. Help: Help represents a powerful form of user assistance. Here are some guidelines that will lead to a well designed help (Kearsley, 1987).

  23. Make helps as specific as possible. Help must provide the specific information the user needs. (25). Different types of help are needed. Users will need different types or level of help messages depending upon their experience with the program or with computers in general.

  24. Helps should always be available and easy to access. They should not be hard to find or only available some of the time.

  25. Ensure that help information is accurate and complete. Help information that is incorrect will result in a great deal of user frustration and loss of confidence in the program. Quality control: Through tuning and revision, good quality software results (Kearsley, 1987).

  26. Review programs in a systematic fashion. A checklist should be used to examine the program for design flaws.

  27. Use response data to identify problems. Response data collected from users should be used to pinpoint program flaws.

  28. Make revisions according to a plan. Haphazard revisions don't take into account interdependencies in the program; they may lead to further problems.

  29. Collect attitude data as well as response data. User acceptance of a program is very critical.

  30. Good documentation makes revising easier. Programs that are well documented, both at the design and programming stage are much easier to revise.
  31. Quality costs.

DESIGN CRITERIA

The design criteria related to this model in the design of an instructional program are the end users entry level behaviour and the informational materials used in the instruction to facilitate knowledge building.

RATIONALE

The entry level behaviour of the users will impact the design criteria identified by Kearsley (1987). The entry level behaviour of the target audience will affect the level at which the information is presented. It also have an impact on the level of language used to facilitate response, help and other manipulation skills needed to manipulate the software for maximum use. The informational material used in the program, on the other hand is equally important to the design of a program. The informational materials used are related to the strategies and techniques used to transmit the knowledge and facilitate learning and as such affect the design of the instructional program. The content of the information is integral to the design of the software. The design outlined in Kearsley's (1987) model can be used in the design of a Computer-Mediated Conferencing (CMC) program regardless of age, level and goal of the program. The parameters outlined in Kearsley (1987) 33 steps, to a good software design will allow easy access, user control, help, response and feedback loops to facilitate learning the informational materials presented.

REFERENCE

Kearsley, Greg. (1987). 33 Ways to Better Software Design. In George Piskurich (Ed.), Selected readings on: Instructional Technology. American Society for Training and Development, Alexandria, VA. pp. 46-48.
[Back]