The challenge of designing usable computer-mediated tools
What is participatory design?
Steps in the participatory design processGeneral Description of the System and its Organizational EnvironmentChallenges to evaluating interfaces in networked environments
Task Analysis
Comparing Usability Targets and System Performance
Revising/Creating the System
Concurrent vs. linear models of design
Problems with participatory design today
Bibliography
What is usability? Usability is "[a system's] capability in human functional terms to be used easily and effectively by the specified range of users, given specified training and support, to fulfill a specified range of tasks, within the specified range of environmental scenarios" (Shakel quoted in Dillon 1994)
Notice the word "specified" in the Shakel quote. If the system or service to be designed is to be usable, the criteria for judging the system to be "usable" must be specified in advance: Which users will be supported? for doing which tasks? in which contexts? with what kind of training and support?
Participatory design is task(function)-centered
The user's focus is primarily on getting things done, not on "information search and retrieval". The user does not want to have to think about the process of search and retrieval, and designers should keep this in mind.
This attitude is of fundamental importance for doing participatory design.
You must see the clients as the knowledgeable people, even if they are
unable to articulate precisely what is required. As some social scientists
do when conducting research, you might find it useful to approach the task
analysis as if you were a Martian: question everything. Don't
assume that you know "why" people are doing what they do. You can
reassure yourself as to your competence by demonstrating your skill in
eliciting from clients the insights you need in order to design a usable
system! Your clients are your equal partners.
An important part of iteration is in users' involvement in the process. You do not simply study users' needs prior to the design phase and then forget about them until it is time to test the system or service. Translating the needs analysis during the design process involves a great deal of interpretation, which can lead designers off into directions which are not in the user's best interests. Users need to be consulted throughout the design process.
While there is an overall linear order to the design process (from understanding users' needs to designing a system to meet those needs), it is important to keep in mind that it is also an iterative process. The Neale and Kies article gives you a glimpse of how it is difficult to proceed in a strictly linear order when using participatory design. Professional designers might be able to work from the general to the specific, first identifying broad categories or lists of users, tasks, and environments and only then focusing more narrowly on the details of items in these categories (steps 1 & 2). Ordinary users, however, are more likely to feel comfortable communicating in terms of "microscenarios", where they describe vignettes or stories about what they want to do with the system. You should use methods of discussion which your users feel comfortable with rather than forcing them into thinking in ways that are foreign to them. Your goal is to understand how THEY think and feel about things, and the stories they tell should provide valuable details about the kinds of information system they need.As a result of not forcing your clients into creating abstract lists which do not mean much to them and which you do not understand because you do not appreciate the context in which these categories occur in their lives, you may feel that you are being "drowned" in details without having the "big picture" about users' needs. It will be up to you to generalize from the specific, if necessary, going back and forth from level to level until you have a full picture of what is involved. For example, as you try to get a general picture of users, tasks, types of information, etc., record their "microscenarios" for future use in finding details about the scenarios, but try to verbally generalize from the story, asking for feedback about whether this is a correct interpretation. Later, you can go back, when doing detailed scenario descriptions (see below), and use details from the microscenarios to complete the descriptions. Meanwhile, the microscenarios will have given you important understanding of why certain tasks are important, how the user views his/her role vis-a-vis the task, elements of the task's environment, etc., all of which you will need as you proceed toward building a prototype of your system. It is a delicate balance to keep on track and moving forward with your analysis while not stifling the natural expression of important contextual information. See the Methods Learning Guide for more discussion of these issues.
General Description of the System and its Organizational Environment
Name and Location -- What is the name of the organization that is responsible for the system? Where is it located?Mission -- What is the mission of the organization?
Identification of Stakeholders --
Stakeholders are those people who have a stake in getting and using the information from the system you are designing. Identifying these stakeholders is critical to the success of the design process. In most cases, there will be several types of people -- inside and outside the organization -- who rely on certain types of information, and they may all need the information in slightly different formats, time frames, or levels of detail. As a designer, you need to know who these people are and what are their needs and expectations. If you only focus on a narrow idea of the user, you cannot hope to design the system so that it meets the organization's needs.
For example, let's say the chair of a department in a public library has asked you to design a system to help her/him produce monthly reports about departmental activities. You will need to know the expectations of all those people who need or want access to those reports: other library managers, members of the department in question, members of the library's governing board, government oversight committees, members of the public, etc.
This all seems so obvious, right? Then why are we surrounded by stories of how stakeholders are ignored in the design process? Here's a recent, real-life example: A physician in Indianapolis is puzzled by the fact that so many of his patients are not paying their bills. He begins to investigate the problem by asking his office manager to show him a sample of the bills which are sent to patients. When he gets one, he studies it and is unable to understand what it is telling the patient to do. He asks the manager to explain the bill to him, and is told that, to do this, the manager will have to call the record up on the computer. Why? Because there the print is big enough to read, and the information is not compressed into an unreadable format! Why, the doctor asks, doesn't the manager buy other software? Because, he is told, they just bought the system they have! When patients are queried, they indicate that they were so frustrated by the bills that they shrugged their shoulders and tossed them in the wastebasket. Now why, you might wonder, would the needs of customers be ignored in a system which is designed, among other things, to communicate with them and whose compliance is necessary for the continued existence of the organization?
Environment --
What are the organizational, economic, political, social, and disciplinary environments within which the task takes place? The task needs to be accomplished in a way which is in accordance with social, economic, political and disciplinary context and standards. To illustrate how the environment of a task is important, think about your own class project and the environment in which you are undertaking it:Organizational -- The main participants are you and your clients. You are functioning within certain organizational constraints in terms of settings, people, expected or valued patterns of problem-solving and communicating (cf. Taylor's IUE). In fact, you and your client probably both bring to bear on this "task" performance a host of organizations -- professional and personal -- which will affect how you accomplish your "task".
Economic -- You do not have unlimited economic resources for accomplishing this task, nor does your client. You have limited access to money for travel, supplies, equipment, communications, etc. Also under this category would fall time resources. You have to get the project done by a certain date, and you and your client both have limited amounts of time to devote to it.
Political -- Take this term in a broad sense, as the ability to exercise power of any sort, which always involves the ability to martial people and material resources to suit your needs. You have little power over whether or not you do the project (sorry!), but you have some power over how much help you get from other students, the Instructor, your spouse or coworkers, the clients or their colleagues, etc. You may also have the power to get some time off from work to work on the project or to juggle your schedule so that it fits with accomplishing this task.
Social -- Outside of their roles in the organization, you will need to interact with a number of people in order to accomplish your goals. How you interact with them will be dictated by a number of social codes, including how to interact with members of the opposite sex (according to the gender codes you and they adhere to) or of other ethnic, religious, age groups, etc. These social codes and relationships cannot be ignored when designing an information system. Information is communication, and there is no such thing as socially neutral communication.
Disciplinary -- You are expected to meet certain disciplinary standards in doing this project, standards set by the LIS field (standards such as the Customer Service Philosophy, professional participatory design practices, etc. These standards play a role both in determining how you accomplish the task and what constitutes a proper RESOLUTION or completion of the task. (Their criteria for success may not be the same as yours!)
Task Analysis
Ah, the hidden complexities behind that seemingly simply word task! A task is something people do because it overcomes obstacles to attain some value that is desired by the group. With most organizational activities, there is a hierarchy of goals and steps taken to reach those goals. On each level, a task can also be seen as a goal, and a goal as a task.
Your work in identifying and describing tasks and environments will be made more simple by the fact that most people will, on an everyday level of existence, focus on performing discrete tasks such as creating and distributing a newsletter, researching and writing a report, sending out publicity about an event, etc. While some of your system evaluation will involve the analysis of such discrete tasks, however, you must also understand the broader context of the problem-solving and value-seeking that frames these specific tasks if you are to design a system that will truly be user-centered.
What are the broader goals of the stakeholders regarding the task? The level of generality is relative, of course, ranging from the types of goals stated as the "mission" of the organization down to "objectives" to achieve the mission and "activities" to achieve the objectives. Make sure you understand the hierarchy of values being expressed here. You need to know WHY a task needs to be performed.
Continuing with the example of your own project, what are your broader
goals in doing this project? (Learning how to do something? Getting
a good grade? Finding out more about your clients or improving your
relationship with them? Proving to yourself that you can be an information
professional or finding out if LIS is for you?) What about the goals of
your clients or other stakeholders (for example, the Instructor)?
How do these goals shape the way the task should be done? Which of
the goals is more central to the task than others? You need answers
to the questions like these if you are to understand the task and know
how to design a system to complete it.
Let's take you as an example again. The general task is to design
an information system for your client. What more specific tasks are
involved in doing this? Your list will include tasks such as "evaluate
the system" "redesign the system", "prepare a report", etc. For better
or for worse, the Instructor has designed an information system to help
you accomplish some of these tasks but not others. For example, this
information system offers quite a bit of support for understanding how
to analyze the client's information assets and design the system.
However, less information is available for supporting preparing reports
and revisions. This is based on the assumption that graduate students
will be in quite experienced in preparing reports so that the system does
not need support those tasks.
How must the stakeholders actually interact with the system, assuming that it is only one of possibly many information sources, a tool in information acts? This question assumes that your "system" is only a computer. In this class, we are assuming that your system design will include different types of media in addition to computers, depending on the needs of your client. The telephone is the most common form of Information Technology, after all, and most people use a variety of information sources in accomplishing tasks. It is important that your design shows the interrelationship between different types of resources. One of the common errors information professionals make is in assuming that the computer could and should be used for most if not all parts of the task performance, and not enough attention is paid to the seamless integration of different media.
Usability Criteria
So far, we have discussed usability primarily from the point of view
of utility -- the usefulness of a system to help the user get his
or her work done. However, you will want your system to be "usable" in
other ways. Jacob Nielsen has defined four categories of usefulness (cited
in Balasubramanian 1994):
If possible, set numerical values as the targets for each task.
If possible, set numerical values as the targets for each task.
Based on your research so far, take each task and describe the usability targets that stakeholders have noted are desirable ones if the system is to be considered successful. These targets should be as specific and measurable as possible. Vague targets (e.g., "should be easy to use") will not be helpful when it comes time to describe how you would evaluate the system. The more specific you can be, the better.
Setting targets sounds simple, but it is a complex and difficult task, especially since you are likely to be working on a multi-disciplinary design team where different members may disagree about the issues. Your client stakeholders will also have different ideas about which kinds of usability are more important, and where targets should be set. Tognazinni (1992) provides some suggestions about techniques that can help the design team set usability targets.
- Compare system performance with usability targets.
Based on your observations, how close does the system come to meeting all the targets on the list? In what ways do they fall short? Why?
Now that usability targets have been set, you can begin creating a prototype or working model of your system revision or creation. Tognazinni describes two types of prototype:
This means, simply, that you start with a rough sketch of the basic
elements of the system, test that, then, gradually, work toward a full
working model. Because of the time limitations for this class, you
will not have time for multiple iterations of models. However, it
is advisable that you start with a crude sketch on paper to begin with,
especially if your project involves a lot of database or html coding.
It is a lot easier to cross something out on a piece of paper than to do
a lot of recoding.
Hint: This is advice that most students do NOT want to follow. When they don't, what usually happens is this: They spend a lot of time among themselves, busily coding. With so much time gone by and deadlines approaching, they hurredly test the model with stakeholders. They find that there are sometimes fundamental errors that reveal some basic miscalculations about the system or misunderstandings of users. They are faced with having to go back almost to the beginning, and now have little time to make the necessary changes. Panic and depression set in.
A prototype is a tool for testing your ideas, so do not think that it has to be slick or professional looking. "Prototypes can and should be created in a matter of days, not weeks and months" (Tognazinni 1992: 82). Find a technique that is easy to modify as your ideas develop. Possibilities include poster board with post-its, a notebook with replaceable and rearrangeable sheets, 3 x 5 index cards, or a page layout program where objects may be quickly moved around.
You should be thinking of the usability targets as you develop the prototype. Which arrangement will make it possible to meet those targets?
This is slow and tedious work, and you will go through numerous revisions until you have what you think is a testable first version of the prototype. Allow yourself plenty of time for this stage, and be patient.
While working on your prototype, keep in mind Donald Norman's (1988)
7 design principles for addressing achieving usability:
Provide the user with a clear mental model of the system and how it works. Make the principles of system operation observable. All actions should be consistent with the conceptual model of the system. The visible parts of the system should reflect the current state of the system.
The user should not be required to remember more than about five unrelated items at one time because of the limits of short-term memory (STM), Information should be integrated into some conceptual framework because of the limitations of long-term memory (LTM).
Methods for simplifying tasks include:
- Keep the task much the same, but provide mental aids.
- Use technology to make visible what would otherwise be invisible, thus improving feedback and the ability to keep control.
- Automate, but keep the task much the same.
- Change the nature of the task.
- Intentions and possible actions
- Actions and their effects on the system
- Actual system state and what is perceivable by sight, sound, or feel
- The perceived system state and the needs, intentions, and expectations of the user
Some quick and inexpensive methods of evaluation include:
Stop testing when your prototype meets the usability targets you established and the scenarios you have chosen to support are fully supported. For example, if you are developing a system to support career counseling for MIS students and one of its targets is to enable prospective MIS students to apply for admission and financial aid through the SLIS home page, without any additional communications to other IU offices, and without having to go through more than three screens of information, then you stop testing when this scenario is fully supported using your prototype.
Be prepared to find many errors even after several testing cycles. Landauer 1995 provides numerous examples of how it can take many, many iterations before a system meets usability targets.
Many descriptions of the design process stop with the last step, implying that the designer's job is done once the system is built and delivered to the client. Especially in the dynamic and complex environments of networked systems, however, the implementation, use and user reinvention of the system are critical to the ultimate usability of the system. Even the best information assets analysis and prototype testing can not anticipate all of the factors that will come to bear on the use of the system in the real world over time. Implementation involves a complex process whereby the new system or service is introduced into the existing environment of the organization. "During implementation, the new technology must be adapted to work in particular user settings even as users must learn new behaviors and change old ones to take advantage of it....the effectiveness of the implementation process itself has a substantial impact on the usability and usefulness of social applications somewhat independently of their design features" (Computer Science and Telecommunications Board report 1998). Any new information service or system will entail the learning of new behaviors and/or attitudes and accommodation to new social relationships. This is never easy, and must be carefully attend to in order to assure the usability of the product or service.Because of the severe restrictions of time and experience we face in this class, you will not be involved with the project beyond the testing of your working model. You should be aware of the importance of the steps we are omitting from the design process.
In the types of networked design environments mentioned above, the authors of the Computer Science and Telecommunications Board report (1998) make a strong case for the replacement of a strictly linear design process, especially for the development of networked systems. The design process described above describes design and evaluation, but does not mention implementation and use of the system, implying that these processes are discrete steps, which take place in a linear order rather than concurrently. These authors argue that new, networked computer-based technologies emerge too rapidly to allow the leisurely use of "research with representative population samples to ensure the usefulness and usability of social applications before their implementation and use". In such a situation, it would be better to think of the various design steps (DESIGN, INTERATIVE TRIALS, REDESIGN, IMPLEMENTATION, USE, USER REINVENTION) as concurrent or overlapping. Beta testing of some software products takes uses an overlapping design model, taking advantage of the real-world experiences of hundreds of users while the system is still being designed. Concurrent engineering "builds on rapid prototyping approaches that draw no sharp boundaries between prototype trials with representative users, field pilot projects, and early-stage implementation processes (...). Finally, it takes into account the unfeasibility of 'getting it right the first time' as a guiding principle for NII applications." Computer Science and Telecommunications Board report 1998). This is another way of saying that the designer has to adopt the attitude that the design proces is never static or "finished". Development is constant and rapid.For the purposes of this class, with its severe time limits and lack of prior design experience of students, we are going to adopt a pedagogical -- and linear -- approach to the class projects. While keeping in mind that real professional design of an information system or service should take a concurrent or overlapping approach, for these first design experiences we will simplify the process. First you have to learn a few simple scales before you can perform a symphony!
Some of the problems practicing user-centered design today include:
Carroll, John M. (1995). The scenario perspective on system development. In J.M. Carroll (ed.), Scenario-based Design: Envisioning Work and Technology in System Development. New York: John Wiley.
Carroll, John M. and John C. Thomas (1988) Fun. SIGCHI 19(3): 21-24.
Computer Science and Telecommunications Board (National Research Council) (July/August 1998) Design and evaluation: A review of the state-of-the-art. D-Lib Magazine http://www.dlib.org/dlib/july98/nrc/07nrc.html
Czikszentmihalyi, Mihaly 1990 Flow. The Psychology of Optimal Experience. New York: Harper & Row.
Dillon, Andrew (1994) Designing usable electronic text: Ergonomic aspects of human information usage. London: Taylor and Francis.
Dillon, Andrew (1995) Artifacts as theories: Convergence through user-centered design. http://www-slis.lib.indiana.edu/PrePrints/adillon-artifacts.html
Eason, K. (1988) Designing the technical system for human use, ch. 8 in Information Technology and Organisational Change, pp. 129-156. London: Taylor and Francis.
Erickson, Thomas (1996) Design as storytelling. Interactions
3(4) (August).
HCI95: People and Computers (UK) Conference.
Holtzblatt, Karen and Sandra Jones (1993) Contextual inquiry: A participatory technique for system design, ch. 9 in Douglas Schuler and Aki Namioka (eds.), Participatory Design: Principles and Practices, pp. 177-211. Hillsdale, NJ: Lawrence Erlbaum Assoc.
Landauer, Thomas K. (1995) User-centered design methods & User-centered development, chs. 12 & 13 in The Trouble with Computers, pp. 277-322. Cambridge, MA: MIT Press.
Lewis, Clayton and John Rieman (1995) chs. 1-2 in Task-Centered User Interface Design: A Practical Introduction, ftp://ftp.cs.colorado.edu/pub/ cs/distribs/clewis/HCI-Design-Book/HCI95;URL: http://www.hud.ac.uk/events/hci95/tutorials.html
Neale, Dennis C. and Jonathan K. Kies (1996) Scenario-based design for human-computer interface development. (6 pp.)
Nielsen, Jakob and Darrell Sano (1994) SunWeb: User Interface Design for Sun Microsystem's Internal Web. http://www.sun.com/sun-on-net/uidesign/sunweb/
Norman, Donald R. (1988) The psychopathology of everyday things (ch. 1) & User-centered design (ch. 7), in The Design of Everyday Things, pp. 1-33, 187-217. New York: Currency Doubleday.
Sano, Paul (1996) Limitations & constraints for users, in Designing Large-Scale Web Sites, pp. 66-77. New York: John Wiley.
Tognazinni, Bruce (1992) Brainstorming & Scenarios, chs. 13 & 14 in Tog on Interface, pp. 67-78. Reading, MA: Addison-Wesley.
Tognazzini, Bruce (1996) Tog on Software Design. Reading, MA:
Addison-Wesley.