[Contents] [Index] [Next] [Previous]

Adopt the User's Perspective


Effective design starts with adopting the user's point of view, which is often difficult to do. Application designers tend to see an application as the implementation of functions. In contrast, the user sees an application in terms of its interface.

Good design is rooted in an understanding of the user's work. A well-designed application solves users' problems, makes their work easier, and offers them new capabilities. The two most effective ways to understand the user's work are to involve users in the design and to be a user yourself.

Input from users can help determine both appropriate functions and methods for presenting them. Involve users as early as possible in the design process because, as the design progresses and the schedule closes in, the possibilities for design change decrease.

You do not need a working prototype to involve users. In fact, you can even involve users while you are writing specifications. At this stage, you can watch users work in order to understand the environment in which your application will be used. Talk to these users about their work, their current tools, and their goals for new tools.

For example, if you are designing software to create and display charts and graphs during meetings, you might attend meetings at various customer sites, see how charts and graphs are currently used in meetings, and interview meeting participants to learn what they would like to see in a new tool. Once you have a working prototype of your application, invite users to test it to see if your interface meets the goals you established for it.

Try to use your application in real situations. Using an application can provide critical insights into user interface problems. Acquiring experience with the application can be difficult and time consuming, but it is a worthwhile exercise. Before you even create the interface for your application, you can use similar applications, even competitive products, to help you understand the user's tasks.