Web Application vs Website
The fundamental purpose of all web applications
is to facilitate the completion of one or more tasks. Unlike visitors
to traditional, content-centric websites, users of web applications
invariably arrive with specific goals, tasks, and expectations in
mind. Of course, that is not to say that visitors to content-based
websites do not also arrive with certain goals and expectations, but
rather that the motivations for using a web application are almost
always explicit and precise.
One of the most important implications of this
task-based orientation is the degree to which the application should
call attention to itself. Compared to content-centric websites, video
games, and various forms of entertainment media, web application
design succeeds not when it draws attention to itself but when it
recedes into the background. While this does not mean that web
application’s design should not be enjoyable and aesthetically
pleasing, it does mean that the design should play a subservient role
to the user’s work.
A second implication of their task-based
orientation is that web applications have to provide users with
various milestones informing them when tasks are complete. In other
words, web applications have to support an end-state in a way that
content-based sites typically do not.
So when is a website a web application? Without
being overly concerned about semantics or classification, it is
important to establish an objective means of differentiating between a
web application and a traditional website. In contrast to
content-based websites, a web application possesses both of the
following properties:
One-to-one relationship:
Web applications establish a unique session and relationship with
each and every visitor. Although this behavior is fundamental to
web applications it is not present in content-based websites.
Because a web application requires each user to uniquely identify
themselves to the system, typically through a username and password
pair, the application can be dynamically altered from one user to
the next. This can take both the obvious form of personalized
content and the more subtle and complex form of personalized
functionality based on roles and privileges. This type of dynamic
behavior allows a complex corporate accounting application, for
example, to provide different functionality to account managers,
regional directors, corporate executives, etc.
Ability to permanently change data:
Web applications allow users to create, manipulate, and
permanently store data. Such data can take the form of completed
sales transactions, human resources records, or email messages to
name a few. Because web applications are fundamentally database
applications–that is, they store and present information contained
in a defined database structure the user’s information almost
always has to fit within a predetermined format. Certain fields are
present; some fields are required, others are not; some require a
specific type of value; and still others require a value within a
precise range. The result of all this is a level of data validation
and error recovery unseen in content-based websites.
Although these two characteristics alone result
in a fairly broad definition of web applications, websites that
possess both of them necessarily contain a degree of application
behavior, logic, and state lacking in traditional content-based sites.
In addition, they require a significantly more sophisticated level of
user interactivity and software design than what is associated with
traditional content-based websites.