Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!thunder.mcrcim.mcgill.edu!snorkelwacker.mit.edu!apple!voder!pyramid!athertn!hemlock!mcgregor From: mcgregor@hemlock.Atherton.COM (Scott McGregor) Newsgroups: comp.human-factors Subject: Re: rules of thumb Keywords: Human Factors Heuristics, Rules of Thumb, Usability Message-ID: <35585@athertn.Atherton.COM> Date: 27 Jun 91 03:31:33 GMT References: <1991Jun26.092540@axion.bt.co.uk> Sender: news@athertn.Atherton.COM Reply-To: mcgregor@hemlock.Atherton.COM (Scott McGregor) Followup-To: comp.human-factors Organization: Atherton Technology -- Sunnyvale, CA Lines: 251 In article <1991Jun26.092540@axion.bt.co.uk>, jpope@axion.bt.co.uk (john pope) writes: > I wonder if anyone has any general `rules of thumb' for > considering human factors when designing products. > I know this sounds a bit like asking someone to unify > the laws of physics in a sentence; but I thought it was > worth asking. I've been needing to write down my thoughts on this topic for the people who work for me for a while, so I might as well do it now, and share this with this group as well. (By the way, I also have a physical unified field theory and a proof that for all x>2, there exists no integers a,b and c where a**x + b**x = c**x, but there is not enough space in the margins here for them... (Note 15). Just kidding :-) Some Simple Rules of Thumb for Designing for Usability Copyright 1991 by Scott L. McGregor (Permission to reproduce by request only, please) 0) Remember, the COMPUTER-AIDED in CAW, CAD, CAM, CASE, etc. means that the computer is supposed to aid the user, not vice versa. 1) The human brain, the human sensory system and the human motor system are machines. Like all machines they do some things well and other things less well. Unfortunately, there are many tasks which these machines are asked to do which they are not well suited for. The primary tasks of designing for usability are (note 6): a) identifying the probable failure points of the human machine, and designing the supporting computer system to minimize these demands on these components which would cause them to fail. b) identifying the probable points of advantage in the human machine, and designing the supporting computer system to maximize the use of these capabilities. (Note: typically avoiding failure is more important than maximizing advantage). 2) Major aspects of the human machine are:(Note 1) a) Its ability to retain information, i.e. short term and long term memory. b) Its ability to interchange information with others, i.e. communication. c) Its ability to operate on information, i.e. reasoning ability. d) Its ability to acquire information, i.e. perception. e) Its ability to manipulate its physical world surroundings, i.e. action. 3) Major limitations of memory are: a) very few short term memory "registers" (7+/-2) for storing information used in current reasoning activities. b) long term memory is faulty in many ways: 1) information forgotten (or no longer retrievable on demand) 2) information misremembered. 4) The major technique for augmenting short term human memory is to record data in the physical world where it can be retrieved quickly without the need for remembering (typically this means writing it down and keeping the note in a visible place). In computer interfaces this is a typical function of menus and other precached lists. 5) The major technique for augmenting long term human memory is to record the data in the physical world and organizing it for later retrieval (typically this means writing it down and putting it in a book or file). In computer interfaces this is a typical function of a file or database. 6) The major advantage of the human memory processor is its ability to do associative retrieval on large amounts of unstructured information. 7) The major limitations of human communication are: a) Human communication is frequently imprecise. b) Humans often assume more has been communicated than was actually intended. c) Humans often fail to communicate sufficient information. d) Humans often fail to communicate to a sufficient number of involved parties. 8) The major techniques for improving human commications are: a) Structuring communication and its transmission media to encourage more precision. (Typically this is the role of both paper and electronic forms). b) Structuring communication can also help to reduce problems of assuming that more has been communicated than intended. In addition, feedback loops, either enforced or voluntary can allow detection of miscommunications. c) Augmenting specific communications with explicit copies of information concerning the unstated context of the discussion. (Typically this is the purpose of attachments, bibliographies, references, glossaries, etc.) d) Reproducing information and widespread transmission of information. This is the purpose of nondirective means of information exchange such as publishing, broadcasting, open meetings, bulletin boards and even electronic forms such as Usenet News. and shared databases. 9) Major advantages of human communication forms are: a) brevity -- more is communicated than explicity stated because contextual information is not explictly stated, but understood by both parties. b) ambiguity -- humans are able to communicate somewhat about things that are only imprecisely understood, or for which common context is limited. 10) Major limitations of human reasoning are: a) humans perform tasks best which offer only a limited number of choices (note 2) (a result of the limited short term memory). Humans can perform well tasks which are "wide and shallow" (like choosing dinner from a menu) or "narrow and deep" (like following a recipe). However, they are often challenged by complexity that involves decisions over "wide and deep" decision spaces (such as choosing the right move in chess). (see notes 3) b) humans can perform poorly in tasks that require constant repetition c) humans can perform poorly when demands on their memory or communication capabilities are stretched beyond their limits d) humans can perform poorly in tasks that require consistant accuracy. 11) Major advantages of human reasoning modes are: a) flexible -- able to deal with novel situations b) self-modifying -- able to improve through successive refinement or habit formation (Note 4). c) anticipatory -- able to use past experience and current state to anticipate future needs. (Note 11) 12) Major disadvantages of human perception are a) presumption of the reality of perceived information b) presumption that what is perceived is ALL that there is to perceive. c) selectivity -- you see only what you want to see (or have an established context for understanding) (note 9) d) scope -- For instance your field of vision can only hold so many papers, and they can only be so far before you can no longer read them. 13) Major methods for augmenting human perception are: a) cross checking of multiple information sources b) instrumentation to detect other information c) choice of objective representations (Note 10) d) choice of compact (information intensive) representations (Note 12) 14) Major advantages of human perception are a) covers a wide range of physical world information requirements b) multiple senses can act concurrently to allow greater information acquisition density and automatic data (cross-senses) checking 15) Major disadvantages of human physical manipulation capabilities are the limited strength, endurance, degrees of freedom, speed and precision of human motor skills. 16) Major methods for augmenting human physical capabilities are through applications of simple machines (levers, pullies, screws, inclined planes, gears, ratchets...) assembled to provide increased leverage, endurance, mechanical degrees of freedom, speed and precision. 17) Major advantages of human motor control are human abilities to use perception and motor skills interactively to immediately improve and correct their current performance. (Note 5) 18) Small details matter greatly in their affect on usability. 19) "Logically equivalent" and "mathematically equivalent" representations are not at all likely to be "cognitively" or "usability" equivalent. Also, it is not simply enough that two alternatives support the same desired capabilities, but also that they restrict the same undesired error possibilities. 20) Perceived benefits must balance or exceed perceived efforts, on an INDIVIDUAL basis. A benefit to the group, from the efforts of an individual may not be sufficient to ensure regular performance by the individual if the individual's benefit is too indirect, infrequent or delayed. (Note 8) 21) Take advantage of people's natural skills of anticipation--allow type ahead, mouse-ahead and think-ahead. Pre-cache results of anticipated actions, display status information before it is asked for. 22) Do not lock the user from an action while another action is occuring. Let the user know things are happening, and how things are progressing continuously for lengthy tasks--do not leave a static display (or wait cursor) that leaves the user wondering if something is dead or just slow. 23) Do not gratuitiously entertain the user, but allow the user to enjoy themselves as they learn new things. Make sure they have a good experience with some aspect of the product within 5 minutes the very first time they use it. Ensure there is ongoing reinforcement as they learn more things at least every half an hour, more frequently in environments with frequent interruption. (Note 13) 24) Make the system representations "opaque" so the user focusses on the task and task representations instead. Think DEEPLY about what the user is trying to do, what objects he is concerned with, and what actions he will want to perform on those objects. See if there is a good mapping between those mental objects and actions and the representations, manipulations, and manipulators in the product. Do not fear treading new ground--you may find a representation or mapping that simplifies out many current peripheral tasks and lets the user concentrate on the root tasks--thus simplying work considerably. This may deviate somewhat from conventional ways of doing things--but if it simplifies the work enough it will becoming compelling enough to learn the new habits (a la Visicalc replacing previous matrix manipulation languages). Too often people copy interfaces rather than think deeply and therefore do not contribute as greatly as they might have. On the other hand, gratuitious variation may just inhibit learning and habit formation, so be sure you have a reason based on items above for your variation from convention. 25) Be excellent to each other (and especially to those who would use the products you build). (Note 14) Stand on the shoulders of giants, not on each other's toes (Note 15) -- Read the historical literature, not simply the latest literature, but go back to the 60s and 70s -- Engelbart's NLS, Ivan Sutherland's SketchPad, Xerox PARC's work on Smalltalk and the Altos are still inspirational in the 90s. Notes: Inspirational sources for the above ideas: 1) "Augment Memory, Improve Communication, Enhance Resoning" from Joel Birnbaum. 2) Performance best with few choices ("principle of monotony") from Jef Raskin. 3) "Wide and shallow, narrow and deep" from Don Norman. 4) Importance of habit formation from Jef Raskin. 5) perception/performance feedback loop model from Douglas Engelbart, Don Norman, and Ben Schneiderman. 6) Analysis of the human cognitive abilities from a machine perspective inspired by Herb Simon, Allen Newell, Stuart Card, and Thomas Moran. 7) Electronic Structured Communication ideas leveraged from Tom Malone, Terry Winograd and Francisco Flores. Nonelectronic structured communication theory from Wittgenstein, Austin, and Searle. 8) Individual benefits vs. group benefit economies from Jonathan Grudin 9) Lack of established context preventing perception from James Burke, Thomas Kuhn, Irme Lakatos, Ludwig Wittgenstein. 10) It is not clear if this is really possible--perhaps all representations have their inherent biases they may merely be unintentionally selected . See my writings on 'Visual Literacy". 11) Derived from my own research on "Prescient Agents", and the "Radar O'Reilley Model" of anticipatory behavior. 12) Information density from Edward Tufte. 13) 5 minutes rule from Ted Nelson's "two quarters to learn a video game" rule. 14) Cult Film humor: from Bill and Ted's Excellent Adventure. 15) "On shoulders..." from Isaac Newton, "...on toes" from Brian Reid. 16) "**x ... comment" inspired by Pierre Fermatt. Thanks to all! Scott McGregor Manager of Applications Development Atherton Technology 1333 Bordeaux Drive Sunnyvale, CA 94089 mcgregor@atherton.com fax: 408-744-1607