[an error occurred while processing this directive] [an error occurred while processing this directive]

Type Systems for the Trading of Services in Open Distributed Environments

Ph.D. Thesis, University of Frankfurt, 1997

Extended abstract:

1. Motivation

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 interact (4).

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 interfaces.

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.

References:

[BOWMAN94] C. Bowman et al. Scalable Internet resource discovery: research problems and approaches. Communications of the Association for Computing Machinery, 37(8):98-107, August 1994.
[ODPRM1] 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.
[ODPRM2] ITU.TS Recommendation X.902 | ISO/IEC 10746-2: Basic Reference Model of Open Distributed Processing Part 2: Descriptive Model, 1994.
[ODPRM3] ITU.TS Recommendation X.903 | ISO/IEC 10746-3: Basic Reference Model of Open Distributed Processing Part 3: Prescriptive Model, February 1994.
[ODPRM4] ITU.TS Recommendation X.904 | ISO/IEC 10746-4: Basic Reference Model of Open Distributed Processing Part 4: Architectural Semantics, 1994
[ODPTRADER] ODP Trading Function, ITU/ISO Committee Draft Standard ISO/IEC DIS13235 Rec. X.9tr, May 1995.
[PUDER96] A. Puder and K. Geihs. System support for knowledge-based trading in open service markets. In 7th ACM SIGOPS European Workshop, Connemara, Ireland, September 1996.
[SIEGELE96] L. Siegele. Alles in Register. Die Zeit, Nr. 19, page 78, May 1996.
[WANKE96] O. Wanke. Allein im Netz unterwegs. Süddeutsche Zeitung, Nr. 134, page 33, June 1996.
[an error occurred while processing this directive]