Advertisement

Retrofitting Controlled Dynamic Reconfiguration into the Architecture Description Language MontiArcAutomaton

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9839)

Abstract

Component & connector architecture description languages (C&C ADLs) provide hierarchical decomposition of system functionality into components and their interaction. Most ADLs fix interaction configurations at design time while some express dynamic reconfiguration of components to adapt to runtime changes. Implementing dynamic reconfiguration in a static C&C ADL by encoding it into component behavior creates implicit dependencies between components and forfeits the abstraction of behavior paramount to C&C models. We developed a mechanism for retrofitting dynamic reconfiguration into the static C&C ADL MontiArcAutomaton. This mechanism lifts reconfiguration to an architecture concern and allows to preserve encapsulation and abstraction of C&C ADLs. Our approach enables efficient retrofitting by a smooth integration of reconfiguration semantics and encapsulation. The new dynamic C&C ADL is fully backwards compatible and well-formedness of configurations can be statically checked at design time. Our work provides dynamic reconfiguration for the C&C ADL MontiArcAutomaton.

Keywords

Mode Transition Design Time Dynamic Reconfiguration Architecture Description Language Component Configuration 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Medvidovic, N., Taylor, R.: A classification and comparison framework for software architecture description languages. IEEE Trans. Softw. Eng. 26, 70–93 (2000)CrossRefGoogle Scholar
  2. 2.
    Malavolta, I., Lago, P., Muccini, H., Pelliccione, P., Tang, A.: What industry needs from architectural languages: a survey. IEEE Trans. Softw. Eng. 39, 869–891 (2013)CrossRefGoogle Scholar
  3. 3.
    France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: 2007 Future of Software Engineering. ICSE (2007)Google Scholar
  4. 4.
    Wile, D.S.: Supporting the DSL spectrum. Comput. Inf. Technol. 9, 263–287 (2001)CrossRefzbMATHGoogle Scholar
  5. 5.
    Ringert, J.O., Roth, A., Rumpe, B., Wortmann, A.: Language and code generator composition for model-driven engineering of robotics component & connector systems. J. Softw. Eng. Robot. (JOSER) 6, 33–57 (2015)Google Scholar
  6. 6.
    Salehie, M., Tahvildari, L.: Self-adaptive software: landscape and research challenges. ACM Trans. Auton. Adapt. Syst. (TAAS) 4, 14–15 (2009)Google Scholar
  7. 7.
    Ringert, J.O., Rumpe, B., Wortmann, A.: Architecture and behavior modeling of cyber-physical systems with MontiArcAutomaton. Shaker Verlag (2014)Google Scholar
  8. 8.
    Lim, W.Y.P.: PADL-a packet architecture description language. Massachusetts Institute of Technology, Laboratory for Computer Science (1982)Google Scholar
  9. 9.
    Medvidovic, N.: ADLs and dynamic architecture changes. In: Joint Proceedings of the Second International Software Architecture Workshop (ISAW-2) and International Workshop on Multiple Perspectives in Software Development (Viewpoints 1996) on SIGSOFT 1996 Workshops (1996)Google Scholar
  10. 10.
    Aldrich, J., Chambers, C., Notkin, D.: ArchJava: connecting software architecture to implementation. In: Proceedings of the 24th International Conference on Software Engineering (ICSE) (2002)Google Scholar
  11. 11.
    Oquendo, F.: \(\pi \)-ADL: an architecture description language based on the higher-order typed \(\pi \)-calculus for specifying dynamic and mobile software architectures. ACM SIGSOFT Softw. Eng. Notes 29, 1–14 (2004)Google Scholar
  12. 12.
    Cuesta, C.E., de la Fuente, P., Barrio-Solórzano, M., Beato, M.E.G.: An “abstract process” approach to algebraic dynamic architecture description. J. Log. Algebr. Program. 63, 177–214 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Joolia, A., Batista, T., Coulson, G., Gomes, A.T.: Mapping ADL specifications to an efficient and reconfigurable runtime component platform. In: 5th Working IEEE/IFIP Conference on Software Architecture, WICSA 2005 (2005)Google Scholar
  14. 14.
    Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.: The fractal component model and its support in Java. Softw. Pract. Exp. 36, 1257–1284 (2006)CrossRefGoogle Scholar
  15. 15.
    Feiler, P.H., Gluch, D.P.: Model-Based Engineering with AADL: An Introduction to the SAE Architecture Analysis & Design Language. Addison-Wesley, Upper Saddle River (2012)Google Scholar
  16. 16.
    AutoFocus 3 Website. http://af3.fortiss.org/. Accessed: 18 Jan 2016
  17. 17.
    Aravantinos, V., Voss, S., Teufl, S., Hölzl, F., Schätz, B.: AutoFOCUS 3: tooling concepts for seamless, model-based development of embedded systems. In: Joint Proceedings of ACES-MB 2015 – Model-Based Architecting of Cyber-physical and Embedded Systems and WUCOR 2015 – UML Consistency Rules (2015)Google Scholar
  18. 18.
    Cassou, D., Koch, P., Stinckwich, S.: Using the DiaSpec design language and compiler to develop robotics systems. In: Proceedings of the Second International Workshop on Domain-Specific Languages and Models for Robotic Systems (DSLRob) (2011)Google Scholar
  19. 19.
    Becker, S., Koziolek, H., Reussner, R.: Model-based performance prediction with the palladio component model. In: Proceedings of the 6th International Workshop on Software and Performance (2007)Google Scholar
  20. 20.
    Khare, R., Guntersdorfer, M., Oreizy, P., Medvidovic, N., Taylor, R.N.: xADL: enabling architecture-centric tool integration with XML. In: Proceedings of the 34th Annual Hawaii International Conference on System Sciences (2001)Google Scholar
  21. 21.
    Bradbury, J.S.: Organizing definitions and formalisms for dynamic software architectures. Technical report, School of Computing, Queen’s University (2004)Google Scholar

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  1. 1.Software EngineeringRWTH Aachen UniversityAachenGermany
  2. 2.School of Computer ScienceTel Aviv UniversityTel AvivIsrael
  3. 3.Fraunhofer FITAachenGermany

Personalised recommendations