2 QUALITY COMPONENTS AND
WEB PATTERNS
Web patterns are a recent software engineering
problem-solving method that emerged from the
object-oriented discipline. According to Alexander
(1977):
“Each pattern describes a problem which occurs
over and over again in our environment, and then
describes the core of the solution to that problem, in
such a way that you can use this solution a million
times over, without ever doing it the same way
twice”.
Patterns aim at capturing solutions and not just
abstract principles or strategies. Patterns on the Web
can be utilized to improve accuracy, suitability,
aesthetics, ease of use, changeability and in general
the overall quality of Web applications. Web quality
is primarily derived from the software quality
components of ISO 9126 (ISO, 2001).
Following these general software quality
standards as defined by the ISO 9126 and the Web
engineering guidelines proposed by Olsina, (Olsina,
1999) several quality components are identified and
presented. Each component is decomposed into
several features that must be separately addressed to
fulfil users’ needs:
Usability – (e.g. Learnability, friendliness,
playfulness, aesthetics, ease-of-use, etc.)
Functionality – (Accuracy, suitability,
compliance, interoperability, security, etc.)
Page
Elements
avigation
Patterns
Search
Patterns
E-Commerce
Patterns
Functionality
Reliability
Efficiency
Maintainability
Usability
System Reliability – (Fault tolerance, crash
frequency, recoverability, maturity, etc.)
Efficiency – (System response-time performance,
page and graphics generation speed, etc.)
Maintainability – (Analyzability, changeability,
stability, testability, etc.)
The rapid technological changes especially in the
area of Web engineering, as well as the rigorous
users’ requirements for continuous Web site updates,
easy system modifications and enhancements, both
in content and in the way this content is presented,
are key success factors for the development and
improvement of a Webapp. To this end, Web
patterns can prove quite useful suggesting ways of
designing and implementing Web based systems
grounded on sound and tested solutions.
Web patterns can be classified into four types
according to their functionality: a) Navigation, b)
Page Elements, c) Search and d) E-commerce
(Rossi, 1997; Rossi 2002; Welie, 2000):
Navigation Patterns - Accessing information is
supported by patterns such as Bread Crumbs, Split
Navigation, Double Tab, Meta Navigation, Outgoing
Links, Progressive Filtering, Repeated Menu, Teaser
Menu, Combined Menu, Fly-Out Menu, Scrolling
Menu and Directory. Navigation patterns allow for
easy and fast access to information, consistency and
simple understanding of the Web application’s
structure improving the reliability, usability and
efficiency of the site.
Page Elements – News Box, List Builder,
Tabbing, Paging, Wizard, Parts Selector, Language
Selector and Identification are patterns that can
assist the user during a task activity, enhance
interactivity and in general improve a site’s
usability, efficiency, functionality and
maintainability.
Search Patterns – Various search mechanisms
(e.g. Simple Search, Advanced Search, Sitemap) are
provided when looking for specific information.
These mechanisms can significantly enhance the
level of functionality and may also affect the quality
of the site’s usability, reliability, efficiency, and
maintainability.
E-commerce Patterns – Webapps usually require
certain functions that are vital for their operation. E-
commerce patterns, such as a Shopping Cart and a
Product Comparison aim at enhancing the quality of
the usability, reliability and functionality aspects of
these applications.
The relationship between Web quality factors and
the type of Web patterns described earlier is
depicted in figure 1.
Figure 1: The Patterns-Quality Components Relationship
Diagram
The Web quality factors described earlier can
drive the design of Webapps based on patterns
encountered on the Web. Design guidelines are also
provided for the development of successful patterns.
Tables 1 provides a sample list of each of the Web
patterns categories encountered on the Web and
propose respective design guidelines for achieving
the desired level of quality for each of the four types
of patterns described previously.
Our proposition here is simple and
straightforward: A Web designer may select the
appropriate patterns from tables 1 to 4 and follow
the suggested design guidelines to achieve the
ICEIS 2004 - SOFTWARE AGENTS AND INTERNET COMPUTING
422