Automated synthesis of mediators to support component interoperability

Research output: Contribution to journalArticlepeer-review

Abstract

Interoperability is a major concern for the software engineering field, given the increasing need to compose components dynamically and seamlessly. This dynamic composition is often hampered by differences in the interfaces and behaviours of independently-developed components. To address these differences without changing the components, mediators that systematically enforce interoperability between functionally-compatible components by mapping their interfaces and coordinating their behaviours are required. Existing approaches to mediator synthesis assume that an interface mapping is provided which specifies the correspondence between the operations and data of the components at hand. In this paper, we present an approach based on ontology reasoning and constraint programming in order to infer mappings between components' interfaces automatically. These mappings guarantee semantic compatibility between the operations and data of the interfaces. Then, we analyse the behaviours of components in order to synthesise, if possible, a mediator that coordinates the computed mappings so as to make the components interact properly. Our approach is formally-grounded to ensure the correctness of the synthesised mediator. We demonstrate the validity of our approach by implementing the MICS (Mediator synthesIs to Connect Components) tool and experimenting it with various real-world case studies.

Original languageEnglish
Article number6936339
Pages (from-to)221-240
Number of pages20
JournalIEEE Transactions on Software Engineering
Volume41
Issue number3
DOIs
Publication statusPublished - 1 Mar 2015
Externally publishedYes

Keywords

  • Automated Synthesis
  • Constraint Programming
  • Interoperability
  • Mediators
  • Protocols

Fingerprint

Dive into the research topics of 'Automated synthesis of mediators to support component interoperability'. Together they form a unique fingerprint.

Cite this