Conception and execution models to mediate and integrate service
Software systems are moving toward highly dynamic and heterogeneous environments. This dynamism is derived by several factors: the massive arrival of embedded devices with computing capabilities, the rapid adoption of newer distributed services provided by third parties, the user mobility and the constantly changing context, etc. These factors open up great opportunities for the construction of new and innovative services on several application domains, such as health-care systems, entertainment systems, home automation systems, transportation or traceability systems. These new application areas require the implementation of integration operations in dynamic and heterogeneous environments. It is well known that service-oriented computing eases the implementation of integrating systems by defining standard protocols to perform the discovery and the binding. However, some interoperability concerns, such as mediating, have been still unresolved. In this work we address the integration concern of service integration in dynamic and highly evolving environments. Specifically, we have developed an integration-specific component model called CILIA. This model is based on components, called mediators, and its assembly language. CILIA respects software engineering principles such as abstraction, separation of concerns, modularity, and anticipation of change and also it is influenced by the well-known enterprise integration patterns (EIP). CILIA has been developed as a dynamic framework that allows us to perform dynamic modifications at run-time on the integrated solutions. This framework is entirely developed and operational. It is available as an open source project and has been used by several collaborative projects.