Strengthening architectures of smart CPS by modeling them as runtime product-lines

Smart Cyber-Physical Systems (CPS) are complex distributed decentralized systems of cooperating mobile and stationary devices which closely interact with the physical environment. Although Component-Based Development (CBD) might seem as a viable solution to target the complexity of smart CPS, existing component models scarcely cope with the open-ended and very dynamic nature of smart CPS. This is especially true for design-time modeling using hierarchical explicit architectures, which traditionally provide an excellent means of coping with complexity by providing multiple levels of abstractions and explicitly specifying communication links between component instances. In this paper we propose a modeling method (materialized in the SOFA NG component model) which conveys the benefits of explicit architectures of hierarchical components to the design of smart CPS. Specifically, we base our method on modeling systems as reference architectures of Software Product Lines (SPL). Contrary to traditional SPL, which is a fully design-time approach, we create SPL configurations at runtime. We do so in a decentralized way by translating the configuration process to the process of establishing component ensembles (i.e. dynamic cooperation groups of components) of our DEECo component model.

[1]  Valerio Schiavoni,et al.  A component‐based middleware platform for reconfigurable service‐oriented architectures , 2012, Softw. Pract. Exp..

[2]  Petr Hnetynka,et al.  Introducing Support for Embedded and Real-Time Devices into Existing Hierarchical Component System: Lessons Learned , 2011, 2011 Ninth International Conference on Software Engineering Research, Management and Applications.

[3]  Ilias Gerostathopoulos,et al.  DEECO: an ensemble-based component system , 2013, CBSE '13.

[4]  Ajinkya Bhave,et al.  An Architectural Approach to the Design and Analysis of Cyber-Physical Systems , 2009, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

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

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

[7]  Jing Lin,et al.  Modeling Cyber-Physical Systems with Semantic Agents , 2010, 2010 IEEE 34th Annual Computer Software and Applications Conference Workshops.

[8]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[9]  Petr Hnetynka,et al.  Dynamic Reconfiguration and Access to Services in Hierarchical Component Models , 2006, CBSE.

[10]  Steffen Becker,et al.  Executing reconfigurations in hierarchical component architectures , 2013, CBSE '13.

[11]  Rolf Hennicker,et al.  Foundations for Ensemble Modeling - The Helena Approach - Handling Massively Distributed Systems with ELaborate ENsemble Architectures , 2014, Specification, Algebra, and Software.

[12]  Thierry Coupaye,et al.  The FRACTAL component model and its support in Java: Experiences with Auto-adaptive and Reconfigurable Systems , 2006 .

[13]  Sooyong Park,et al.  Dynamic Software Product Lines , 2008, Computer.

[14]  Oliver Rogalla,et al.  Extracting, specifying and predicting software system properties in component based real-time embedded software development , 2009, 2009 31st International Conference on Software Engineering - Companion Volume.

[15]  Kiev Gama,et al.  A dynamic and service-oriented component model for python long-lived applications , 2012, CBSE '12.

[16]  Matthieu Roy,et al.  Design-driven development methodology for resilient computing , 2013, CBSE '13.

[17]  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).

[18]  Laurent Pautet,et al.  Mode-based reconfiguration of critical software component architectures , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[19]  C. Chambers,et al.  ArchJava: connecting software architecture to implementation , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[20]  David Garlan,et al.  Acme: architectural description of component-based systems , 2000 .

[21]  Hans A. Hansson,et al.  Mode switch handling for the ProCom component model , 2013, CBSE '13.