The process of achieving good design presents many challenges and potential pitfalls. The following guidelines can help you avoid common pitfalls:
The details of an application express the sense of craft that you applied to the application. The details of an elegantly designed interface both please users and facilitate their work. For example, aligning the PushButtons of two related and overlapping DialogBoxes makes it easier for the user to activate new settings in an apparently seamless operation. Consistent capitalization of Menu items and DialogBox labels is a design detail that reduces textual distractions for the user.
A common design pitfall is assuming too early that a design is complete. This tendency is aggravated by schedule pressures and difficulty in pinpointing the inadequacies of a design. While it is important to begin designing early, it is also important to allow for redesigning for as long as possible. The first design of an application is not a solution but a fresh perspective from which to view interface design problems.
Interface design is best done iteratively. The development cycle of implementation, feedback, evaluation, and change avoids errors by allowing for early recognition and correction of unproductive designs.
Avoid the temptation to convert existing software by simply translating it to a new style of interface. Because direct manipulation changes the way the user works, a simple one-to-one translation is unlikely to be successful. Command line applications that are converted to direct manipulation need to be extensively reconsidered and revised. The structure of the function hierarchy and presentation needs to be completely redesigned.
User interfaces need to hide the underlying software and present a consistent interface to the user. A good user interface does not allow implementation details of the application to show through; it frees the user from focusing on the mechanics of an application.