These five
UserInterfacePatterns are often described by
WardAndKent
though they never (yet) wrote them down. They were
first applied by the
SemiconductorTestSystemsGroup.
I have seen a lot of patterns about the low level aspects of user interface programming, and I have seen patterns on how to approach designing for the user. Last year, I co-authored a pattern language that tried to address what I felt fell through the cracks: Patterns that address the whole user's experience with a piece of software. I wanted to bridge the gap between
SoftwareDesign (where some user interface experts call their home) and
SoftwareEngineering (where most programmers live).
It didn't make the cut for the PLoP96 book, but some people have found it useful and I got positive feedback at the conference. If you get a chance, check out
http://www.maplefish.com/todd/papers/experiences/Experiences.html and let me know what you think.
ToddCoram
It is interesting that so few user interface patterns have been written.
I guess that just validates the stereotypes about programmers.
An interesting subarea of
UserInterfacePatterns is
UserInterfacePatternsForDatabaseApps.
In 1995, I was consulting for a client who was a psychologist. The team I was on tried every graphical user interface structure for database applications that was popular at that point in the industry--single document interface, multiple document interface, VB 1.x style interface. However the client didn't like any of these designs. Finally, we decided to try an interface style based on the look and feel of the Web (we were programming in Delphi), where
TheDataIsTheUserInterface. The toolbar became a list of
StartingPoints into data browsing and editing screens, and from there on, the data was presented in the natural hyperlinked graph that represented its underlying structure. The client was finally pleased with the results.
In 1998, I had a second consulting assignment where I decided to try the same technique again. This time we were rewriting a Clipper application for Windows. To my astonishment, the client--who was also the original Clipper programmer--had written a similar interface based on
TheDataIsTheUserInterface for his Clipper application. So we easily rewrote the application for Windows, and gave it some Web functionality in the process.
I have since written a completely web-based presentation program using
TheDataIsTheUserInterface, and this has been extremely successful.
I'm not sure if
TheDataIsTheUserInterface is specific enough to be a pattern, but thought that bringing it up here might spur some discussion about what might be.
- What common web interface designs reflect patterns?
- What interface designs tend to be unique to web applications?
- Why?
--
DaveOrme
WebsitePatterns covers some of these issues
There are a number of excellent UI Patterns, with clear and detailed explanations at
http://www.welie.com/. Each pattern is described with the problem that it solves, the rationale behind its solution, as well as examples and places where you'd be likely to use it.
A pattern language for (the user interface of) business intelligence applications is available from
http://docs.felixkaiser.com/go/a-pattern-language-for-business-intelligence.
See also
GuiGuidelines (
DynamicUserInterfacePattern)
SonificationDesignPatterns
CategoryUserInterface