<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards a Contingency Based Approach to Web Engineering</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Götz Botterweck</string-name>
          <email>botterwe@uni-koblenz.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Paul Swatman</string-name>
          <email>swatman@uni-simt.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Informatics, University of Koblenz-Landau</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Stuttgart Institute of Management and Technology, Germany &amp; School of Information Systems, Deakin University</institution>
          ,
          <addr-line>Melbourne</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Web Engi neering, Contingency Based Approach, Software Engineering, Software Development Methodologies</institution>
          ,
          <addr-line>Web Applications, Distributed Applications, WAP, VoiceXML</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2002</year>
      </pub-date>
      <fpage>47</fpage>
      <lpage>64</lpage>
      <abstract>
        <p>In this paper, we introduce our preliminary work in developing an analytic framework which allows us to contrast the problem of developing 'web-like applications' (WLAs) against our accumulated understanding of software systems development. The analytic framework will form a basis for the development of a contingent approach to selection of methods, tools and techniques, then integrating these within a suitable methodological process, for WLA development. This approach allows us to make use of our existing understanding of software engineering methodology, while alleviating the danger of relying on the consequences of assumptions within that literature which do not hold, or which hold imperfectly, in the domain of WLA development. We illustrate how our approach could provide structure for the analysis of the characteristics of the potential user base of a WLA vis-à-vis the user base for a conventional software system. In this paper, we discuss methodological issues surrounding the building of “web-like applications”. We consider, in particular, the extent to which the conventional wisdom in the fields of Software Engineering and IS development methodology is applicable to - and to what extent it is misleading in - systems development for the World Wide Web (WWW) and conceptually related technological infrastructures. In comparison to traditional software, both web sites and - indeed to a greater extent - Web and web applications are immature. Until relatively recently, web sites and web applications were commonly developed in an ad hoc manner. We frequently saw that web sites were 'under construction' and contained dead links leading to HTTP Status 404 pages. In the excitement and enthusiasm of the newly seen possibilities, web creators often focused on speed and novelty at the expense of quality and structure. This can now be seen to have largely changed - necessarily so - users have more alternatives and low switching costs lead to competitive pressure on the providers of web sites and web application. There is a growing awareness of quality amongst both users and creators of web applications and - in terms of what is actually used or visited - we see the survival of only the fittest.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Consequently, quality now should play an important role during development of web
applications.</p>
      <p>Simultaneously web creators are gaining experience and discovering solution patterns which
have proven the mselves in practice. Accordingly, one can anticipate that, similarly to what
we have seen in respect of software engineering generally, we shall see a maturing
engineering sub-discipline for web-like applications.</p>
      <p>The structure of our paper, preliminary work towards the development of a model of
contingent selection of methodology for the development of web-like applications, is as
follows:</p>
      <p>First, we offer motivation for our study and offer some formal definitions relating to the
World Wide Web, similar platforms and the applications supported by such platforms.
Secondly, we develop a conceptual model of systems development.</p>
      <p>Thirdly, we contrast web-like systems engineering against software engineering leading to
a preliminary analytic framework to support contingent methodology selection.
Finally, we illustrate the use of this analytic framework to structure a discussion of
methodological issues associated with the context or environment in which web-like
applications are developed, focusing particularly on the potential user base.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Web Applications</title>
      <p>
        Over the last decade, a considerable literature has developed in respect of methods for
hypermedia development or web-based systems development
        <xref ref-type="bibr" rid="ref14 ref2 ref23 ref7 ref9">(ex. Fernández et al. 1998;
Isakowitz et al. 1995; Schwabe et al. 1996)</xref>
        . The literature is generally descriptive in nature –
introducing and illustrating the use of methods for and approaches to the development of
systems diversely categorized as, for example ‘web applications’ or ‘hypermedia systems’. It
is natural, in such work, that the class of system targeted by the method remains rather loosely
defined. The consequence of this is, however, both redundancy and conflict within the terms
used to describe classes of target system across the work of the various authors in the field.
In our work, nevertheless, we seek to develop a foundation for an approach to the selection of
methods, tools and techniques of systems development which is contingent upon the
characteristics of, and the context within which, the system is to be built. Consequently, it is
essential that we are able to define precisely the characteristics which will guide us in our
methodological choice.
      </p>
      <p>We aim to extend the scope of our study to include systems founded on platforms which are,
in some sense, similar to the World Wide Web. We, therefore, extend our terminological
work with definitions of the World Wide Web itself and with dimensions of similarity
between underlying technological platforms which we consider to be, for our purposes,
similar.</p>
      <p>
        We begin by considering systems which are based on the WWW.
distinguish between:
We may attempt to
A web site which publishes content focusing and primarily on information browsing. The
web site itself consists of documents (web pages) and links between them. This structure
directly corresponds to the hypermedia model
        <xref ref-type="bibr" rid="ref12">(Halasz and Schwartz 1994)</xref>
        .
      </p>
      <p>A web application based on World Wide Web technologies (W3C 2002c) which allows
transactions (e.g. database update or sending an email) to be executed.
The category “web application” may, however, be better conceived as a superset which
includes the special form “web site” but which additionally allows the possibility of
additional functional logic. In the following discussion, we deal with the general class of web
applications.</p>
      <p>
        Some authors distinguish between 'hypertext' and 'hypermedia' depending on the type of
