A component‐based middleware platform for reconfigurable service‐oriented architectures

ThetextitService Component Architecture (SCA) is a technology‐independent standard for developing distributed Service‐oriented Architectures (SOA). The SCA standard promotes the use of components and architecture descriptors, and mostly covers the lifecycle steps of implementation and deployment. Unfortunately, SCA does not address the governance of SCA applications and provides no support for the maintenance of deployed components. This article covers this issue and introduces the FRASCATI platform, a run‐time support for SCA with dynamic reconfiguration capabilities and run‐time management features. This article presents the internal component‐based architecture of the FRASCATI platform, and highlights its key features. The component‐based design of the FRASCATI platform introduces many degrees of flexibility and configurability in the platform itself and it can host the SOA applications. This article reports on micro‐benchmarks highlighting that run‐time manageability in the FRASCATI platform does not decrease its performance when compared with the de facto reference SCA implementation: Apache TUSCANY. Finally, a smart home scenario illustrates the extension capabilities and the various reconfigurations of the FRASCATI platform. Copyright © 2011 John Wiley & Sons, Ltd.

[1]  Petr Hnetynka,et al.  SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model , 2006, Fourth International Conference on Software Engineering Research, Management and Applications (SERA'06).

[2]  Hervé Grall,et al.  A Multi-stage Approach for Reliable Dynamic Reconfigurations of Component-Based Systems , 2008, DAIS.

[3]  S. Sicard Using Components for Architecture-Based Management The Self-Repair case , 2007 .

[4]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[5]  Calton Pu,et al.  SWiFT: a feedback control and dynamic reconfiguration toolkit , 1998 .

[6]  Grady Booch,et al.  Essential COM , 1998 .

[7]  Frank Eliassen,et al.  MUSIC: Middleware Support for Self-Adaptation in Ubiquitous and Service-Oriented Environments , 2009, Software Engineering for Self-Adaptive Systems.

[8]  Paolo Traverso,et al.  Service-Oriented Computing: State of the Art and Research Challenges , 2007, Computer.

[9]  Quan Z. Sheng,et al.  Enabling Context-Aware Web Services - Methods, Architectures, and Technologies , 2010 .

[10]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[11]  Romain Rouvoy,et al.  Reconfigurable run-time support for distributed service component architectures , 2010, ASE '10.

[12]  Liam Murphy,et al.  Comparing the Service Component Architecture and Fractal Component Model , 2011, Comput. J..

[13]  Salim Hariri,et al.  The Autonomic Computing Paradigm , 2006, Cluster Computing.

[14]  Ashish B. Shah,et al.  Common Object Request Broker Architecture (CORBA) , 2015 .

[15]  Romain Rouvoy,et al.  Service discovery in ubiquitous feedback control loops , 2010, DAIS'10.

[16]  Olivier Dalle,et al.  OSA: an integration platform for component-based simulation , 2009, SimuTools.

[17]  P. Mahadevan,et al.  An overview , 2007, Journal of Biosciences.

[18]  Jim Dowling,et al.  The K-Component Architecture Meta-model for Self-Adaptive Software , 2001, Reflection.

[19]  Liam J. Bannon,et al.  The Shannon Portal Installation: Interaction Design for Public Places , 2007, Computer.

[20]  Philippe Merle,et al.  A Generic Deployment Framework for Grid Computing and Distributed Applications , 2006, OTM Conferences.

[21]  Thomas Ledoux,et al.  FPath and FScript: Language support for navigation and reliable reconfiguration of Fractal architectures , 2009, Ann. des Télécommunications.

[22]  Scott Boag,et al.  XQuery 1.0 : An XML Query Language , 2007 .

[23]  Jean-Bernard Stefani,et al.  J2EE Packaging, Deployment and Reconfiguration Using a General Component Model , 2005, Component Deployment.

[24]  Thierry Coupaye,et al.  A Model for Developing Component-Based and Aspect-Oriented Systems , 2006, SC@ETAPS.

[25]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[26]  Martin Odersky,et al.  An Overview of the Scala Programming Language , 2004 .

[27]  Thierry Coupaye,et al.  The FRACTAL component model and its support in Java , 2006, Softw. Pract. Exp..

[28]  Fabio Kon,et al.  Design , implementation , and performance of an automatic configuration service for distributed component systems , 2022 .

[29]  Francisco Reverbel,et al.  The JBoss Extensible Server , 2003, Middleware.

[30]  Israel Ben-Shaul,et al.  Dynamic Adaptation and Deployment of Distributed Components In Hadas , 2001, IEEE Trans. Software Eng..

[31]  Martin Odersky,et al.  An Overview of the Scala Programming Language (2. Edition) , 2006 .

[32]  Brian Cantwell Smith,et al.  Reflection and semantics in LISP , 1984, POPL.

[33]  Noel De Palma,et al.  Self-protection for Distributed Component-Based Applications , 2006, SSS.

[34]  Denis Caromel,et al.  Peer-to-Peer and fault-tolerance: Towards deployment-based technical services , 2007, Future Gener. Comput. Syst..

[35]  Ales Plsek,et al.  A Component Framework for Java-Based Real-Time Embedded Systems , 2008, Middleware.

[36]  Marija Mikic-Rakic,et al.  A style-aware architectural middleware for resource-constrained, distributed systems , 2005, IEEE Transactions on Software Engineering.

[37]  Jan Kofron,et al.  Model Checking of Software Components: Combining Java PathFinder and Behavior Protocol Model Checker , 2006, 2006 30th Annual IEEE/NASA Software Engineering Workshop.

[38]  Fabio Kon,et al.  Monitoring, Security, and Dynamic Configuration with the dynamicTAO Reflective ORB , 2000, Middleware.

[39]  Chang Jun CORBA Component Model , 2003 .

[40]  Fabio Kon,et al.  Design, implementation, and performance of an automatic configuration service for distributed component systems: Research Articles , 2005 .

[41]  Fabio Kon,et al.  Reflective Middleware: From Your Desk to Your Hand , 2001, IEEE Distributed Syst. Online.

[42]  Frank Eliassen,et al.  A comprehensive solution for application‐level adaptation , 2009, Softw. Pract. Exp..

[43]  QuémaVivien,et al.  The FRACTAL component model and its support in Java , 2006 .

[44]  Frank Budinsky,et al.  EMF: Eclipse Modeling Framework 2.0 , 2009 .

[45]  Gordon S. Blair,et al.  A generic component model for building systems software , 2008, TOCS.

[46]  Olivier Dalle,et al.  OSA: an integration platform for component-based simulation , 2009, SIMUTools 2009.

[47]  Roy Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures"; Doctoral dissertation , 2000 .

[48]  Huaglory Tianfield,et al.  A concise introduction to autonomic computing , 2005, Adv. Eng. Informatics.

[49]  Frank Eliassen,et al.  Programming Sensor Networks Using Remora Component Model , 2010, DCOSS.

[50]  Jennifer Ball,et al.  The J2EE Tutorial, Second Edition , 2004 .

[51]  Salim Hariri,et al.  Autonomic Computing: An Overview , 2004, UPP.

[52]  Philippe Merle,et al.  A formal specification of the Fractal component model in Alloy , 2008 .

[53]  Richard S. Hall,et al.  Dynamically Adaptable Applications with iPOJO Service Components , 2007, SC@ETAPS.

[54]  Daniel Jackson,et al.  Alloy: a lightweight object modelling notation , 2002, TSEM.

[55]  Valerio Schiavoni,et al.  Reconfigurable SCA Applications with the FraSCAti Platform , 2009, 2009 IEEE International Conference on Services Computing.

[56]  Noel De Palma,et al.  Autonomic Management of Clustered Applications , 2006, 2006 IEEE International Conference on Cluster Computing.