![](bg2.png)
SOAP /
HTTP
BPEL
XML
WSDL
Behavior
Behavior
C horeog rap hy
C horeog rap hy
D at a
D at a
F u n c t ion s
F u n c t ion s
I n t erf ac e
I n t erf ac e
Behavior
Behavior
C horeog rap hy
C horeog rap hy
D at a
D at a
F u n c t ion s
F u n c t ion s
I n t erf ac e
I n t erf ac e
C om m u n ic at ion
C om m u n ic at ion
Web Service A Web Service B
Figure 1: Business processes and Web services
The communication between these subprocesses (via
a standardized interface) realizes the coordination of
the distributed process. Figure 1 sketches the map-
ping between the business terms and the Web service
technologies.
For each aspect of a distributed business process
the Web service technology stack provides an ade-
quate technology, as shown in Figure 1. The core lay-
ers cover the technical aspects: data are represented
by XML documents, the functionality and the inter-
face are defined by help of the Web service Descrip-
tion Language WSDL and the communication uses
standardized protocols, e. g. the Simple Object Access
Protocol SOAP .
The internal structure of a process and the organi-
zational aspects are covered by the emerging layers.
There are different proposals towards a specification
language. We focus on the Business Process Exe-
cution Language for Web services BPEL4WS (BEA
et al., 2002). In combination with the core layers,
BPEL4WS allows to model a business process pre-
cisely, such that the model can be directly executed
by the middleware. Moreover, an abstract model of
the process can be expressed by help of BPEL4WS,
too. Such an abstract model is published to the reposi-
tory such that a potential service requestor can decide,
whether or not that service is compatible to his own
component.
Although the technological basement is given,
there is a lot of open questions: Do two Web ser-
vices fit together in a way, that the composition yields
a deadlock-free system? – the question of compati-
bility. Can one Web service be exchanged by another
within a composed system without running into prob-
lems? – the question of equivalence. Can we reason
about the quality of one given Web service without
considering the environment it will by used in? In this
paper we present the notion of usability – our quality
criterion of a Web service. This criterion is intuitive
and can be easily proven locally. Moreover, this no-
tion allows to answer the other questions mentioned
above.
1.3 Solution
The current paper is part of larger framework for mod-
eling and analyzing distributed business processes by
help of Web services (Martens, 2004). This frame-
work is based on Petri nets. Petri nets are a well
established method for distributed business processes
(van der Aalst, 1998b; van der Aalst, 1998a). As we
will show, Petri nets are also an adequate modeling
language for Web services.
Based on this formalism, we are able to discuss
and define usability of a Web service – our notion
of a quality criterion, and further properties. Due to
our abstract view on behavior and structure of Web
services, the results presented here can be adopted
easily to every concrete modeling language, e. g.
BPEL4WS (Martens et al., 2004).
The remaining paper is structured as follows: Sec-
tion 2 presents very succinctly our modeling ap-
proach. Section 3 establishes the core section of this
paper: Applied to an example, we present the algo-
rithm to verify usability. Besides the verification of
usability, the algorithm generates useful information
for re-engineering. Section 4 presents our approach.
Finally, Section 5 gives an overview of the methods
that belong to our framework.
2 MODELING
The following section presents our modeling ap-
proach. To deal with the problems of distributed busi-
ness processes in a generic manner, we use Petri nets.
Thus, we give a short introduction to Petri nets and
show how to model a Web service. Afterwards we
deal with the composition of those models and dis-
cuss their essential properties.
2.1 Modeling Web services
A distributed business process comes into existence
because of composition of Web services. Each of
these Web services represents a local subprocess. Fig-
ure 2 shows the model of such two subprocess – the
Web service of a travel agency and the Web service of
a customer.
A business process consists of a self-contained set
of activities which are causally ordered. A Petri net
N = (P, T, F) consists of a set of transitions T
(boxes), a set of places P (ellipses) and a flow rela-
tion F (arcs) (Reisig, 1985). A transition represents
an active element, i. e. an activity (e. g. Get Itinerary).
A place represents a passive element, i. e. a state be-
tween activities, a resource or a message channel (e. g.
Itinerary).
ICEIS 2004 - INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION
420