media, while others use the terms interchangeably. In this paper, we will adopt the latter
view. We can define a web site as an exa mple of hypermedia – one which provides access to
information organized as a digraph
        <xref ref-type="bibr" rid="ref12 ref3 ref6">(Bieber 2000; Conklin 1987; Halasz and Schwartz 1994)</xref>
        .
Then we can say: hypermedia is an abstract or conceptual model, which may be implemented
in the form of a web site.
      </p>
      <p>
        Hypermedia systems, in their general form, possess additional important properties including
the ability to manipulate/annotate nodes and bidirectional links. Early design ideas for the
World Wide Web incorporated such functionality
        <xref ref-type="bibr" rid="ref1">(Berners-Lee 1990)</xref>
        – some of these ideas
were demonstrated in technological prototypes (W3C 2002a; W3C 2002b) and some can be
simulated by additional tools
        <xref ref-type="bibr" rid="ref11">(Google 2002)</xref>
        . Nonetheless, these approaches never really
made it into the Web that we know today. Since these concepts were not implemented in
practice, some authors have considered the web not to be a full hypermedia platform.
We can now examine a web application with functionality beyond that of the web site (see the
illustration in Figure 1).
      </p>
      <sec id="sec-2-1">
        <title>Hypermedia</title>
      </sec>
      <sec id="sec-2-2">
        <title>Application</title>
        <p>Non Web</p>
      </sec>
      <sec id="sec-2-3">
        <title>Hypermedia</title>
      </sec>
      <sec id="sec-2-4">
        <title>Application</title>
      </sec>
      <sec id="sec-2-5">
        <title>Web Site</title>
      </sec>
      <sec id="sec-2-6">
        <title>World Wide Web</title>
      </sec>
      <sec id="sec-2-7">
        <title>Application</title>
        <p>Web Site generated
from Database?
Application with
Web Frontend?</p>
        <p>Web-like Platform</p>
        <p>Web-like Application
World Wide Web</p>
        <p>WAP</p>
        <p>VoiceXML Platform
Web Application</p>
        <p>WAP Application</p>
        <p>VoiceXML Application
If we have a dyna mic web site (where, for example, content is generated from a database), we
can still consider this as an instance of hypermedia – provided the essential functionality is
restricted to displaying information and allowing the user to traverse links to other pieces of
information. A database and other foundations for dynamic web sites, such as scripting
technologies, are conceptually null – merely implementation detail.</p>
        <p>However, in the case of an application with a web interface (e.g. a web accessible messaging
server) we move, conceptually, beyond simple hypermedia – we define such an application as
containing a hypermedia component.</p>
        <p>We can identify a number of related concepts which, for completeness, we me ntion here:
•
•</p>
        <p>The term web presence is used almost synonymously to web site. However, it emphasizes
the marketing, corporate identity aspect.</p>
        <p>
          Some authors use terms such as web-based information systems. For example,
          <xref ref-type="bibr" rid="ref21 ref22 ref8">(Rossi et
al. 1999)</xref>
          describe web information systems as "information systems that are constructed
using Web technology”.
          <xref ref-type="bibr" rid="ref10">(Gnaho 2001)</xref>
          defines "A WIS [Web-based Information System]
is an Information System providing facilities to access complex data and interactive
services through the Web.”
•
        </p>
        <p>In some cases, web service is used to describe a web site, which offers some kind of
service. Recently, however, this term has come to be used predominantly for a special
form of application – those which expose their functionality to other application by using
web protocols and languages (W3C 2002d).</p>
        <sec id="sec-2-7-1">
          <title>2.1 Web-like Platforms (WLP) and Web-like Applications (WLA)</title>
          <p>Having grounded our initial discussion in terms of the WWW and hypermedia systems, we
now move to extend our scope explicitly to include conceptually “similar” platforms, which
we will call Web-like Platforms (WLP). Applications based on these platforms will be named
Web-like Applications (WLA). By extending the scope of our work in this way:
We can make statements with more general applicability. In general, we expect most of
our future findings in respect of the applicability of methods, techniques and tools for
WLAs to be valid across a range of – possible all – WLPs.</p>
          <p>Alternatively – when we cannot make a general statement across all WLPs – a comparison
of the differences can yield further conceptual refinements to our theoretic model which
we introduce in Section 3 below. As an example, we may consider the transition of an
arbitrary application from a WLP supporting fully-fledged web front ends to one
supporting small mobile devices in multi-channel applications. The impact of user
interface capability on the entire usage structure of an application may be expected to be
significant.</p>
          <p>We see the key discriminating characteristics of Web-like platforms to be:</p>
          <p>Adherence to the client server model (typically with the aim of fostering a separation of
concerns). A client implementation of the user interface of the application accesses a
server, which provides information and/or executes transactions parameterized upon this
information.</p>
          <p>
            The communication between client and server is mediated through a request response
protocol (e.g. HTTP
            <xref ref-type="bibr" rid="ref21 ref22 ref8">(Fielding et al. 1999)</xref>
            ) designed to be transported over wide area
networks and deal with the associated characteristics of such networks (e.g. latency).
Content is logically organized in the form of a hypertext model, i.e. structured in
digraphical (node/hyperlink) form.
          </p>
          <p>
            Documents/Data offered as content or exchanged between separate system components
