Foundations for Semantically Enhanced Component Trading: A Component Type Model

Sotirios Terzis

Doctor of Philosophy Thesis

Department of Computer Science

Trinity College Dublin

ABSTRACT

Emerging models for enterprise organisations like the virtual enterprise model require enterprise information systems that are able to support increasing levels of flexibility and dynamism. The only way in which these systems can provide the required flexibility and dynamism is by following a component-based development approach. According to this approach the enterprise information system comprises of a set of components, which can be dynamically reconfigured and recomposed into new configurations. At the heart of its architecture a component-based enterprise information system requires a service that is able to select and locate appropriate components in order to form the new configurations. This thesis introduces the notion of Semantically Enhanced Component Trading (SECT), and proposes it as an appropriate basis for such a service.

SECT enhances the notion of service trading widely used in current large scale networked and distributed systems, by introducing to the basic trading process a component type model that is based on semantic notions of component types and component conformance. This component type model is the primary focus of this thesis. Its introduction is the outcome of an in depth analysis of component software and service location and discovery protocols for networked and distributed systems combined with ideas from component retrieval in software reuse and object interoperability. In contrast to type models for service trading, the type model for SECT requires type definitions that include explicit description of type behaviour, i.e. semantics. These descriptions of type semantics are provided in terms of pre-/post-conditions, invariants and history constraints appropriately extended to cover the specification of component type providing and requiring a number of services. At the same time, the type model for SECT utilises ideas from signature and specification matching, as well as behavioural subtyping, to define a rich set of type compatibility/ conformance relationships able to enhance the trading process. Moreover, recognising the difficulties of establishing semantic type relationships, the use of contextual composition in current component platform, and the standardisation effort currently underway in certain application domains, the component type model for SECT also introduces a preliminary notion of type definition domains. These domains are used to standardise particular type definitions, models for the description of extra-functional properties, and certain terminology used in particular application domains. All these elements of type definition domains are utilised in order to streamline the operation of type managers supporting the component type model for SECT.

The component type model for SECT is primarily evaluated with respect to its ability to support trading of higher quality compared to current service traders. For this purpose we demonstrate how precise and expressive the component type model is through a number of examples of component type descriptions. At the same time, we also explore the issues pertaining to the implementation of a trader for SECT by providing a trader architecture that takes advantage of the particular features of the component type model. Moreover, we also briefly explore how the component type model could be utilised in the area of web services and of context-aware applications. This evaluation shows that notion of SECT supported by the component type model is valuable in a wider context than the enterprise information systems that motivated its development.

Supervisor: Paddy Nixon


Last modified: Friday, April 22, 2005