Web Engineering Revisited
Abstract
We propose "Web Engineering 2.0" to not focus anymore on "how to engineer for the Web", but "how to engineer the Web". Web Engineering has become one of the core disciplines for building Web-oriented applications. This paper proposes to reposition Web engineering to be more specific to what the Web is, by which we mean not only an interface technology, but an information system, into which Web-oriented applications have to be embedded. More traditional Web applications often are just user interfaces to data silos, whereas the last years have shown that well-designed Web-oriented applications can essentially start with no data, and derive all their value from being open and attracting users on a large scale. Such an approach to Web engineering not only leads to a more disciplined way of engineering the Web, it also allows computer science to better integrate the special properties of the Web, most importantly the loosely coupled nature of the Web, and the importance of the social systems driving the Web.
Author-supplied keywords
Web Engineering Revisited
Erik Wilde
School of Information
UC Berkeley
dret@berkeley.edu
Martin Gaedke
Faculty of Computer Science
Chemnitz University of Technology
martin.gaedke@informatik.tu-chemnitz.de
Abstract
Web Engineering has become one of the core disciplines for building Web-oriented
applications. This paper proposes to reposition Web engineering to be more specific
to what the Web is, by which we mean not only an interface technology, but an
information system, into which Web-oriented applications have to be embedded. More
traditional Web applications often are just user interfaces to data silos, whereas the
last years have shown that well-designed Web-oriented applications can essentially
start with no data, and derive all their value from being open and attracting users
on a large scale. We propose “Web Engineering 2.0” to not focus anymore on how
to engineer for the Web, but how to engineer the Web. Such an approach to Web
engineering not only leads to a more disciplined way of engineering the Web, it also
allows computer science to better integrate the special properties of the Web, most
importantly the loosely coupled nature of the Web, and the importance of the social
systems driving the Web.
Keywords:
1. INTRODUCTION
The Web has become one of the most transforming computer-based technologies ever invented,
and has driven a number of important research and engineering directions in the almost 20
years since its invention in 1989. As the most prestigious conference in the Web community,
the WWW conferences is a good indicator of popular Web themes, with a steady flow of papers
from searching and ranking and more general information retrieval techniques. Other themes
are much more influenced by trends and have been or maybe will be rather short-lived. There
are surprisingly little consistent themes in the conference topics, one of course being everything
search-related, and the other being Web Engineering, mostly interpreted as looking at methods
and tools for building Web-oriented applications.
The last couple of years have seen many developments in computer science and IT technologies
gravitating towards the Web. The Web is increasingly perceived as “the platform” for future
developments in many areas, but the way in which this phrase is interpreted is very different.
There are probably three major viewpoints of this “platform concept”, the first is to see Web-based
user interfaces as the platform, leading to the rather simple idea of providing users with Web-
based interfaces to applications (instead of building standalone or platform-specific client/server-
applications). The second viewpoint is seeing the browser itself as a platform for development,
where the increasing richness of this client-side platform allows new classes of applications,
sometimes shifting almost all application logic to the browser. The third viewpoint is to see Web-
oriented client-side environments as the development platform; this approach often is referred to
as a Rich Internet Application (RIA).
All three approaches attract a lot of interest and are based on different assumptions and
create different constraints in many areas, such as security, performance, reusability, robustness,
Web engineering, REST, SOA, Loose coupling, Web architecture
BCS International Academic Conference 2008 – Visions of Computer Science
41
engineer Web-oriented applications. What this paper suggests is to pay more attention to an area
which has received much less interest in research, namely how to engineer the Web. Many of the
developments that shaped the triadic world view of the Web described above were not so much
planned and engineered, but they were somehow introduced and then developed evolutionary.
This evolutionary process is a good thing and should not be changed radically, but this paper
argues that it would be possible to better understand and control that process, and thereby to
better plan and develop for the Web’s future.
Today, Web Engineering is largely understood as how to engineer for the Web instead of how
to engineer the Web, and this looks at Web engineering as a specialized variant of software
engineering, taking into account the special factors of the Web as an application development
environment. A much wider view has been introduced with the concept of Web Science [1], which
focuses on an interdisciplinary approach to better understand all kinds of phenomena somehow
associated with the Web.
Our proposal is to extend the reach of the current Web engineering to a perspective where Web-
oriented applications are no longer perceived as using the Web as a platform, but where the
ultimate goal is to make them part of the Web, following its architectural principles, and benefiting
from its adaptivity, ubiquity, accessibility, and flexibility. Section 5 describes this extended idea of
Web engineering in greater detail, referring to it as Web Engineering 2.0. We propose to rethink
Web engineering as a discipline which strays further from traditional top-down ideas of software
engineering, and focuses more on the complete Web as the system into which an application has
to be embedded.
For example, it is surprising to see that not a single paper in the recent Web engineering
conferences (ICWE) was focusing on syndication and how to further develop the landscape of
systematically repurposing content. Following a more systemic approach, looking at syndication,
its progress over the last years, and the open problems, it would follow that Web engineering
should look at improving syndication for turning the Web into a better system for content
publishing, aggregation, filtering, and repurposing. However, the current application-specific focus
of Web engineering excludes this kind of viewpoint. The separation of the Web as a system and
Web applications and individual entities developed in isolation prevents Web engineering as a
discipline to reach its full potential as the premier driver of technical innovation of the Web.
2. WEB ARCHITECTURE
One of the reasons why the Web has been so much more successful than all previous approaches
at building large-scale information systems was (and still is) its simplicity and evolutionary
development. While there is an Architecture of the World Wide Web [7], this is mostly a post-
hoc rationalization of some of the developments and technologies, and only partly drives today’s
development of the Web.
Historically, a surprising number of key developments on the Web happened (and in some
disciplines still happen) with surprisingly little influence from mainstream computer science
research. In the beginning, the Web was dismissed as being much less sophisticated than the
state-of-the-art in academic information systems, and there still is a certain tension between
the way academia develops, incentivizes and assesses research, and the way how the Web is
developing. The following list is not complete, but is intended as a brief overview of the differences
between typical academia approaches, and how the Web works:
• Revolutionary vs. Evolutionary: Because of its size and pervasiveness, the Web must
develop evolutionary. In contrast, academia typically tackles idealized problems, where it
is easier to solve the core parts of a problem, without spending too much effort on dealing
with compatibility and versioning issues. On the Web, these problems often are the core
problems, and they are particularly hard because of the lack of any centralized control.
• Completeness vs. Simplicity: Typical computer science approaches try to solve an idealized
problem completely. A typical Web approach solves a real-world problem (with all constraints
W e b E n g i n e e r i n g R e v i s i t e d
BCS International Academic Conference 2008 – Visions of Computer Science42
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime


