Copyright Jack G. Zheng, April 2006, July 2005
A version of this article also appears in "Encyclopedia of Networked and Virtual Organizations", edited by Goran Putnik and Maria Cunha, from the Information Reference Source, 2008
As web based information systems and applications have been growing more and more complex, the concept of "web engineering" begins to prevail. Generally, web engineering refers to a field concerned about the employment of systematic and disciplined approaches to the development and management of web sites and web applications (Lowe 1999, Murugesan et al. 1999). It encompasses diverse principles from multiple disciplines areas including hypermedia, software engineering, human computer interaction, conceptual modeling, information retrieval, networking, etc.
The concept of web engineering was developed in the middle 1990s when web development practitioners and researchers eventually realized web development is beyond just web page design and systematical process is needed to develop large scale web sites. Bebo White, from Stanford, organized a tutorial about Web Document Engineering (White 1996) at the fifth World Wide Web Conference in 1996 and introduced approaches from hypertext engineering field. Since then, web has such a tremendous advancement that it has grown from a mere publishing media to a platform for a full range of applications and systems. This adds all kinds of difficulties to the already problematic web development. A serial of workshops and conferences have been held to attract and encourage research and work in the field.
It has been almost 10 years after Bebo White's tutorial at the 5th WWW conference. What has changed in these ten years? What is it the status of web engineering at present? What are the challenges and opportunities in future? This article will introduce web engineering from a historical perspective on the following three issues:
The core artifact of web engineering is the information
and computer application based on the web, which was initially developed by
Burners-Lee. Many terms have been used, including homepage, web page, web document
(White 1996), web site (Powell et al. 1998, Lowe 1999), web(-based) application
(Lowe 1999, Kappel et al. 2004), web(-based) system (Lowe 2001, Murugesan et
al. 1999), web(-based) information system (Isokowits et al. 1998). This reflects
a diverse understanding of web information system, especially at its different
evolvement stage. To be consistent, the term ¡°web information system (
Many people use those term interchangeably and do not specifically
define the term they chose to use. But in fact the meanings of these terms are
not exactly the same, especially viewed from a historical perspective. Earlier
names reflects web as a publishing medium. Before the middle 1990s, web sites
were mainly static and were used mainly for information or document presentation.
People felt confident that "web is a publication, not a piece of software"
(Stross 1996, pp.180). The term "web document" given by White (1996) also
reflects
"Web document (or hypertext document) is a collection of Web pages (hypertext pages). Each Web page is typically a single computer file ... A Web site can be thought of as a single Web document if it represents a single, logical information space."
During the late 1990s, with the wide spread of server side
technologies such as CGI and ASP, and database connectivity technologies such
as ODBC, more functionalities had been designed into the web. The scope of
¡°(
Christodoulou and Papatheodorou (2005) go further to distinguish
the term web page, web application and
¡°
Web applications are the different functionality-oriented
components of a WIS. A web application is actually a small-scale
Here web technologies refer to web based programming/scripting languages, markup languages, databases, servers, protocols, application frameworks/architectures, etc.
This is a fairly good definition for
Web information system is an information system that utilizes web technologies to deliver information and services, to users or other information systems/applications. Web application is a specific functionality-oriented component that utilizes web technologies to deliver information and services to users or other applications/information systems. A web information system usually consists of one or more web applications, together with information components and other non-web components.
However, even this definition is likely to be revised in the near future, as web is still growing at a fast pace. Any definition at present will soon be questionable because of new systems or new applications that expand the use of WWW. The diversity of WISs and web applications also creates problems for a good definition, because it is hard to have an accurate and complete definition to cover all aspects. This is also a difficulty for a good classification of WIS.
There are different types of
Earlier classifications are pretty simple and they tend to be based on the scope and complexity of WIS. Powell et al. (1998) simply categorizes web sites as internet (public access), intranet (internal to an organization) and extranet (limited access to public). Such classification was also used by Isakowitz et al. (1998), which further divides public access sites into ¡°web-presence sites that are marketing tools designed to reach consumers outside the firm¡± and ¡°electronic commerce systems that support consumer interaction, such as online shopping¡±. Powell et al. (1998) also categorizes web sites by complexity levels into static (pure static webpages), dynamic (database driven), interactive (dynamic data access) and fully functional sites (supporting processes and transactions).
Later more meaningful classification is presented as web
information systems are understood more. Ginige and Murugesan (2001), Deshpande
et al. (2002), Murugesan and Ginige (2005) provide similar taxonomies based
on
The above classifications are correspondent to the more
traditional perception of
Websites |
They provide information, applications and services directly to users, through hypermedia interfaces. They can be further classified by functionality, just as the classification mentioned above. |
Web software |
These are web applications, frameworks, templates or servers that indirectly serve users. They are usually used by developers and administrators to develop and manage a more specific WIS. They are distributed more like traditional software. Examples are rich textbox, web menu, DotNetNuke portal framework, Microsoft SharePoint Server, etc. |
Web services |
They are components to provide information and functionality over the web to other applications and information systems; they usually do not provide user interface. |
Table 1: A Classification of Web Information Systems |
Again, just like the definition for
Many web developers do not have background of software development.
It is common that ¡°the process of HTML or graphic design is often confused
with the complete process of web design and publishing¡± (Powell et al. 1998,
page 1). Now people do realize
Since its early days,
Another widely referenced methodology is the Object-Oriented Hypermedia Design Model (OOHDM) by Schwabe and Rossi (1995). OOHDM uses abstraction and composition mechanisms from the Object-Orientation framework. Compared to RMM, it is richer in terms of the information representations based on object-oriented modeling (Lowe 2001) and puts an emphasis on navigation design.
New approaches were also applied to web interface development, because web interface is fundamentally different from traditional GUI interface. Ideas and approaches were borrowed from usability engineering, a field in Human-Computer Interaction (HCI) to study the ease-of-use of user interfaces. Usability methodologies have become established components of successful development strategies even before the web (Neuwirth and Regli 2002). With the wide spread of web as a major interface, usability research began to extend its basic principles into the web environment (web site usability or web usability). Nielson (1999) and Graham (2002)¡¯s books are very good summary of these principles and guidelines. Nielson's Alertbox (http://www.useit.com/alertbox/), his column on web usability and usability engineering since 1995, has also become a popular and frequently referenced information resource for web usability.
As
Proponents of web engineering supported the establishment
of web engineering as a discipline at an early stage of web. San Murugesan,
Yogesh Deshpande, Steve Hansen and Athula Ginige, from
However, it has been controversial, especially for people in other traditional disciplines such as software engineering, to recognize web engineering as a new field. The issue is how different and independent web engineering is, compared with other disciplines.
There have been some debates on this issue and some people perceive web projects are only different in its short development cycles and time pressure to the market (Pressman 1998). Glass (2003) accept those differences but states that ¡°software project are always different¡±, ¡°why should we be surprised that the same condition holds for Web and non-Web projects?¡± Ramesh et al. (2002) also thinks that these aspects of the web development processes exist in some traditional software development, but it¡¯s the intensity with which they apply that distinguishes web development. Holck (2003) questions the differences and raise a new point that ¡°what is new is not the web development in particular, but rather the whole field of IS services, their delivery and associated organization process¡±.
The issue is also reflected in the slow adoption of web engineering in institutional programs. Except for very few institutions -- for example, University of Western Sydney has offered a master of information technology in web engineering and design program since 1999 (Deshpande 2004) -- most colleges do not offer separate curriculum and courses on web engineering. Many courses offered are still focused on very narrow aspects of web development, most often web page design or web programming. Hopefully the situation will change in the future with the proposition of web engineering curriculum models (Whitehead 2002, Hadjerrouit 2005) and a new textbook on web engineering (Kappel et al. 2006, to be published).
Trying to determine whether web engineering is a new discipline at this time is difficult; both proponents and opponents have sound reasons. Any establishment of a discipline needs time and the acceptance as a discipline is a long process. Web engineering is still young and maybe it is still early to determine it is a discipline. It still lacks core theories, core research areas and boundaries. The field of software engineering itself once had the same problem. As the field matures, it will establish its own core areas and generate its own body of knowledge.
On the other hand, web engineering is facing a problem of scope. Web engineering is a diverse field that covers extensive topics. These topics are usually related to other disciplines, such as software engineering, hypermedia engineering, human-computer interaction, network engineering, project management, web programming, databases and information management (Christodoulou and Papatheodorou 2005). However, there are no commonly and clearly defined core areas in this field, a similar situation with the field of Information Systems. Murugesan et al. (1999) identified 16 major areas; ICWE 2005 listed 31 topic areas and ICWE listed 7 categories and over 50 topics. On one hand this reflects the prosperity of web engineering research activities, but on the other hand, such diversity of topics may lead to confusion about web engineering as a discipline. What exactly does web engineering study? An emergent task is to organize these topics by some scheme so that the domain can be understood more clearly. A scheme is suggested here to organize topics by core areas, closely related areas and distant related areas (table 2).
Web Engineering Domain |
Example Topics |
|
Core areas |
Issues that
directly address the activities in general |
Methodologies, requirements engineering, modeling, web testing, website metrics and quality, maintenance and evolution, project management |
Development
of |
Interface design, usability, information modeling, navigation design, content management, etc. |
|
Closely related areas |
Development of specific WISs |
Web services, semantic web, mobile web, P2P, SoA, intranet, etc. |
Domain-specific development issues |
Development of e-learning, e-commerce, virtual organization, advertising, collaboration, etc. |
|
Development technologies and tools |
Applications framework, languages, architectures, CASE, etc. |
|
Distant related areas |
Other web related
topics not directly related to |
Agents, integration, search engine, web mining, development behavior issues, human and cultural aspects, education and training, legal, privacy, security, etc |
Table 2: Web Engineering Areas and Topics |
Although this classification is preliminary and tentative, it is a good start to understand the domain systematically. The boundary of web engineering field depends on people¡¯s perception of the field whether it should be more open or more bounded. This will be a long process until the field matures.
Although it has more difficulties to be recognized as a
discipline, web engineering as a community has strong growth for the past 10
years with the web itself. The problems of developing and managing websites
were first addressed in the World Wide Web Conferences, the earliest and largest
conference serials on subjects focused on web. At the fifth World Wide Web Conference
1996 in
Besides its recognition in the WWW conference, such workshops on web engineering had also been successfully held with the International Conferences on Software Engineering (ICSE) in 1999, 2000 and 2002. These events reflected a growing concern and need for a field of its own on development, operation, and evolution of web information systems and applications.
Web engineering has eventually established its own organization,
journals and conferences to draw attention from researchers and practitioner
in different areas. In 2001, the first International Conference on Web Engineering
(ICWE) was held in
Region |
Number of Conferences |
Asia/Pacific |
6 |
|
6 |
|
8 |
Other ( |
1 |
Total |
21 |
Table 3: Number of Conferences (ICWE, WISE, WSE) Until 2006 |
Besides conferences, the Journal of Web Engineering (JWE),
the first international Journal related to Web Engineering, was published by
Web is young, and web engineering is young. With the fast
growth of
Although there have so much debate on whether web engineering is really different or should be treated differently, the fact is that it has achieved wide awareness and acceptance, with established conferences, books and communities all round the world. There are unprecedented opportunities and resources to push the web engineering forward.