Advertisement

Cross-Layer Adaptation in Multi-layer Autonomic Systems (Invited Talk)

  • Uwe AßmannEmail author
  • Dominik Grzelak
  • Johannes Mey
  • Dmytro Pukhkaiev
  • René Schöne
  • Christopher Werner
  • Georg Püschel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11376)

Abstract

This work presents a new reference architecture for multi-layer autonomic systems called context-controlled autonomic controllers (ConAC). Usually, the principle of multiple system layers contradicts the principle of a global adaptation strategy, because system layers are considered to be black boxes. The presented architecture relies on an explicit context model, so a simple change of contexts can consistently vary the adaptation strategies for all layers. This reveals that explicit context modeling enables consistent meta-adaptation in multi-layer autonomic systems. The paper presents two application areas for the ConAC architecture, robotic co-working and energy-adaptive servers, but many other multi-layered system designs should benefit from it.

References

  1. 1.
    Abbas, N., Andersson, J.: Harnessing variability in product-lines of self-adaptive software systems. In: Schmidt, D.C. (ed.) Proceedings of the 19th International Conference on Software Product Line, SPLC 2015, 20–24 July 2015, Nashville, TN, USA, pp. 191–200. ACM (2015)Google Scholar
  2. 2.
    Aßmann, U., Piechnick, C., Püschel, G., Piechnick, M., Falkenberg, J., Werner, S.: Modelling the world of a smart room for robotic co-working. In: Pires, L.F., Hammoudi, S., Selic, B. (eds.) MODELSWARD 2017. CCIS, vol. 880, pp. 484–506. Springer, Cham (2018).  https://doi.org/10.1007/978-3-319-94764-8_20CrossRefGoogle Scholar
  3. 3.
    Barroso, L.A., Hölzle, U.: The case for energy-proportional computing. IEEE Comput. 40(12), 33–37 (2007)CrossRefGoogle Scholar
  4. 4.
    Bencomo, N., Grace, P., Flores-Cortés, C., Hughes, D., Blair, G.: Genie: supporting the model driven development of reflective, component-based adaptive systems. In: Schäfer, W., Dwyer, M.B., Gruhn, V. (eds.) 30th International Conference on Software Engineering, ICSE 2008, 10–18 May 2008, Leipzig, Germany, pp. 811–814. ACM (2008)Google Scholar
  5. 5.
    Cámara, J., et al.: Self-aware computing systems: related concepts and research areas. In: Kounev, S., Kephart, J., Milenkoski, A., Zhu, X. (eds.) Self-Aware Computing Systems, pp. 17–49. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-47474-8_2CrossRefGoogle Scholar
  6. 6.
    Capilla, R., Bosch, J., Trinidad, P., Ruiz Cortés, A., Hinchey, M.: An overview of dynamic software product line architectures and techniques: observations from research and industry. J. Syst. Softw. 91, 3–23 (2014)CrossRefGoogle Scholar
  7. 7.
    Ewing, J.M.: Autonomic performance optimization with application to self-architecting software systems. Ph.D. thesis, George Mason University, Fairfax, Virginia, USA (2015). http://hdl.handle.net/1920/9702
  8. 8.
    Fettweis, G., Nagel, W., Lehner, W.: Pathways to servers of the future: highly adaptive energy efficient computing (HAEC). In: Proceedings of the Conference on Design, Automation and Test in Europe, DATE 2012, San Jose, CA, USA, pp. 1161–1166. EDA Consortium (2012)Google Scholar
  9. 9.
    Goens, A., Khasanov, R., Castrillon, J., Hähnel, M., Smejkal, T., Härtig, H.: Tetris: a multi-application run-time system for predictable execution of static mappings. In: Proceedings of the 20th International Workshop on Software and Compilers for Embedded Systems, SCOPES 2017, New York, NY, USA, pp. 11–20. ACM (2017)Google Scholar
  10. 10.
    Greenwood, P., Blair, L.: A framework for policy driven auto-adaptive systems using dynamic framed aspects. In: Rashid, A., Aksit, M. (eds.) Transactions on Aspect-Oriented Software Development II. LNCS, vol. 4242, pp. 30–65. Springer, Heidelberg (2006).  https://doi.org/10.1007/11922827_2CrossRefGoogle Scholar
  11. 11.
    Guinea, S., Kecskemeti, G., Marconi, A., Wetzstein, B.: Multi-layered monitoring and adaptation. In: Kappel, G., Maamar, Z., Motahari-Nezhad, H.R. (eds.) ICSOC 2011. LNCS, vol. 7084, pp. 359–373. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-25535-9_24CrossRefGoogle Scholar
  12. 12.
    Haddadin, S., Suppa, M., Fuchs, S., Bodenmüller, T., Albu-Schäffer, A., Hirzinger, G.: Towards the robotic co-worker. In: Pradalier, C., Siegwart, R., Hirzinger, G. (eds.) Robotics Research. STAR, vol. 70, pp. 261–282. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-19457-3_16CrossRefGoogle Scholar
  13. 13.
    Heinis, T., Pautasso, C.: Automatic configuration of an autonomic controller: an experimental study with zero-configuration policies. In: Strassner, J., Dobson, S.A., Fortes, J.A.B., Goswami, K.K. (eds.) 2008 International Conference on Autonomic Computing, ICAC 2008, 2–6 June 2008, Chicago, Illinois, USA, pp. 67–76. IEEE Computer Society (2008)Google Scholar
  14. 14.
    Herrmann, S.: A precise model for contextual roles: the programming language ObjectTeams/Java. Appl. Ontol. 2(2), 181–207 (2007)Google Scholar
  15. 15.
    Hillemacher, S., et al.: Model-based development of self-adaptive autonomous vehicles using the SMARDT methodology. In: Hammoudi, S., Pires, L.F., Selic, B. (eds.) Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2018, 22–24 January 2018, Funchal, Madeira - Portugal, pp. 163–178. SciTePress (2018)Google Scholar
  16. 16.
    Hirschfeld, R., Costanza, P., Nierstrasz, O.M.: Context-oriented programming. J. Object Technol. 7(3), 125–151 (2008)CrossRefGoogle Scholar
  17. 17.
    Huebscher, M.C., McCann, J.A.: A survey of autonomic computing - degrees, models, and applications. ACM Comput. Surv. 40(3), 7:1–7:28 (2008)CrossRefGoogle Scholar
  18. 18.
    Kephart, J.O., et al.: Self-adaptation in collective self-aware computing systems. In: Kounev, S., Kephart, J., Milenkoski, A., Zhu, X. (eds.) Self-Aware Computing Systems. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-47474-8_13CrossRefGoogle Scholar
  19. 19.
    Kiczales, G., et al.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997).  https://doi.org/10.1007/BFb0053381CrossRefGoogle Scholar
  20. 20.
    Kissinger, T., Hähnel, M., Smejkal, T., Habich, D., Härtig, H., Lehner, W.: Energy-utility function-based resource control for in-memory database systems live. In: Proceedings of the 2018 International Conference on Management of Data, SIGMOD 2018, New York, NY, USA, pp. 1717–1720. ACM (2018)Google Scholar
  21. 21.
    Kramer, J., Magee, J.: Towards robust self-managed systems. Prog. Inform. 5, 1–4 (2008)CrossRefGoogle Scholar
  22. 22.
    Kühn, T., Leuthäuser, M., Götz, S., Seidl, C., Aßmann, U.: A metamodel family for role-based modeling and programming languages. In: Combemale, B., Pearce, D.J., Barais, O., Vinju, J.J. (eds.) SLE 2014. LNCS, vol. 8706, pp. 141–160. Springer, Cham (2014).  https://doi.org/10.1007/978-3-319-11245-9_8CrossRefGoogle Scholar
  23. 23.
    Philippe, L., McCann, J.A., Diaconescu, A.: Autonomic Computing - Principles, Design and Implementation. Undergraduate Topics in Computer Science. Springer, London (2013).  https://doi.org/10.1007/978-1-4471-5007-7CrossRefGoogle Scholar
  24. 24.
    Litoiu, M., Woodside, M., Zheng, T.: Hierarchical model-based autonomic control of software systems. ACM SIGSOFT Softw. Eng. Notes 30(4), 1–7 (2005)CrossRefGoogle Scholar
  25. 25.
    Ostermann, K.: Dynamically composable collaborations with delegation layers. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 89–110. Springer, Heidelberg (2002).  https://doi.org/10.1007/3-540-47993-7_4CrossRefGoogle Scholar
  26. 26.
    Pukhkaiev D., Götz, S.: BRISE: energy-efficient benchmark reduction. In: 2018 IEEE/ACM 6th International Workshop on Green and Sustainable Software (GREENS), pp. 23–30, May 2018Google Scholar
  27. 27.
    Püschel, G.: Testing self-adaptive systems - a model-based approach to resilience. Ph.D. thesis, Technische Universität Dresden, June 2018. http://nbn-resolving.de/urn:nbn:de:bsz:14-qucosa-237791
  28. 28.
    Rosenmüller, M., Siegmund, N., Apel, S., Saake, G.: Flexible feature binding in software product lines. Autom. Softw. Eng. 18(2), 163–197 (2011)CrossRefGoogle Scholar
  29. 29.
    Salehie, M., Tahvildari, L.: Self-adaptive software: Landscape and research challenges. ACM Trans. Auton. Adapt. Syst. 4(2), 14:1–14:42 (2009)CrossRefGoogle Scholar
  30. 30.
    Salvaneschi, G., Ghezzi, C., Pradella, M.: Context-oriented programming: aprogramming paradigm for autonomic systems. The Computing Research Repository (CoRR). abs/1105.0069 (2011)Google Scholar
  31. 31.
    Smaragdakis, Y., Batory, D.: Implementing layered designs with mixin layers. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, pp. 550–570. Springer, Heidelberg (1998).  https://doi.org/10.1007/BFb0054107CrossRefGoogle Scholar
  32. 32.
    Steimann, F.: On the representation of roles in object-oriented and conceptual modelling. Data Knowl. Eng. 35(1), 83–106 (2000)CrossRefGoogle Scholar
  33. 33.
    VanHilst, M., Notkin, D.: Using role components in implement collaboration-based designs. SIGPLAN Notes 31(10), 359–369 (1996)CrossRefGoogle Scholar
  34. 34.
    Weyns, D., et al.: On patterns for decentralized control in self-adaptive systems. In: de Lemos, R., Giese, H., Müller, H.A., Shaw, M. (eds.) Software Engineering for Self-Adaptive Systems II. LNCS, vol. 7475, pp. 76–107. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-35813-5_4CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Uwe Aßmann
    • 1
    Email author
  • Dominik Grzelak
    • 1
  • Johannes Mey
    • 1
  • Dmytro Pukhkaiev
    • 1
  • René Schöne
    • 1
  • Christopher Werner
    • 1
  • Georg Püschel
    • 2
  1. 1.Institut für Software- und MultimediatechnikTechnische Universität DresdenDresdenGermany
  2. 2.WandelbotsDresdenGermany

Personalised recommendations