[an error occurred while processing this directive]
[an error occurred while processing this directive]
The continuous merging of numerous local computer networks has
resulted in an open distributed system. In this environment
services are freely offered and requested. New service providers are
constantly emerging and advertising their products in this electronic
market place, while others are leaving the system. The resulting
fluctuation of service offers adds to the complexity of an open
distributed system. It is impossible for a user to gain a complete
overview of the services currently offered. The dynamics and size of
such an environment implies, that the knowledge about its structure
decreases proportional with the increase in time.
Several institutions work on technology independent standards which
define frameworks for open distributed systems. For example the
International Organization for Standardization (ISO) and the
International Telecommunication Union, Telecommunication
Standardization Sector (ITU-T) have developed the Reference
Model for Open Distributed Processing (RM-ODP) (see [ODPRM1],
[ODPRM2], [ODPRM3] and [ODPRM4]). The RM-ODP describes an architecture
which supports the distribution, interoperability and portability of
software components. Furthermore the RM-ODP demands the support of a
trading function which assists in the search for services
(see [ODPTRADER]). All participating parties in an open distributed
system assume the roles of service providers and service
requesters, which have no a priori knowledge about each
other. In particular they are not linked statically to each other, but
rather dynamically when the need arises.
In the RM-ODP the trading of services is based on a mediation
process. During the mediation of services another party assumes
the role of a trader, whose task is to match service offers
and requests (see figure 1). According to the RM-ODP a mediation
process is divided into several steps. First a service provider
exports its service offer with the trader (1). At a later point in
time a service requester tries to import a particular service (2). If
the trader finds a matching service offer, which has previously been
exported, it responds a reference to the service requester pointing to
the appropriate provider (3). After a successful mediation process the
service requester and provider are bound to each other and start to
Figure 1: Interactions during a mediation process.
Within the Internet so-called search engines perform the task of
service trading (see [BOWMAN94]). The difference with the
aforementioned mediation process is, that a search engine
automatically scans the Internet for potential service offers in order
to build up a service database. Step (1), as described above, is not
applicable in this case. Search engines represent ad-hoc
solutions to the general problem of service trading. The quality of
the mediated services decreases proportionally with the increasing
amount of services present in the Internet. The rapid growth of the
Internet and the resulting degradation in the performance of search
engines have already been topics in various non-scientific articles
(see [SIEGELE96] or [WANKE96]).
The notion of a type system is essential for the discussion
of a mediation process. For one thing a type system defines a type
specification language, which allows the specification of services in
open distributed systems (see [PUDER96]). Furthermore a type system
defines rules, which allow the association of service offer and
request, both represented as type specifications. The type
specification language of the RM-ODP focuses on operational aspects of
a type specification, i.e. how a service is accessible from a
programming point of view. Within a global system, where programmers
as well as application users are exposed to the mediation process, the
selection of type specifications is of equal importance. This
emphasizes the need for semantic service type specifications, which
allow the description of services with identical operational
interfaces but different qualitative characteristics.
2. Goals of this thesis
In this thesis the service trading in open distributed systems is
investigated. The role, that a type system plays during the mediation
process, is of particular interest. In the following the goals of this
thesis are presented. The first goal is to give a formal definition of
a type system. On the basis of this definition, the association of
service offers and requests can be described in a formal notation.
Then the requirements of service trading in open distributed systems
are being formulated. As will be shown, the mediation process
according to the RM-ODP is insufficient in several aspects. This
leads to certain requirements for type systems in open distributed
systems. The evaluation of existing type systems will show, that
these do not meet those proposed requirements.
The main goal of this thesis is the definition of new type systems
which meet the demands for service trading in open distributed
systems. A declarative and a knowledge-based type system will be
introduced. These type systems allow service specifications on
different levels of abstraction (i.e. from a programmer's and an
application user's point of view). It will be shown that a knowledge
representation technique, which serves as a basis for the
knowledge-based type system, is capable of representing operational
Another goal of this thesis is to show that a knowledge-based type
system fulfills the requirements of the RM-ODP as well as the
pragmatic needs for the service mediation in the Internet. In that
sense a knowledge-based type system serves as a unifying theory which
embraces the different notions of service mediation in the RM-ODP and
the Internet. Beside these theoretical aspects, the practical
realizability will be demonstrated as the last goal. The architecture
of a prototype will be described, which shows the feasibility of a
knowledge-based service mediator.
3. Structure of this thesis
This thesis in divided into ten chapters. Beginning with the
foundations of service trading in open distributed system, the
requirements for type systems are examined. The main part of this
thesis introduces new approaches in the definition of type systems
which meet those requirements.
- Chapter 2 introduces the necessary prerequisites needed for the
scope of this thesis. The object model is described and a definition
of the term ``type system'' is given.
- Chapter 3 presents a definition of an open distributed system
which also implies the necessity of service mediation in such
environments. The role that a type system plays during a mediation
process will be shown. The main result of this chapter are the
requirements, which type systems in open distributed
systems have to adhere to.
- Chapter 4 provides an overview of existing type systems, which
are being used today. A detailed description of those type systems
is given, as well as an evaluation according to the requirements
proposed in the previous chapter.
- Chapter 5 gives a formal specification of the mediation process
in open distributed systems based on the formal specification
language Z. The specification, as presented in this thesis, is a
refinement of the one presented in the RM-ODP.
- Chapter 6 introduces a novel type system, which fulfills the
requirements for type systems in open distributed systems. This
so-called declarative type system is based on the definition of a
type system according to the RM-ODP. In contrast to this
definition, the declarative type system has a type specification
language which allows semantic service specifications based on the
theory of declarative semantics.
- Chapter 7 extends the type system introduced in the preceding
chapter to allow service type specifications on different levels of
abstraction. This so-called knowledge-based type system makes use
of a knowledge representation technique called conceptual graphs,
which are being used as service type specifications.
- Chapter 8 describes the architecture of a knowledge-based
trader. Its functionality is determined by the knowledge-based type
system presented in the previous chapter. In this chapter several
possible applications of a knowledge-based trader are presented.
- Chapter 9 presents a prototype which is implemented according
to the architecture proposed in the preceding chapter. This chapter
describes the structure of the prototype, its design goals and the
tools that were used for the actual implementation.
- Chapter 10 summarizes the results of this thesis. An evaluation
of those results is presented as well as an outlook for future work.
||C. Bowman et al.
Scalable Internet resource discovery: research problems and
Communications of the Association for Computing Machinery,
37(8):98-107, August 1994.
||ITU.TS Recommendation X.901 | ISO/IEC 10746-1: Basic Reference
Model of Open Distributed Processing Part 1: Overview and Guide
to the use of the Reference Model, July 1994.
||ITU.TS Recommendation X.902 | ISO/IEC 10746-2: Basic Reference
Model of Open Distributed Processing Part 2: Descriptive Model,
||ITU.TS Recommendation X.903 | ISO/IEC 10746-3: Basic Reference
Model of Open Distributed Processing Part 3: Prescriptive
Model, February 1994.
||ITU.TS Recommendation X.904 | ISO/IEC 10746-4: Basic Reference
Model of Open Distributed Processing Part 4: Architectural
||ODP Trading Function, ITU/ISO Committee Draft Standard ISO/IEC DIS13235 Rec.
X.9tr, May 1995.
||A. Puder and K. Geihs.
System support for knowledge-based trading in open service markets.
In 7th ACM SIGOPS European Workshop, Connemara, Ireland,
Alles in Register.
Die Zeit, Nr. 19, page 78, May 1996.
Allein im Netz unterwegs.
Süddeutsche Zeitung, Nr. 134, page 33, June 1996.