Vision-Centered Design

Users, programmers, designers, marketers, and management are all important players in the software design process. Yet, as I have shown, none of these players has everything it takes to create an excellent user interface on their own. Clearly, all the players need to work together. But work together to do what? To directly design the software? Probably not, since all the players don't have design skills. Rather, I believe all the players need to work together to establish a vision of the program and of its user interface.

Establish a Product Vision

A vision is the ultimate objective of a program to help it satisfy the user's needs and goals. It is the strategic goal that transcends any specific design details or immediate problems. It is the objective for the current release as well as future releases. It is the compass your design team uses to make product direction and design decisions. Furthermore, a vision needs to be shared. It needs to be understood and agreed upon by everyone involved with the project.

TIP
Establish a shared product vision to make product direction and design decisions.

Where does a product vision come from? It doesn't really matter. It could come from the users, from marketing, from management, or even from the programmers. The origin of the vision isn't significant. What is significant, however, is that the vision is based on satisfying the users' needs and that it works as a decision-making framework.

Case Study: Information at Your Fingertips

Let's look at an example of a successful product vision. In the early 1990s, Microsoft announced that their vision for Windows was to provide Information at Your Fingertips. Microsoft realized that users don't really use computers to run programs. Rather, users use computers to gather, retrieve, process, manage, and manipulate information. Windows at that time supported an applicationcentric model, where future versions of Windows would support a datacentric model. This simple vision helped Microsoft fundamentally change how it viewed Windows. This datacentric vision of Windows required a more object-oriented way of doing tasks. Users needed the ability to create, identify, access, view, combine, share, distribute, store, and link objects. Applications were no longer viewed as ends in themselves but as collections of components that provide services to manipulate certain types of objects. This vision led to the development of COM and OLE, and object-oriented, component-based software is now a fundamental Windows technology.

You might argue that a vision like this affects the system architecture more than the user interface design itself. Perhaps, but the user interface is what the user sees of the underlying system functionality. The two are related although the linkage doesn't have to be direct. You cannot create a user interface that fulfills the user's needs without an underlying system design that also supports that fulfillment. If you believe that the ultimate goal of software is to help users get their work done, you have to understand that this means more than designing a particular set of windows and dialog boxes. Those user interface elements have to be there for a reason.

How does a vision like this affect the user interface? It affects it in many subtle ways, but the biggest difference is that Windows now has a datacentric model. As the result of this model, Windows handles file extensions, icons, drag-and-drop functionality, context menus, and object properties differently. The Windows shell is extensible to accommodate new types of data and data commands. MDI applications are now less desirable because they tend to be applicationcentric instead of datacentric. Even the layout of a program's title bar text format has been changed (from "App - Doc" to "Doc - App") as a result of this vision.

The Information at Your Fingertips vision has resulted in a significant change in how we regard Windows programs. The COM programming model is revolutionary all by itself. Note that while it is possible that such a vision could have been established directly from users or from prototyping, it is extremely unlikely.



Developing User Interfaces for Microsoft Windows
Developing User Interfaces for Microsoft Windows
ISBN: 0735605866
EAN: 2147483647
Year: 2005
Pages: 334

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net