User interfaces for web applications
Reading User Interface Design for Web Applications by Jean Tillman
(Sova v síti, 14 November 2003, Designing web applications is different) left me with mixed feelings. We do learn about the differences
between user interfaces for web applications and the design of conventional content-based pages, but
the look is cursory and many of the points are open to debate. My own experience designing user interfaces
isn't based on case studies or other precise measurements, but it can offer a perspective
and some views that differ from those in the article.
Page titles are a great place for supplementary information that stays relevant
throughout the user's time in the application, such as the period they're working in. This information usually isn't
essential, but users should be able to see it whenever they work with the application. Page titles still fulfill their original
purpose as well. Each page, or form if you prefer, has a unique number and label that lets you
identify it in the event of an error, for example.
Hypertext vs. linear tasks. In very simple web applications you might be able to talk
about linear tasks. In most cases, though, you have short linear stretches and use
a combination of form-based navigation and hypertext.
Scrolling. Most users dislike having to scroll vertically, and even more so horizontally.
Of course it depends on the structure of the form, but the data section that the other
logic applies to, including navigation and controls such as action buttons, should be visible in full without scrolling.
If that isn't possible, for example when the number of records in the data section varies, it's worth
offering pagination or repeating the controls below the data.
Cross-browser considerations are tricky, and I certainly wouldn't claim that
designers and developers control the environment in which web applications will run. The same applies here as
on the conventional web, and I'd like to emphasize it. Follow standards as closely as you can and try to avoid proprietary
technologies. Setting minimum browser requirements has worked well. For example, you can decide to stick to
ECMAScript 3.0 for client-side scripting. Then it hardly matters whether the client runs
IE 5.0, 5.5, 6.0 or Mozilla 1.0.
Browser buttons, meaning the browser's navigation buttons, are more of a nightmare for server-side programmers.
The right combination of Back and Forward can put an application
in an inconsistent state that causes errors. This is mainly something to handle on the server. Passing
a counter, for example, can help limit those states.
Home page. For a web application, this is the entry point to its different sections. If there are several applications,
the home page lets you choose one, browse help, sign in, register or perform another action that applies across applications.
Related articles
Related CZ Podcast episodes
- #217 · Ivo Lukačovič
On Windy, JavaScript and building companies. · Czech audio
- #3 · Java 6 SE, Vývoj webových aplikací
Dagi and Filemon discuss Java 6 and web application frameworks. · Czech audio