Professional Documents
Culture Documents
Applications
n Schedule delays plagued the
projects 79% of the time.
n Projects exceeded the budget 63% of
the time.
The primary causes of Web system failures
by Athula Ginige and San Murugesan are a flawed design and development
Although the development of Web applications may seem easy, it is often process and poor management of their
more complex and challenging than many of us think. In many ways, it is development [6]. The way we address
also different and more complex than traditional software development [6]. these concerns is critical to realizing the
Two key attributes distinguish Web-based systems development from tradi- Webs full potential.
tional software development: rapid growth of the requirements of Web-
The emerging Web engineering discipline
based systems and the continual change
deals with the process of developing Web-
of their information content. Web-based
based systems and applications. The
systems need to be designed and built for
essence of Web engineering is to success-
scalability and maintainability; these
fully manage the diversity and complexity
features cant be added later. Success in
of Web application development and hence
building, implementing, and maintaining a
avoid potential failures, which can have
Web-based system largely depends on how
serious implications. It is a proactive
well we address these issues.
approach to building Web applications. For
In addition, a Web-based system must meet a brief introduction to Web engineering and
the needs of its many different stakeholders a review of progress in this field, see [6, 7, 9,
the diverse range of the systems users, 11, 13].
persons who maintain the system, the orga-
Based on our experience in building Web-
nization that needs the system, and also
based systems and on our research, we
those who fund the system development.
present a methodology for successful and
These needs add to the complexity of Web-
sustainable development of Web applica-
based system design and development.
tions. We believe the Web development
Furthermore, development of Web-based
methodology and the guidelines we offer
systems calls for people with knowledge
can help Web developers and project
and expertise in many different areas.
managers avoid many of the problems
Many organizations and developers currently hampering Web-based system
have successfully developed large, high- development.
performance Web sites and applications,
Get the Cutter Edge free: www.cutter.com/consortium/ Vol. 14, No. 7 July 2001 25
8. Address the nontechnical issues, such as Context Analysis
revised business processes, organiza- The first essential step in developing a Web-
tional and management policies, human based system is context analysis. In this
resources development, and legal, step, we elicit and understand the systems
cultural, and social aspects. major objectives and requirements, gather
information about the operational and appli-
9. Measure the systems performance.
cation environment, and identify the
10. Refine and update the system. systems primary stakeholders. In addition
to the functional requirements, the systems
requirements for scalability, maintainability,
WEB DEVELOPMENT PROCESS availability, and performance need to be
Based on our practical experience in specifically elicited and understood by the
building successful Web applications, we developers at the beginning of the develop-
recommend the development process ment process. Based on this information,
shown in Figure 1. This process assists in we then arrive at the systems technical and
capturing the requirements, enables integra- nontechnical requirements, which, in turn,
tion of know-how from different disciplines, influence the system design.
facilitates communication among various
For instance, if the information content and
members involved in the development
the systems functions are going to evolve
process, supports continuous evolution and
considerably, as in e-business systems, the
maintenance, facilitates management of the
system needs to be designed for scalability.
information content, and assists in success-
On the other hand, if the information
fully managing the complexity of the devel-
changes frequently as in online
opment process.
Context
Analysis
Quality Control and Assurance
Product Process
Model Model
Project Management
Documentation
Project
Plan
Web Site
Development
Web Site
Maintenance
Get the Cutter Edge free: www.cutter.com/consortium/ Vol. 14, No. 7 July 2001 27
2. An application architecture depicting security are not critical requirements, a
various information modules and the standard Web server is adequate.
functions available
Application Architecture
3. A software architecture identifying various
software and database modules required The application architecture shows us a
to implement the application architecture map of various information and functional
modules. An information module may
A suitable product model for an application provide the same information to all the
is developed based on the systems require- users or provide customized or personalized
ments derived from the context analysis. information to each user. Functional
modules such as login pages, registration
System Architecture pages, Web forms for data collection, and
Development of an appropriate system the shopping carts used in e-commerce
architecture is important, especially if high systems collect and process the users
performance and/or high security of the input.
Web-based system are critical needs. For
As an illustration, consider the application
applications such as those used for the 1998
architecture of the ABC Internet College
Nagano Winter Olympic Games and the
(www.abccollege.com), shown in Figure 2,
2000 Sydney Olympic Games, high perfor-
which provides students with online person-
mance and high availability were primary
alized tutoring and dynamically generates
requirements. Hence, design of these
learning materials based on each students
systems network and server architecture
past performance. When a student logs in,
incorporated redundant hardware and
learning activities appropriate for that day
advanced features such as load balancing,
are presented on the students personalized
Web server acceleration, and efficient
home page. Based on his or her past perfor-
management of dynamic data to boost the
mance, the student is directed to do the
performance [8]. Where performance and
next test module, a personalized revision
Login page
Dynamically created
Performance student home page based
Record on past performance
Cgi or ISAPI
Scripts
ODBC
Interface
Get the Cutter Edge free: www.cutter.com/consortium/ Vol. 14, No. 7 July 2001 29
Table 1 Means of Fulfilling Web System Requirements
Requirement Means of fulfillment
Uniform look and feel across all the Web Creation of Web pages using templates
pages that can easily be modified
Consistency of information that may appear in Storing information in a single place (in a
different places or pages database or as an XML file) without
duplication of information in different
places or databases and retrieving the
required information for presentation
where and when needed
Ease of information update and maintenance Provision of a back-end system to edit
information in a data repository; could
have Web interface for easy access from
anywhere
Ability to add new Web pages easily Dynamic generation of navigational links,
rather than predetermined static
navigational links
Decentralized system administration Provision of a multiuser login system to
access back-end systems and use of a
user administration system that can
assign specific functions and data sets to
content managers and other developers/
administrators
Mechanisms for quality control and assessing Inclusion of metadata for Web pages; use
the relevance of information of a Web robot for gathering salient
information, processing the information
gathered, and taking appropriate action(s)
for ensuring quality or relevance of
information presented
computing, software, and IT professionals Project Plan
develop the software, database, and infor- To successfully manage Web development,
mation systems. It is important to ensure a sound project plan and a realistic
that the development processes enable schedule are necessary. Progress of devel-
these three diverse groups to work together opment activities must be monitored and
and communicate effectively. managed. Project planning and scheduling
techniques used in other disciplines can be
Many software development process
used for Web development.
models [11] can be suitably adapted for
Web development. Considering the
Web Site Maintenance
strengths and limitations of the various
After a Web-based system is developed and
models and the requirements of the appli-
deployed, it needs to be continually main-
cation, we can choose and use an appro-
tained. Web maintenance can be classified
priate process model. For example, for
into three main categories: content mainte-
small-scale trial applications, a model
nance, software maintenance, and hard-
incorporating iterative refinement of an
ware and network maintenance.
initial prototype is most suitable.
Specification
Web Page Content
Development
Web Page Content
Design
Prototype Evaluate
Software
Design
Develop Test
Application the Code Code
Software Development
Populate
Get the Cutter Edge free: www.cutter.com/consortium/ Vol. 14, No. 7 July 2001 31
backgrounds and have different skills and Knowledge of users cognitive skills and
expertise. The outcome of the Web page issues is useful for arriving at a good design
content development process, described [12]. The designer should know how the
below, forms the input for the application users would perceive and comprehend
software development process. information, as well as how the fonts, color,
and layout contribute to enhancing the
Web Page Content Development users comprehension. This is very impor-
Web page content development is an tant, as the usability of a Web site will deter-
important activity; it determines what infor- mine its success. Furthermore, to meet the
mation is presented and how it is presented needs of global users, a Web sites usability
to the systems users. Content development may have to be examined from a global
starts with a detailed analysis of the Web- perspective. Shirley Becker and Florence
To meet the needs of based system requirements and moves on Mottay [1] argue that usability requires
global users, a Web sites to development of appropriate specifica- cultural sensitivity in language translation
tions for Web pages. Web pages are then along with appropriate use of color, design,
usability may have to be designed to meet the specifications. The and animation. Jacob Nielsen discusses
examined from a global prototype usually contains a set of sample how to design usable Web sites [10], and
pages to evaluate the page layout and navi- Molly Hammar Cloyd describes how to
perspective.
gation among different pages. Based on the design user-centered Web applications [3].
feedback from the stakeholders, the page
design and/or the specifications may be In designing a Web-based system, it is
suitably modified. This process may go important that the designers be aware of
through a few iterations until the stake- and take into consideration the technolog-
holders and designers are satisfied with the ical constraints and their impact on the Web
screen layout and the navigation structure. application. For example, it may not be
feasible to use very large graphics or long
Design is the creative part of Web page video clips due to bandwidth limitations.
content development, and it needs to take The designer should also consider nontech-
into consideration the stakeholders require- nical aspects such as legal, moral, and
ments, users cognitive abilities, technical social issues that are relevant to the environ-
issues, nontechnical issues, and earlier ment in which the application will be used.
experiences, as shown in Figure 5.
Stakeholder Nontechnical
Requirements Experience Issues
Get the Cutter Edge free: www.cutter.com/consortium/ Vol. 14, No. 7 July 2001 33
Athula Ginige is a professor of approach enables us to implement a decen- management are the keys to success in
information technology and head
of the School of Computing and
tralized maintenance mechanism in which Web development.
Information Technology at the different people can be assigned responsi-
University of Western Sydney,
We have presented a Web development
bility for maintaining specific sections of the
Australia. Dr. Ginige is also the process and methodology that have been
information.
director of the AeIMS (Advanced successfully applied in the development of
enterprise Information
Management Systems) Research
To facilitate scalability, a Web-based system many Web applications, including those of
Centre at the university. His needs to be built on a component-based the ABC Internet College and the University
research interests are in the areas architecture, and the navigational links and of Western Sydney [5]. Our key recommen-
of multimedia systems, develop-
buttons need to be dynamically created. dations for successfully developing and
ment of large-scale Web-based
information systems, information A component-based architecture allows us implementing large maintainable and scal-
structures for interactive flexible to easily add new functions or information able Web applications are to:
learning modules, information modules simply by adding the required
retrieval strategies for the Web, n Adopt a sound strategy and follow a
and e-business systems for small functions as new components. As naviga-
suitable methodology to successfully
to medium-sized enterprises. tional links and buttons are dynamically manage the development and main-
Dr. Ginige has been involved in created, user-requested Web pages will tenance of Web sites.
design and development of large contain links to these new components
Web-based systems and has n Recognize that, in many cases,
as well.
published on Web development development of a Web application
methodologies. He is the main As the system needs to be designed for scal- is not an event, but a process,
author of three chapters in the since the applications requirements
book Hypermedia and the Web:
ability and maintainability, we emphasize in
An Engineering Approach (John our methodology the need to decide on the evolve. It will have a start, but it
Wiley, 1999). application software architecture as part of will not have a predictable end
as in most traditional software
He graduated with a B.Sc. in engi- the product model. The application soft-
development.
neering, first class honors, from ware architecture impacts the processes to
the University of Moratuwa, Sri be used for developing the system, and this n Within the continuous process, iden-
Lanka, and received his Ph.D. in
computer vision from the University will in turn determine the development time tify, plan, and schedule various
of Cambridge. Dr. Ginige is a fellow and cost. The application software architec- development activities such that
of the Cambridge Commonwealth ture shown in Figure 3 is suitable for a scal- they have a defined start and finish.
Society and a member of the
editorial board of IEEE Multimedia. able and maintainable Web site. It can also n Remember that the planning and
He was the national president of support Web-enabled back-end systems to scheduling of the activities is very
the Australian Pattern Recognition facilitate decentralized maintenance. important to successfully manage
Society (APRS), 1994-1995. the overall development, allocate
resources, and monitor progress.
CONCLUSION
n Repeat these activities, as required,
As we begin to place greater emphasis on to meet the changing needs
the performance, correctness, and avail- and requirements of the Web
ability of Web-based systems, sound devel- application.
opment processes and methodologies n Consider the big picture during plan-
assume greater significance. And as systems ning and designing Web applica-
become larger, large teams of people with tions. If you do not, you may end up
different types and levels of skills will be redesigning the entire system and
required to work together, necessitating repeating the process all over again.
distributed collaborative development. If you address the changing nature
A well-defined process and good project of requirements and information,
appropriate look and feel, and all
other related aspects early on, you
Get the Cutter Edge free: www.cutter.com/consortium/ Vol. 14, No. 7 July 2001 35