Home > Tutorials > Designing Web Applications

Designing Web Applications

As much as I would like to, I am not sure I will ever get around to developing a full tutorial on designing web applications. For now this is the best place on HCIRN I can think of for a repository of links and references on this topic.

What are Web Applications?

What are web applications and what distinguishes them from regular websites? There is no commonly accepted definition of web applications. Like regular websites, web applications are based on standard web technology: (D)HTML pages accessed through a web browser using HTTP (Hypertext Transfer Protocol). Java applets and Flash, even though embedded in web pages, use different technologies with different capabilities and limitations and are not web applications.

An interesting question is whether client-side dynamic behavior, usually implemented using DHTML (a combination of HTML, JavaScript, and CSS), such as client-side form validation or a calculator, already constitutes a web application. Although there is a certain overlap with web application design issues, they still fall within the realm of regular static web page design.

For something to be considered a web application it has to include a server-side response dependent on user input. A simple feedback form that results in a static 'Thank you' page is not a web application. However, a form with required fields which might result in an error message from the server, is at least a rudimentary web application. Other examples of rudimentary web applications are search facilities, such as site search, flight status check, or online directories.

This is probably the broadest possible definition of web applications. In contrast, Bob Baxley (see below) emphasizes the task-oriented aspects of web applications. "The fundamental purpose of all web applications is to facilitate the completion of one or more tasks." According to him, web applications are characterized by two properties, they "establish a unique session and relationship with each and every visitor," and they "allow users to create, manipulate, and permanently store data."

Jeff Lash (see below) considers Bob Baxley's definition as still too broad. He prefers to limit the term to full-fledged web applications, such as online email, stock trading, or photo sharing. He does not apply it to websites incorporating interactive features, such as online shopping or portal personalization.

I am not sure there is value in adopting an overly narrow definition of web applications. Why trying to distinguish web applications from websites as all? Simply, because of the dynamic nature of the interaction, web applications include design issues that are not covered by conventional, content-based website design. These design issues are the same for web application features on content-based sites as they are for full-fledged web applications.

What Next?

Bob Baxley (2002) has written a book on web application design, Making the Web Work: Designing Effective Web Applications. Reviews such as the one by Jeff Lash on Boxes and Arrows, making_the_web_work_designing_effective_web_applications.php, are mixed. The main complaint is that the book contains a lot of information that is not specific to web application design.

Bob Baxley is also writing a series of articles on Boxes and Arrows. Two installments have been published so far. The discussions are stimulating:

  • What is a Web Application?
    January 20, 2003
  • Views and Forms: Principles of Task Flow for Web Applications Part 1
    May 12, 2003

Susan Fowler and Victor Stanwick are working on a book entitled Web Application Design Handbook: How to Design Applications for the Web.


Partners: omnichannel messaging . opusrentals.com/