are described in standardized data description languages, typically markup languages (ex.
HTML
            <xref ref-type="bibr" rid="ref21 ref22 ref8">(Ragget et al. 1999)</xref>
            ).
          </p>
          <p>
            Resources (nodes) are identified by a location in an information space (ex. URI
            <xref ref-type="bibr" rid="ref2 ref7 ref9">(BernersLee et al. 1998)</xref>
            ).
          </p>
          <p>Figure 2 gives examples of platforms having these characteristics: the World Wide Web itself,
the Wireless Application Protocol – which is definitely not only a protocol, but rather a
software platform for mobile devices – (WAP Forum 2002), and VoiceXML (VoiceXML
Forum 2002).</p>
        </sec>
        <sec id="sec-2-7-2">
          <title>2.2 Towards Distributed Applications in General</title>
          <p>Although, for the remainder of the paper, we focus on WLPs and WLAs, we take this
opportunity to extend our definitional structure and further generalize the scope of our future
work.</p>
          <p>We can take one more step towards generality if we move the focus from the implementation
details of the platform towards the distributed applications which are implemented using this
platform – seeing the web (as it is now) or web-like platforms (as defined above) as just one
way of implementing them. The implications of this generalization are:
•
•
•</p>
          <p>By considering a broader range of application we can either make more general
statements (if the features are common across different platforms) or work out the
differences. This newly gained knowledge about platforms and their characteristics can
help us to further develop our contingency based approach.</p>
          <p>We can include more approaches. An obvious step is the extension towards non-web-like
platforms for distributed applications. For example we might consider non-web-like
mobile devices as front-ends. In addition, we could try to also address the specialties of
multi-channel applications, i.e. applications with several front-ends, some web-like some
not.</p>
          <p>The most significant difficulty is that we must consider how the Web will evolve in the
future. New application platforms are evolving which includes principles and
technologies of both traditional software development approaches (desktop applications)
and internet/web technologies (see Figure 3). Examples can be seen in recent
developments surrounding Java and Microsoft's .NET initiative. Irrespective of whether
we can expect a coalescence of platforms (Web and traditional desktop platforms) or a
spectrum of options, to consider the future development of the Web, we must include
these approaches and technologies.</p>
          <p>Application,</p>
          <p>Use, Benefit
Application</p>
          <p>Model,
Concepts of a</p>
          <p>Platform
Technologies
of a Platform</p>
          <p>Application 1</p>
          <p>Implemented using
Hypermedia
Application</p>
          <p>Model
Nodes +
Links</p>
          <p>General WWW</p>
          <p>Principles Simplicity</p>
          <p>Locations as
Resource</p>
          <p>Identifiers
Implemented using</p>
          <p>Technical WWW</p>
          <p>Principles</p>
          <p>WWW</p>
          <p>Technologies
HTML</p>
          <p>URI
HTTP</p>
          <p>Application 2
Implemented using</p>
          <p>Future XYZ
Application</p>
          <p>Model
Implemented using</p>
          <p>Future XYZ
Technical</p>
          <p>Principles
Future XXZ
Technologies</p>
          <p>Application 3
Implemented using</p>
          <p>Desktop
Application</p>
          <p>Model</p>
          <p>Implemented using
Technologies of
a Desktop OS</p>
          <p>Technical
Principles of
Desktop OS</p>
          <p>Platforms/application models of interest</p>
          <p>Figure 3 – The future development of application platforms</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Sketching a Conceptual Model of Software Development</title>
      <p>Many authors in the methodological literature have suggested a contingent approach to the
selection of systems development method. Our work follows in this tradition and aims to
extend its application to include web-like systems. In order to do so effectively, it is clearly
necessary to identify relevant contingencies – and ultimately to build an orthogonal and
parsimonious but nonetheless complete model to support methodological selection.
We begi n from first principles. In Figure 4, we present, in the form of a simple semantic net,
an illustrative extract of our model of the characteristics of software systems and the contexts
in which they are developed – a model which was initially based in the general software
engineering literature, which we acknowledge to be incomplete (indeed we would argue that
it is necessarily so) and which will remain under continuous development during the life of
our research programme.</p>
      <p>Business
Processes
determines</p>
      <p>Strategy
Figure 4 - Aspects of Software Development (illustrative)
Although the model in Figure 4 is merely an illustrative extract, it is clear that it is already
very complex – and, of course, by virtue of the semantic net forma lism it is both flexible –
allowing us to argue and reason freely about the issues modelled – and also unstructured –
thus forming a rather unsatisfactory foundation for future conceptual development. There are
of course many possible ways to add structure and simplify such a model. Our creative
conceptual work has suggested the approach to simplification and structuring through a
clustering strategy which is illustrated in Figure 5. Descriptions of the clusters, and some
examples of their practical application, follow in Table 1.</p>
      <p>determines Organization</p>
      <p>Figure 5 - Aspects of Software Development (clustered)</p>
      <p>Environment
constraints delivers value</p>
      <p>Value
Tasks</p>
      <p>Artifact
