Self-Adaptable Discovery and Composition of Services Based on the Semantic CompAA Approach

Self-Adaptable Discovery and Composition of Services Based on the Semantic CompAA Approach

J. Lacouture, P. Aniorté
DOI: 10.4018/jaras.2011100104
(Individual Articles)
No Current Special Offers


With the next generation of distributed systems, applications become nomad, ubiquitous or ambient. It becomes challenging to dynamically maintain or update functionalities, or to preserve non-functional properties, like the extensibility of the system and the quality of service. This paper describes the CompAA component model. The main contribution introduces the variability concept with the specification of adaptation points integrated by a mixed component/agent approach. The result is the production of self-adaptable entities, including self-discovery and self-composition mechanisms. An experiment in the area of training, based on very scalable services (e-Portfolio), validates these contributions and provides an exemplification of CompAA mechanisms.
Article Preview


During the last years, distributed systems have known a rapid development with new technologies (Services Oriented Architectures, Grid computing, nomad and ubiquitous computing). Within such environments, the software architecture of the system evolves at runtime. Some critical systems have to be maintained, updated and improved without service discontinuation. Consequently, the persistence of the services and dynamic aspects establish new challenges and bring to reconsider inherent problems that are the reuse of the existing services and their adaptation. This dynamic adaptation deals with the constant evolution of systems (evolution in terms of availability of services, updates, failures, or evolution of needs at runtime).

The CompAA (Auto-Adaptable Components) approach is proposed to deal with this kind of contextual adaptation. It tries to produce systems with the most dynamic and most autonomous properties, among other things by the discovery of the available services.

An original method that we promote with CompAA, inspired by related works (Briot, 2005; Krutisch et al., 2003), is the idea to combine components and agents advantages in a mixed approach. The idea to use the component paradigm is motivated by results obtained, on the one hand in the field of re-use, and on the other hand in the area of the modeling and the deployment of distributed applications. Components present limits in terms of flexibility and autonomy, which are intrinsic characteristics of software agents. Indeed agents are often used to automate systems but they have not the same assets to produce reusable and reconfigurable entities. That's why, we find a real interest in mixing these two complementary paradigms to take the benefits of both.

For that purpose, our contributions get organized around two main propositions:

  • A model of adaptable components, leaning on the principles of abstraction and variability, and also leaning on a semantic definition in terms of functional and non-functional properties allowing an automatic interpretation by software agents;

  • A process of dynamic adaptation implementing the proposed model. The specified process covers stages going from the analysis of needs to the adaptation of components, as well as stages of discovery and selection of components. Various policies of adaptation allow a level of adaptability increased within the process.

This paper is organized as follows. Next section gives an overview of related works and another section defines the area of our experiments, the e-learning (with the use of e-Portfolios), in order to give an exemplification throughout the paper. Then, we specify the CompAA component model introducing the variability principle to develop adaptable entities. Another section is devoted to CompAA agents and the CompAA process of self-adaptation. Afterward, we present first experimental results concerning the self-adaptation of e-Portfolios using the CompAA approach. Finally, we conclude giving an outlook on future works.


With many approaches proposing adaptable solutions for opened distributed systems, (a non-exhaustive shortlist: Sirac, AGIL or Accord), some relevant elements are pointed out:

  • The use of components (software components, web/grid services, ...) which reusable quality modeling reduces time and cost in the development cycle;

  • The use of software agents to automate the processes of discovery, selection or adaptation of provided services;

  • The use of semantic models like ontologies to describe “contextual” data and to allow to autonomously interpret them;

  • Sometimes, the use of peer-to-peer communication mechanisms to improve autonomous and dynamic interactions thanks to a decentralized management.

Complete Article List

Search this Journal:
Open Access Articles: Forthcoming
Volume 7: 1 Issue (2016)
Volume 6: 2 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing