TY - GEN
T1 - Composing distributed systems
T2 - 11th International Symposium on Formal Methods for Components and Objects, FMCO 2012
AU - Issarny, Valérie
AU - Bennaceur, Amel
PY - 2013
Y1 - 2013
N2 - Software systems are increasingly composed of independently-developed components, which are often systems by their own. This composition is possible only if the components are interoperable, i.e., are able to work together in order to achieve some user task(s). However, interoperability is often hampered by the differences in the data types, communication protocols, and middleware technologies used by the components involved. In order to enable components to interoperate despite these differences, mediators that perform the necessary data translations and coordinate the components' behaviours appropriately, have been introduced. Still, interoperability remains a critical challenge for today's and even more tomorrow's distributed systems that are highly heterogeneous and dynamic. This chapter introduces the fundamental principles and solutions underlaying interoperability in software systems with a special focus on protocols. First, we take a software architecture perspective and present the fundamentals for reasoning about interoperability and bring out mediators as a key solution to achieve protocol interoperability. Then, we review the solutions proposed for the implementation, synthesis, and dynamic deployment of mediators. We show how these solutions still fall short in automatically solving the interoperability problem in the context of systems of systems. This leads us to present the solution elaborated in the context of the European Connect project, which revolves around the notion of emergent middleware, whereby mediators are synthesised on the fly. We consider the GMES (Global Monitoring of Environment and Security) initiative and use it to illustrate the different solutions presented.
AB - Software systems are increasingly composed of independently-developed components, which are often systems by their own. This composition is possible only if the components are interoperable, i.e., are able to work together in order to achieve some user task(s). However, interoperability is often hampered by the differences in the data types, communication protocols, and middleware technologies used by the components involved. In order to enable components to interoperate despite these differences, mediators that perform the necessary data translations and coordinate the components' behaviours appropriately, have been introduced. Still, interoperability remains a critical challenge for today's and even more tomorrow's distributed systems that are highly heterogeneous and dynamic. This chapter introduces the fundamental principles and solutions underlaying interoperability in software systems with a special focus on protocols. First, we take a software architecture perspective and present the fundamentals for reasoning about interoperability and bring out mediators as a key solution to achieve protocol interoperability. Then, we review the solutions proposed for the implementation, synthesis, and dynamic deployment of mediators. We show how these solutions still fall short in automatically solving the interoperability problem in the context of systems of systems. This leads us to present the solution elaborated in the context of the European Connect project, which revolves around the notion of emergent middleware, whereby mediators are synthesised on the fly. We consider the GMES (Global Monitoring of Environment and Security) initiative and use it to illustrate the different solutions presented.
KW - Architectural mismatches
KW - Interoperability
KW - Mediator synthesis
KW - Middleware
UR - https://www.scopus.com/pages/publications/84883345349
U2 - 10.1007/978-3-642-40615-7_6
DO - 10.1007/978-3-642-40615-7_6
M3 - Conference contribution
AN - SCOPUS:84883345349
SN - 9783642406140
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 168
EP - 196
BT - Formal Methods for Components and Objects - 11th International Symposium, FMCO 2012, Revised Lectures
Y2 - 24 September 2012 through 28 September 2012
ER -