constraints creates (fulfils)
Name
Acknowledged benefit provided by the
artifact
Desired, expected and required features of
the artifact
Software (or software intensive system)
being created for a practical purpose
Systematic procedure used by the creators
for designing and building the artifact
Manners of accomplishing a task especially
using technical processes, methods, or
knowledge
Set of principles and technologies providing
a base for creating and using software
artifacts
A form of implementation of software (or
software intensive systems)
Tools (especially software programs) used
during creation of the artifact</p>
      <p>
        Example
A consulting company and its context
(business processes, social norms,
market in which it operates …)
The staff of the consulting company
The advantage to an individual or
organization of an ability to create and
publish reports
Expectations about the performance
and the functionality of text processing
software
Microsoft Word XP
The OPEN method
        <xref ref-type="bibr" rid="ref13">(Henderson-Sellers
1997)</xref>
        Enterprise Java Beans (EJB) (Sun
Microsystems 2002)
Microsoft Windows XP including the
underlying technologies like COM
        <xref ref-type="bibr" rid="ref17 ref18">(Microsoft Corporation 2002a)</xref>
        ‘Desktop GUI application’ or ‘Web
Application’
Microsoft Visual Studio
Person/organization designing and
producing the artifact, applying the method
      </p>
      <p>The designers and developers of
Word XP
We may now take these 11 clusters and look to simplify still further. We see a strong
conceptual association between ‘Users’ and ‘Environment’; between ‘Requirements’ and
‘Value’; ‘Form of Artifact’ and ‘Platform’ and between ‘Tools’ and ‘Method’ consequently
we can consolidate our analysis by focusing on five clusters, nominally:</p>
      <p>Environment (Users)
Value (Requirements)
Artifact
Creators</p>
      <p>Methods (Tools) + Technologies + Platforms (Form of Artifact)
Referring back to our original semantic net model, we can add some additional semantic
structure – seeing that, four of these clusters (excluding ‘Creators’) can be understood as
forming a layered model where each step represents, in some sense, a step on the ‘Abstract’ to
‘Concrete’ continuum. Figure 6 shows a graphical representation of all five clusters and, in
particular of the four level layering.
Environment</p>
      <p>Users</p>
      <p>Requirements
constraintussed by
Value, Benefit
Figure 6 - Aspects of Software Development
Consulting</p>
      <p>Company
constraintsused by
Editing and
Publishing</p>
      <p>Reports
constraintscreates
Text Processing</p>
      <p>Software
OO Software
Development
Developers of
the Software
It is interesting to observe that a layer may be seen to constrain and, in turn, be satisfied by,
the immediately underlying layer. Figure 7 offers an application of this model to a consulting
company (Environment) which needs the facility to edit and publish reports (Value). This
facility is provided by a text processing application (Artifact) being created as a GUI
Application (Form of Artifact) running on top of a desktop operating system (Platform).
Conversely, the services of the operating system are used by the text processing software,
which in turn provides the facility of editing and publishing reports. This facility again is of
use to the consulting company.</p>
      <p>The constraints-relationships can, however, be seen to be bidirectional: while a desired
artifact (planned text processing software) constrains choices for the underlying
form-ofartifact (GUI application suitable, web application unsuitable) and the related platform
(desktop operating system suitable, web unsuitable); a given platform constrains the possible
forms-of-application which can run and these, in turn, constrain the applications which can be
implemented.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Sketching a Conceptual Model of Web Engineering</title>
      <p>In the preceding section, we structured the area under discussion by identifying some aspects
of software and the relationships between them. We now extend the model by explicitly
contrasting software in general and web-like applications – illustrated by the model shown in
Figure 8.</p>
      <p>Figure 8 presents the contrast between “general software” and “web-like software” as a
peerto-peer relationship – but that is, in fact slightly misleading or, at the least, limiting. In fact,
web-like applications form merely one example within a range of possible kinds of software,
each of which can be thought of as a sub-class of general software. Rather than being
peer-topeer, then, the relationship is a generalization/specialization relationship. Although our
interest is restricted to web-like applications, we have developed the model which supports
our analysis in a way which will also support researchers concerned about other classes of
software. At each layer of our model (and in respect of the Creator cluster) we seek to
describe a useful classification scheme. These ideas are captured in Figure 9.
ityoanb isonA ClaEsnsv1. of
iic n
f e
lssa iDm
C</p>
      <p>Class 2 of</p>
      <p>Env.</p>
      <p>Classification by
Dimension B</p>
      <p>Class 2 of</p>
      <p>Values
Class 1 of</p>
      <p>Values
Classification by</p>
      <p>Dimension D
y
itoanb isonC
iic n
f e
lssa iDm
C
liiiftsscyaoanbC iisneonEDm CAlartsifsa2ctAosCfrltaiofsafsct1s</p>
      <p>Classification by</p>
      <p>Dimension F
ityoanb isonG CMlaesthso1dso.f
fc en
ii
lssa iDm
C</p>
      <p>Class 2 of</p>
      <p>Methods.</p>
      <p>Classification by</p>
      <p>Dimension H
y
b I
iton ion
iifca sen
lssa iDm
C</p>
      <p>Class 2 of</p>
      <p>Creators
Class 1 of</p>
      <p>Creators
Classification by
Dimension J
We may now extend our analytic model, to further support investigating the relationship
between layers through a structure for reasoning about the relationships between the
classification structures from layer to layer. We could, for example, consider that a certain
environment category (consul ting company) indicates that certain values are required
(preparing and publishing reports) or that a certain value (ability to process images) requires a
certain type of software (image editing software), which in turn constraints the choice of
software platforms (desktop operating system suitable, web unsuitable).</p>
      <p>This knowledge about the correlations between the various levels could be valuable since it,
in principle, opens up the chance to formulate recommendations. The existence of a
particular occurrence at the environment and/or value level can then lead to a suggestion of
the form of an artifact or the selection of an appropriate software development approach from
our set of available Methods, Technologies and Platforms (Figure 10).</p>
      <sec id="sec-4-1">
        <title>Recommendation which</title>
      </sec>
      <sec id="sec-4-2">
        <title>Method/Technologies/Platform should by used Classification of Methods,</title>
        <p>Finally, it is necessary to consider the cluster “Creators” which clearly does not fall into the
concept of a layered model as we have discussed it in this section of the paper. It is perhaps
easiest to see the characteristics of the Creator of the software as orthogonal to the layered
model and as suggesting a chain of logic impacting on the methodological choice, largely
independent of the relationship which we have suggested exists linking the
problem-incontext and the solution strategy. The extent to which one might expect to find the existence
of a level of homogeneity within the class of creators of a specific class of software and a
distinction between the classes of creators of differing classes of software remains unclear and
is currently the subject of further research.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. A Preliminary Application of the Conceptual Model</title>
      <p>We are now in a position to use our analytic model to structure an examination of the
relationship between web-like applications and conventional software. Appropriately for a
requirements engineering workshop, we focus our attention, in this paper, primarily on the
environmental layer and the interface between the environmental and value layers of our
model (see Figure 11). Notwithstanding this primary focus, however, some of the issues we
discuss have impact beyond these layers and we do sketch out a pursuit of these issues.</p>
      <sec id="sec-5-1">
        <title>5.1 Exploring the Context</title>
        <p>The first issue on which we focus relates to the potential user base for the application – at an
individual and collective level – and to the relationship between the “participants” in the
application. The relationships between the participants in conventional software are typically
well defined. Consider the following basic categories of conventional software:
The client for an intra-organisational software development is typically considered to be “the
organization”. End users of such software relate both to each other and to the organization as
a whole in a way which is generally consistent with the organizational relationships which
exist beyond the scope of the system. End users are, in general, identifiable, relate to the
system categorically (rather than individually), and are subject to political pressure to
conform to organizational norms and expectations.</p>
        <p>The clients for inter-organisational software (such as systems supporting supply chain
management, logistics, collaborative engineering) development may, by simple extension, be
considered as the collaborating organizations. We anticipate the relationships between
organizations mediated by the system to be relatively predictable. Within each organization,
we might reasonably expect users to share the characteristics of the users of
intraorganisational systems – that is to behave in a relatively predictable ma nner commensurate
with their organizational behaviour more generally.</p>
        <p>Conventional packaged software systems share similar user-base characteristics. We can,
perhaps most easily see this when we consider the organizational change management task
associated with the installation of an ERP package such as SAP R3. Irrespective of any
“tuning” of the software undertaken at the organizational level, it always remains necessary to
“coerce” end users of the system to behave in respect of the system in a specific organized
and predictable way.</p>
        <p>Packaged software for the individual (e.g. Microsoft Word) forms a final category of
conventional software. Certainly, organizational standardization policy can be a basis for an
organizational decision to coerce conformant intra-organisational user behaviour.
Nonetheless, the potential user base extends beyond any individual organization (indeed, it
extends to non-organisational use).</p>
        <p>One characteristic shared in installations of all these categories of software are relatively high
switching costs. In the first three cases these costs are clear. In the fourth case, it is
interesting to contrast use of a traditional software application against that of a web
application:
•</p>
        <p>In the first case you must identify, procure (including payment and delivery), install,
configure and finally run and use the software.
•</p>
        <p>In the second case you must identify and possibly pay for a web application –
immediately after that it can be used.</p>
        <p>For example, compare signing in for an online messaging service like Yahoo! Mail to the
purchase, installation and usage of a desktop messaging application like Microsoft Outlook.
The setup costs (or the costs for switching between alternatives) are, in general, lower for web
sites and web applications than for traditional desktop applications (here we ignore issues
associated with purchase price). Reasons for the cost reduction include:
•
•
•</p>
        <p>Web applications are already installed, simply waiting for additional users.</p>
        <p>Web applications deliberately restrict their style in ways which are consequent on the
decision to use web technologies (e.g. only user interfaces which can be described by
HTML are supported).</p>
        <p>The use of open standards based mechanisms (HTML, HTTP, URI, …) enhances the
substitutability of systems.</p>
        <p>
          Reduced switching costs significantly impact the relationship between the user of software
and the developer. Insignificant switching costs and high substitutability form a basis for an
alternative software business model – suggesting a transition from software purchase towards
pay-per-use
          <xref ref-type="bibr" rid="ref5">(Cisco Systems 2002)</xref>
          .
        </p>
      </sec>
      <sec id="sec-5-2">
        <title>5.2 User Involvement in Informal/Unstructured Distributed Applications</title>
        <p>In some cases, WLAs may simply replace traditional software applications – the user
