Organisation: |
University of Málaga (SPAIN)
INRIA Grenoble |
---|---|
Functionality: |
Automatic composition and adaptation of Web services.
|
Tools used: |
CADP (Construction and Analysis of Distributed Processes)
|
Period: |
2009
|
Description: |
In today's Web, services are everywhere. These can be just accessed
and used to fulfill basic requirements, or be composed with other
services to build bigger systems which aim at working out complex
tasks. To ease their reuse and enable their automatic composition,
services must be equipped with rich interfaces enabling external
access to their functionality. Several interoperability levels can be
distinguished in interface description languages (i.e., signature,
protocol, quality of service, and semantics). Composition of services
is seldom achieved seamlessly because mismatch may occur at the
different interoperability levels and must be solved. Software
adaptation is the only way to compose non-intrusively black-box
components or services with mismatching interfaces by automatically
generating mediating adaptor services. The so-called
generative approaches for software adaptation avoid restricting
service behaviour, and support the specification of advanced adaptation
scenarios. Generative approaches build adaptors automatically from an
abstract specification, namely an adaptation contract, of how
mismatch cases can be solved.
ITACA is an integrated toolbox that fully supports generative adaptation, which starts with the automatic extraction of behavioural models from existing interface descriptions either in Abstract BPEL or Windows Workflows (WF). The toolbox enables automatic contract generation, and also interactive contract specification. The latter relies on a graphical notation and a computation of protocol similarity which assists the designer by pointing out parts of service protocols that can be matched together. Interactive specification can be used either as an alternative, or in conjunction with automatic generation. Simulation and verification of the system's execution based on a particular contract before adaptor generation is also possible. Finally, a monolithic adaptor protocol or a set of distributed adaptation wrapper protocols can be automatically generated and deployed. Service interfaces are assumed to be specified using both a signature and a protocol. Signatures correspond to operation names associated with arguments and return types relative to the messages and data being exchanged when the operation is called. Protocols are represented by means of Symbolic Transition Systems (STSs), which are Labelled Transition Systems (LTSs) extended with value passing. This formal model has been chosen because it is simple, graphical, and provides a good level of abstraction to tackle verification, composition, or adaptation issues. At the user level, one can specify service interfaces (signatures and protocols) using respectively WSDL, and Abstract BPEL (ABPEL) or WF workflows (AWF). ITACA comprises the following tools:
|
Conclusions: |
Building systems by adapting a set of reusable software services is an
error-prone task which can be supported by assisting developers with
automatic procedures and tools. ITACA is the first toolbox that fully
supports a generative adaptation approach from beginning to end:
specification and verification of adaptation contracts, generation of
adaptor protocols, and translation of abstract models in
implementation languages.
|
Publications: |
[Mateescu-Poizat-Salaun-07]
Radu Mateescu, Pascal Poizat, and Gwen Salaün.
"Behavioral Adaptation of Component Compositions based on Process
Algebra Encodings".
Proceedings of the 22nd IEEE/ACM International Conference on
Automated Software Engineering ASE'2007 (Atlanta, Georgia, USA),
November 2007. Full version available as INRIA Research Report
RR-6362.
Available on-line at: http://cadp.inria.fr/publications/Mateescu-Poizat-Salaun-07.html or from the CADP Web site in PDF or PostScript [Mateescu-Poizat-Salaun-08] Radu Mateescu, Pascal Poizat, and Gwen Salaün. "Adaptation of Service Protocols using Process Algebra and On-the-Fly Reduction Techniques". Proceedings of the 6th International Conference on Service Oriented Computing ICSOC'2008 (Sydney, Australia), December 1-5, 2008. Available on-line at: http://cadp.inria.fr/publications/Mateescu-Poizat-Salaun-08.html or from the CADP Web site in PDF or PostScript [Camara-Martin-Salaun-et-al-09] Javier Camara, Jose Antonio Martin, Gwen Salaun, Javier Cubo, Meriem Ouederni, Carlos Canal, and Ernesto Pimentel. "ITACA: An Integrated Toolbox for the Automatic Composition and Adaptation of Web Services". Proceedings of the 31st International Conference on Software Engineering ICSE'09, pp. 627-630. IEEE Computer Society Press, May 2009. Available on-line at: http://itaca.gisum.uma.es/files/ICSE2009_FRD_0214_camara.pdf or from the CADP Web site in PDF or PostScript [Camara-Salaun-Canal-Ouederni-09] Javier Camara, Gwen Salaun, Carlos Canal, and Meriem Ouederni. "Interactive Specification and Verification of Behavioural Adaptation Contracts". Proceedings of the 9th International Conference on Quality Software QSIC'2009, pp. 627-630. IEEE Computer Society Press, August 2009. Available on-line at: http://itaca.gisum.uma.es/files/CSCO-InteractiveSpecification.pdf or from the CADP Web site in PDF or PostScript |
Contact: | Ernesto Pimentel Sánchez Dpto. de Lenguajes y Ciencias de la Computación University of Málaga Campus de Teatinos 29071 Málaga SPAIN Tel: +34 95 213 1396 Fax: +34 95 213 1397 Email: ernesto@lcc.uma.es |
Further remarks: | This tool, amongst others, is described on the CADP Web site: http://cadp.inria.fr/software |