It seems obvious, but it’s often ignored. A good user interface design can spell the difference between acceptance of a software product and its failure in the marketplace. If the end-users find the software to be too cumbersome or difficult to understand, then an otherwise excellent product could be doomed to failure. The developer’s goal should be to make the software as professional-looking and easy to use as possible.
Sadly, I’ve found that a great many companies–especially small or highly specialized software firms–pay little attention to the mechanics of good user interface style. “As long as it works, that’s what matters!” seems to be their mantra, with little regard for the inconvenience that this imposes on the user.
Thankfully, that’s not how we operate at our company. Our team of developers invests considerable effort into making out user interfaces as intuitive and foolproof as possible, since we know that this is something our customers would appreciate. I’ve often commended my teammates for recognizing that excellence is worth pursuing.
Going back to the topic… I can’t remember how many times I’ve encountered software that was designed to work, but with little regard for ease of use. If the software forces the operator to constantly consult a manual or a cheat sheet, then that’s a pretty good indication that the user interface needs improvement. Similarly, the software should allow the user to perform tasks quickly and efficiently, without sacrificing power and flexibility. This seems intuitive, and yet these considerations are so often lacking.
The sad part is that these shortcomings can often be cured using a few simple guidelines. For example, it helps if the user can enter data using buttons and list boxes, instead of typing it in by hand. It helps if the software provides pop-up dialog boxes, to guide the user along the way. Even the judicious choice of icons and other graphics can turn a steep learning curve into a short and gentle slope.
For that matter, even such trivial matters as spelling and grammar deserve attention. Poorly phrased instructions can severely hinder an operator–and even if they don’t, they do reflect poorly on the developers of that application.
There is much more that can be said about the mechanics of good user interface design, but that’s a topic on which entire book can be (and have been) written. Suffice to say that a company that strives for excellence should pay close attention to the elements of software usability and flexibility. These are critical elements of software excellence, and they are worth pursuing.