interface may be built using differing technologies, but the relationship between the
application and its Environment remains traditional. In such a case, the client, the developers
and the users might be members of the same or directly cooperating organizations. While
such applications are subject to analysis through the lens of our model, they are uninteresting
to discriminate at the analytic level which forms the focus of this paper. Rather, we
concentrate on those WLAs which, due to the platform, form an extended opportunity for
software support.</p>
        <p>
          There is an opportunity for WLAs to have a more distributed, global nature than do traditional
software applications. Developers and users are organizationally independent and
geographically distributed. As examples, consider public, global messaging services as they
are offered by Yahoo! or Microsoft
          <xref ref-type="bibr" rid="ref17 ref18">(Microsoft Corporation 2002b; Yahoo! 2002)</xref>
          .
Technically, the client platform is unknown and uncontrollable. It is intrinsic to the web that
differing users have differing technical setups (browser software, plug-ins). Assumptions
about available resources (display size, fonts) are not possible. Perhaps, more significant,
users themselves are unknow n and their behaviour unpredictable. Users are in charge of
navigation. They may leave a web site (or exit a web application) whenever they wish. As
we have discussed, switching costs are low and alternatives just a click away. User loyalty
consequently becomes an important challenge for providers of web applications
          <xref ref-type="bibr" rid="ref19">(Nielsen
1997)</xref>
          . As a result of the organizational and geographical distance, collateral support
measures (introductory training, user education, help desk) are also harder to implement.
The challenges of organizational detachment and global distribution point to the importance
of user involvement to builders of WLAs:
•
        </p>
        <p>It is widely accepted, one might even say it is unarguably the case, that user participation
is beneficial in systems development generally.
•</p>
        <p>Analyzing user behaviour, not just in theory (through e.g. interviews) but in practice can
help specification of better, more acceptable – even user-seductive – system. Flaws in, for
example, the user interface can be found and rectified and positive features can be
recognized. This allows learning for the future, for example by identifying successful
design patterns for forthcoming systems.</p>
        <p>After preliminary requirements have been gathered, provisional design decisions are made
and the first versions of the system built, praxis-based analytical methods become vital. We
must differentiate between analysis during build time and during usage time.
•
•</p>
        <p>Analysis during build time – In conventional software development, prototypes can be
tested by a sample of users throughout the various cycles of development prior to
completion of the final system. A similar strategy can be adopted in WLA development,
but there are significant additional difficulties in sampling the potential user-base
satisfactorily – these difficulties are both practical (due to geographic diffusion) and
theoretic (often it not possible to identify what constitutes the potential user-base).
Analysis during usage time – In comparison to conventional software it is relatively easy
to analyze the real life usage of web applications after they have been deployed –
irrespective of global dispersion.</p>
        <p>
          It has been convincingly argued that it is dangerous to rely on the expressed opinions and
memories of the users, empirical analysis of their actions is necessary
          <xref ref-type="bibr" rid="ref20">(Nielsen 2001)</xref>
          .
However, empirical usage data is automatically recorded by all major web servers. Data
collected includes information about the client (IP address, browser software) and all
requested resources (e.g. pages, images…). Simple usage data (hits, page views) can be
derived directly. Through such additional information as the referrer field in the web server
log and session identification mechanisms (e.g. cookies, session IDs) one can then isolate
information such as click streams and user sessions. These data can then be analyzed for
more advanced usage patterns by employing the methods of data mining. Related research
activities can be summarized under the label “Web Usage Mining”
          <xref ref-type="bibr" rid="ref24">(Srivasta et al. 2000)</xref>
          . An
additional option is the analysis in comb ination with user/customer profiles.
For the future one can expect that technological developments will continue to have infl uence
in the requirements and usability area. For example, a growing spectrum of front-ends for a
system such as mo bile devices and voice interfaces should be considered. The challenge of
dynamic user expectations becomes even greater when considers offering not just a WLA, but
rather an application offered (appropriately in each case) over multiple WLPs (multi-channel
WLA)
          <xref ref-type="bibr" rid="ref4">(Botterweck 2000)</xref>
          .
        </p>
        <p>
          There are, of course, numerous activities during the development process in which one hopes
to involve end users. In the early stages this predominantly means the gathering and
validation of requirements
          <xref ref-type="bibr" rid="ref2 ref7 ref9">(Fuccella et al. 1998)</xref>
          . Other researchers are studying
environments where designers and users together can interactively draw up the future system
          <xref ref-type="bibr" rid="ref16">(Klemmer et al. 2001)</xref>
          . The developer of a distributed WLA for a potentially global user-base
faces a range of difficulties which the selected development method must address – one
specific issue is that many tools (such as interviews, focus groups) require what we may term
“broadband personal communication”. It is clear, therefore, that the constraints on effective
communications between the developer and the user group at both individual and group level
form an important characteristic on which the choice of an effective development
methodology is dependent.
        </p>
      </sec>
      <sec id="sec-5-3">
        <title>5.3 Technical Considerations</title>
        <p>
          We said earlier that our discussion would necessarily extend beyond the top two layers of our
analytic model. It is clear that the fundamental character of the underlying WLP constrains,
in a range of ways, the possibilities for satisfying a potential user base. In contrast to desktop
applications, a web application must deal with an unknown (certainly imperfectly known)
user base and the characteristics of global wide area networks – characteristics which include:
•
•
•
•
•
latency (signal dispersion plus delays in networking components)
risk of disconnection or packet loss
the trade-off between bandwidth and costs
uncontrollably heterogeneous bandwidth across the system
a public and therefore insecure infrastructure
Consequently, we must pay greater attention to certain quality criteria we expect from
software
          <xref ref-type="bibr" rid="ref15">(ISO 1991)</xref>
          such as reliability, robustness and security.
        </p>
        <p>
          These challenges have to be dealt with through the design of the application platform and of
the application itself. One example of such mechanisms is the request-response-style
communication between a web server and a web client via HTTP
          <xref ref-type="bibr" rid="ref21 ref22 ref8">(Fielding et al. 1999)</xref>
          intrinsic to the world wide web and which is suitable for the global communication between
loosely coupled components of an hypermedia system.
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6. Conclusion</title>
      <p>In this paper, we have introduced, from first principles, our preliminary work in developing
an analytic framework which allows us to contrast the problem of developing web-like
applications (WLAs) against our accumulated understanding of software systems
development. The analytic framework will form a basis for the development of a contingent
approach to selection of methods, tools and techniques, the n integrating these within a
suitable methodological process, for WLA development. This approach allows us to make
use of our existing understanding of software engineering methodology, while alleviating the
danger of relying on the consequences of assump tions within that literature which do not
hold, or which hold imperfectly, in the domain of WLA development.</p>
      <p>We proceeded to illustrate how our approach could provide structure for the analysis of the
characteristics of the potential user base of a WLA vis-à-vis the user base for a conventional
software system. This analysis suggests additional and differently weighted criteria for the
selection of tools and methods of requirements engineering and other user interaction for
WLAs. Work continues to define the model in more detail – and, in particular, to further
develop the dimensions of classification and demonstrate the logical inter-layer linkages.</p>
    </sec>
    <sec id="sec-7">
      <title>References</title>
      <p>Sun Microsystems (2002): Enterprise JavaBeans 2.1. http://jcp.org/jsr/detail/153.jsp
VoiceXML Forum (2002): Get the Spec - VoiceXML Specifications.</p>
      <p>http://www.voicexml.org/spec.html
