Five years ago, I co-wrote a paper for the HFES (Human Factors & Ergonomics Society) conference about Design Considerations for Web-based Applications. Prior to writing the paper, my work was evolving from designing informational Web sites about the work happening at NCSA to enabling people to actually get work done using NCSA Web applications.
We developed Web-based workbenches for chemists, remote shake table controllers for earthquakes engineers, dynamic portals for corporations, and more –all for the Web. Instead of designing pages, I was designing flows, behaviors, and states. The structure of the Web, however, wasn’t evolving with us. All the applications we designed and built were delivered within a Web browser and with page-based mark-up, which lead to significant design constraints and opportunities. At the time, very few sources were talking about how to design interfaces that embraced these constraints leveraging the benefits of Web interactions.
“A number of well-developed Web usability guidelines work well when applied to traditional browsing-oriented web sites. Numerous well-researched GUI (desktop) guidelines also exist. However, neither set of principles alone is applicable to Web application interface design, since Web applications can be thought of as half web site and half client-application.
Existing web usability guidelines may hinder Web application usability by optimizing interactions toward the browsing model. Interface design guidelines for desktop applications, on the other hand, do not address conventions of Web users, current limitations of the Web environment, and the new possibilities inherent in the Web. Desktop GUI guidelines (the more adaptable of the two sets) should be translated into Web terms and supplemented with additional guidelines that emerge from the Web environment to encompass the needs of Web application interface design.” - Design Considerations for Web-based Applications
So our challenge was to take what had been learned building desktop applications and determine what to apply and how to apply it on the Web. This challenge still exists today as evidenced by Bill Scott’s response to a question on the IxDA list about “what’s actually different between designing for rich Web applications and desktop application”:
- Browser Based Model: Users expect the back button (and the rest of the Web browser) to work for content browsing.
- Discoverability: We are introducing concepts that while expected on the desktop are not as expected in the context of a web page. So “props” are needed to introduce the user to desktop idioms making their way to the page.
- The content/document model vs. application model: At Yahoo! we found (in testing) that users are not surprised by drag and drop on the web if the application looks like a desktop application. But the hybrids (looks like a regular page but has stuff like drag and drop, inline editing, auto-save, etc.) are much more challenging to design for.
- The move from pages to the concept of curated objects. Things like trip plans (like on our Y! trip planner) become shareable, bloggable, findable, etc. It is a move from users just visiting a page to users re-finding and sharing their bookmarks, trips, articles, etc. with their community.
- The social dynamic of these kinds of apps. So many desktop apps were about the human to the community. These apps are about social networks with the computer hopefully becoming the conduit not the end-point. This changes the way you think about designing applications.
- The Shift to immediacy. Things happen on the fly and possibly in several places at once. This forces the issue of continuous feedback. Having a world of information and a community of more local & relevant information available "just-in-time" changes the way you think about designing your applications on the Web.