[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
UI techniques as applied to coding
Many UI guidelines also apply to how to code
properly. Here is a part of a UI article I found: (with a little thinking, this
can all be applied to how to code)
1. Consistency, consistency, consistency. The
most important thing that you can possibly do is make sure that your user
interface works consistently. If you can double-click on items in one list and
have something happen then you should be able to double-click on items in any
other list and have the same sort of thing happen. Put your buttons in
consistent places on all of your windows, use the same wording in labels and
messages, and use a consistent color scheme throughout. Consistency in your user
interface allows your users to build an accurate mental model of the way that it
works, and accurate mental models lead to lower training and support costs.
2. Set standards and stick to them. The only way
that you’ll be able to ensure consistency within your application is to
set design standards and then stick to them. The best approach is to adopt an
industry standard and then fill any missing guidelines that are specific to your
needs. Industry standards, such as the ones set by IBM (1993) and Microsoft
(1995), will often define 95%-99% of what you need. By adopting industry
standards you not only take advantage of the work of others you also increase
the chance that your application will look and feel like other applications that
your users purchase or have built. User interface design standards should be set
during the Define Infrastructure Stage (Ambler, 1998b).
3. Explain the rules. Your users need to know
how to work with the application that you built for them. When an application
works consistently it means you only have to explain the rules once. This is a
lot easier than explaining in detail exactly how to use each and every feature
in an application step by step.
4. Support both novices and experts. Although a
library-catalog metaphor might be appropriate for casual users of a library
system, library patrons, it probably is not all that effective for expert users,
librarians. Librarians are highly trained people who are able to use complex
search systems to find information in a
library, therefore you should consider building a set of search screens to
support their
unique needs.
5. Navigation between screens is important.
If it is difficult to get from one screen to another then your users will
quickly become frustrated and give up. When the flow between screens matches the
flow of the work that the user is trying to accomplish, then your application
will make sense to your users. Because different users work in different ways,
your system will need to be flexible enough to support their various approaches.
Interface-flow diagrams can be used during the Model Stage (Ambler, 1998b) to
model the flow between screens.
6. Navigation within a screen is important. In
Western societies people read left to right and top to bottom. Because people
are used to this should you design screens that are also organized left to right
and top to bottom. You want to organize navigation between widgets on your
screen in a manner that users will find familiar to them.
7. Word your messages and labels appropriately.
The text that you display on your screens is a primary source of information for
your users. If your text is worded poorly then your interface will be perceived
poorly by your users. Using full words and sentences, as opposed to
abbreviations and codes makes your text easier to understand. Your messages
should be worded positively, imply that the user is in control, and provide
insight into how to use the application properly. For example,
which message
do you find more appealing “You have input the wrong information” or
“An account number should be 8 digits in length.”? Furthermore, your
messages should be worded consistently and displayed in a consistent place on
the screen. Although the messages “The person’s first name must be
input.” and “An account number should be input.” are
separately worded well, together they are inconsistent. In light of the first
message, a better wording of the second message would be “The account
number must be input” to make the two messages consistent.
8. Understand your widgets. You should use
the right widget for the right task, helping to increase the consistency in your
application and probably making it easier to build the application in the first
place. The only way that you can learn how to use widgets properly is to read
and understand the user-interface standards and guidelines that your
organization has adopted.
9. Look at other applications with a grain of
salt. Unless you know that another application follows the user-interface
standards and guidelines of your organization, you must not assume that the
application is doing things right. Although it is always a good idea to look at
the work of others to get ideas, until you know how to distinguish between good
user-interface design and bad user-interface design you have to be careful. Too
many developers make the mistake of imitating the user interface of another
application that was poorly designed.
There are 3 more, but those are about how to use
colors, and that is something that doens't apply... The complete article is alot
longer. Email me if you would like to have it.