W3C (2002a): Amaya - W3C's Editor/Browser. http://www.w3.org/Amaya/</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Berners-Lee</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          (
          <year>1990</year>
          )
          <article-title>: Original Design Issues, W3C</article-title>
          . http://www.w3.org/DesignIssues/
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Berners-Lee</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          , et al. (
          <year>1998</year>
          ):
          <fpage>RFC2396</fpage>
          --
          <string-name>
            <surname>Uniform Resource Identifiers (URI) -- Generic</surname>
            <given-names>Syntax</given-names>
          </string-name>
          , The Internet Society. http://www.ietf.org/rfc/rfc2396.txt
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Bieber</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2000</year>
          ): Hypertext &amp; Hypermedia: Definition,
          <source>Encyclopedia of Computer Science (4th Edition)</source>
          , pp.
          <fpage>799</fpage>
          -
          <lpage>805</lpage>
          , Hampshire,
          <string-name>
            <surname>UK</surname>
          </string-name>
          , Nature Publishing Group. http://www.cs.njit.edu/~bieber/pub/cs-encyclopedia/hypertext.html
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Botterweck</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2000</year>
          ):
          <article-title>Einsatz von XML und WAP zur Realisierung strukturierter</article-title>
          , ubiquitärer Informationsdienste, Koblenz, Universität Koblenz. http://www.unikoblenz.de/~botterwe/publications/Botterweck2001_SUInfodienste_PrintQualityA4.pdf
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <given-names>Cisco</given-names>
            <surname>Systems</surname>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>: Application Hosting Services: Opportunities for Service Providers (Business Case)</article-title>
          . http://www.cisco.com/warp/public/cc/so/cuso/sp/webhost/aphs_bc.htm
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Conklin</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1987</year>
          ):
          <article-title>Hypertext: An introduction and survey</article-title>
          ,
          <source>IEEE Computer</source>
          , Vol.
          <volume>20</volume>
          , No.
          <issue>9</issue>
          , pp.
          <fpage>17</fpage>
          -
          <lpage>41</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Fernández</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , et al. (
          <year>1998</year>
          )
          <article-title>: Catching the boat with Strudel: experiences with a Web-site management system</article-title>
          ,
          <source>International Conference on Management of Data and Symposium on Principles of Database Systems</source>
          , pp.
          <fpage>414</fpage>
          -
          <lpage>425</lpage>
          , Seattle, Washington, United States. http://doi.acm.
          <source>org/10</source>
          .1145/276304.276341
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Fielding</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , et al. (
          <year>1999</year>
          )
          <article-title>: RFC2616: Hypertext Transfer Protocol -</article-title>
          -
          <source>HTTP/1</source>
          .1, The Internet Society. http://www.ietf.org/rfc/rfc2616.txt
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Fuccella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , et al. (
          <year>1998</year>
          )
          <article-title>: Web Site User Centered Design: Techniques for Gathering Requirements and Tasks, ITG Newsletter</article-title>
          . http://internettg.org/newsletter/june98/user_requirements.html
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Gnaho</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2001</year>
          ):
          <article-title>Web-Based Information Systems Development - A User Centered Engineering Approach</article-title>
          , Web Engineering - Managing
          <source>Diversity and Complexity of Web Application Development (LNCS2016)</source>
          , Berlin, Germany, Springer. http://link.springer.de/link/service/series/0558/bibs/2016/20160105.htm
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>Google</surname>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>: Google Toolbar Features</article-title>
          . http://toolbar.google.com/button_help.html
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>Halasz</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Schwartz</surname>
          </string-name>
          (
          <year>1994</year>
          ):
          <article-title>The Dexter hypertext reference model</article-title>
          ,
          <source>Communications of the ACM</source>
          , Vol.
          <volume>37</volume>
          , No.
          <issue>2</issue>
          , pp.
          <fpage>30</fpage>
          -
          <lpage>39</lpage>
          . http://doi.acm.
          <source>org/10</source>
          .1145/175235.175237
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Henderson-Sellers</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          (
          <year>1997</year>
          )
          <article-title>: OPEN: Object-oriented Process, Environment and Notation - The first full lifecycle, third generation OO method, Handbook of Object Technology, Boca Raton</article-title>
          , Florida, United States, CRC Press. http://www.open.org.au/Publications/Documents/crcchap.pdf
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <surname>Isakowitz</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          , et al. (
          <year>1995</year>
          )
          <article-title>: RMM: A Methodology for Structured Hypermedia Design</article-title>
          ,
          <source>Communications of the ACM</source>
          , Vol.
          <volume>38</volume>
          , No.
          <issue>8</issue>
          , pp.
          <fpage>34</fpage>
          -
          <lpage>44</lpage>
          . http://doi.acm.
          <source>org/10</source>
          .1145/208344.208346
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>ISO</surname>
          </string-name>
          (
          <year>1991</year>
          )
          <article-title>: ISO/IEC 9126 Information technology -- Software product evaluation -- Quality characteristics and guidelines for their use</article-title>
          ,
          <source>Geneva</source>
          , Switzerland, International Organization for Standardization, International Electrotechnical Commission.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <surname>Klemmer</surname>
            ,
            <given-names>S. R.</given-names>
          </string-name>
          , et al. (
          <year>2001</year>
          ):
          <article-title>The Designers' Outpost: A Tangible Interface for Collaborative Web Site Design</article-title>
          ,
          <source>CHI Letters, The 14th Annual ACM Symposium on User Interface Software and Technology: UIST 2001</source>
          , Vol.
          <volume>3</volume>
          , No.
          <issue>2</issue>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <given-names>Microsoft</given-names>
            <surname>Corporation</surname>
          </string-name>
          (
          <year>2002a</year>
          ):
          <article-title>COM: Delivering on the Promises of Component Technology</article-title>
          . http://www.microsoft.com/com/
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <string-name>
            <given-names>Microsoft</given-names>
            <surname>Corporation</surname>
          </string-name>
          (
          <year>2002b</year>
          )
          <article-title>: MSN Hotmail</article-title>
          . http://www.hotmail.com/
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <string-name>
            <surname>Nielsen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1997</year>
          )
          <article-title>: Loyalty on the Web, Jacob Nielsen's Alert Box</article-title>
          . http://www.useit.com/alertbox/9708a.html
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <string-name>
            <surname>Nielsen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>2001</year>
          )
          <article-title>: First Rule of Usability? Don't Listen to Users, Jacob Nielsen's Alert Box</article-title>
          . http://www.useit.com/alertbox/20010805.html
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          <string-name>
            <surname>Ragget</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , et al. (
          <year>1999</year>
          )
          <article-title>: HTML 4</article-title>
          .01 Specification, World Wide Web Consortium. http://www.w3.org/TR/html401/
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          , et al. (
          <year>1999</year>
          )
          <article-title>: Improving Web Information Systems with Navigational Patterns</article-title>
          ,
          <source>Proceedings of the 8th International Conference on the World Wide Web</source>
          , pp.
          <fpage>589</fpage>
          -
          <lpage>600</lpage>
          , Toronto, Canada. http://www8.org/w8-papers
          <string-name>
            <surname>/</surname>
          </string-name>
          5b-hypertextmedia/improving/improving.html
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , et al. (
          <year>1996</year>
          ):
          <article-title>Systematic hypermedia design with OOHDM</article-title>
          ,
          <source>Proceedings of the seventh ACM conference on Hypertext</source>
          , pp.
          <fpage>116</fpage>
          -
          <lpage>128</lpage>
          , Bethesda, Maryland, United States. http://doi.acm.
          <source>org/10</source>
          .1145/234828.234840
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          <string-name>
            <surname>Srivasta</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , et al. (
          <year>2000</year>
          )
          <article-title>: Web Usage Mining: Discovery and Applications of Usage Patterns from Web Data</article-title>
          ,
          <source>SIGKDD Explorations</source>
          , Vol.
          <volume>1</volume>
          , No.
          <issue>2</issue>
          , pp.
          <fpage>12</fpage>
          -
          <lpage>23</lpage>
          . http://viror.wiwi.unikarlsruhe.de/webmining/bib/pdf/Srivastava2000.pdf
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>