Skip to main content

Architectural Concepts for Self-aware Computing Systems

  • Chapter
  • First Online:

Abstract

Self-awareness in a computing system is achieved by implementing a model-based learning, reasoning, and acting loop (LRA-M loop). Similar to the feedback loops for self-adaptive software, we argue that the LRA-M loop should be addressed during the architectural design of self-aware computing systems. This allows engineers to explicitly decide and reason about the system’s self-awareness capabilities. This chapter, therefore, introduces the relevant architectural concepts to address and make the LRA-M loop visible in the architectural design. Based on these concepts, we discuss how context-awareness, self-awareness, and meta-self-awareness become manifest in an architecture. Finally, we relate the presented architectural concepts to the definition and framework for self-aware computing systems introduced in the previous chapters.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   149.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   199.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   199.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Anant Agarwal and Bill Harrod. Organic computing. Technical Report White paper, MIT and DARPA, 2006.

    Google Scholar 

  2. Anant Agarwal, Jason Miller, Jonathan Eastep, David Wentziaff, and Harshad Kasture. Self-aware computing. Technical Report AFRL-RI-RS-TR-2009-161, MIT, 2009.

    Google Scholar 

  3. Ozalp Babaoglu, Mark Jelasity, Alberto Montresor, Christof Fetzer, Stefano Leonardi, Aad van Moorsel, and Maarten van Steen, editors. Self-star Properties in Complex Information Systems: Conceptual and Practical Foundations, volume 3460 of Lecture Notes in Computer Science (LNCS). Springer, 2005.

    Google Scholar 

  4. Nelly Bencomo, Amel Bennaceur, Paul Grace, Gordon S. Blair, and Valérie Issarny. The role of models@run.time in supporting on-the-fly interoperability. Computing, 95(3):167–190, 2013.

    Google Scholar 

  5. Amel Bennaceur, Robert France, Giordano Tamburrelli, Thomas Vogel, Pieter J Mosterman, Walter Cazzola, Fbio M. Costa, Alfonso Pierantonio, Matthias Tichy, Mehmet Aksit, Pr Emmanuelson, Huang Gang, Nikolaos Georgantas, and David Redlich. Mechanisms for Leveraging Models at Runtime in Self-adaptive Software. In Nelly Bencomo, Robert France, Betty H.C. Cheng, and Uwe Assmann, editors, Models@run.time, volume 8378 of Lecture Notes in Computer Science (LNCS), pages 19–46. Springer, 2014.

    Google Scholar 

  6. Gordon Blair, Nelly Bencomo, and Robert France. Models@run.time. Computer, 42(10):22–27, 2009.

    Google Scholar 

  7. Yuriy Brun, Giovanna Di Marzo Serugendo, Cristina Gacek, Holger Giese, Holger Kienle, Marin Litoiu, Hausi Müller, Mauro Pezzè, and Mary Shaw. Engineering Self-Adaptive Systems through Feedback Loops. In Betty H.C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, and Jeff Magee, editors, Software Engineering for Self-Adaptive Systems, volume 5525 of Lecture Notes in Computer Science (LNCS), pages 48–70. Springer, 2009.

    Google Scholar 

  8. Radu Calinescu, Lars Grunske, Marta Z. Kwiatkowska, Raffaela Mirandola, and Giordano Tamburrelli. Dynamic qos management and optimization in service-based systems. IEEE Trans. Software Eng., 37(3):387–409, 2011.

    Google Scholar 

  9. Betty H.C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, Jeff Magee, Jesper Andersson, Basil Becker, Nelly Bencomo, Yuriy Brun, Bojan Cukic, Giovanna Di Marzo Serugendo, Schahram Dustdar, Anthony Finkelstein, Cristina Gacek, Kurt Geihs, Vincenzo Grassi, Gabor Karsai, Holger M. Kienle, Jeff Kramer, Marin Litoiu, Sam Malek, Raffaela Mirandola, Hausi Müller, Sooyong Park, Mary Shaw, Matthias Tichy, Massimo Tivoli, Danny Weyns, and Jon Whittle. Software Engineering for Self-Adaptive Systems: A Research Roadmap. In Betty H.C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, and Jeff Magee, editors, Software Engineering for Self-Adaptive Systems, volume 5525 of Lecture Notes in Computer Science (LNCS), pages 1–26. Springer, 2009.

    Google Scholar 

  10. Betty H.C. Cheng, Holger Giese, Paola Inverardi, Jeff Magee, and Rogério de Lemos, editors. Software Engineering for Self-Adaptive Systems, volume 5525 of Lecture Notes in Computer Science (LNCS). Springer, 2009.

    Google Scholar 

  11. Shang-Wen Cheng, VaheV. Poladian, David Garlan, and Bradley Schmerl. Improving architecture-based self-adaptation through resource prediction. In Betty H.C. Cheng, Rogerio de Lemos, Holger Giese, Paola Inverardi, and Jeff Magee, editors, Software Engineering for Self-Adaptive Systems, volume 5525 of Lecture Notes in Computer Science (LNCS), pages 71–88. Springer, 2009.

    Google Scholar 

  12. M.T. Cox. Metacognition in computation: A selected research review. Art. Int., 169(2):104–141, 2005.

    Google Scholar 

  13. Rogério de Lemos, Holger Giese, Hausi Müller, and Mary Shaw, editors. Software Engineering for Self-Adaptive Systems II, volume 7475 of Lecture Notes in Computer Science (LNCS). Springer, 2013.

    Google Scholar 

  14. Rogério de Lemos, Holger Giese, Hausi Müller, Mary Shaw, Jesper Andersson, Marin Litoiu, Bradley Schmerl, Gabriel Tamura, Norha M. Villegas, Thomas Vogel, Danny Weyns, Luciano Baresi, Basil Becker, Nelly Bencomo, Yuriy Brun, Bojan Cukic, Ron Desmarais, Schahram Dustdar, Gregor Engels, Kurt Geihs, Karl Goeschka, Alessandra Gorla, Vincenzo Grassi, Paola Inverardi, Gabor Karsai, Jeff Kramer, Antónia Lopes, Jeff Magee, Sam Malek, Serge Mankovskii, Raffaela Mirandola, John Mylopoulos, Oscar Nierstrasz, Mauro Pezzè, Christian Prehofer, Wilhelm Schäfer, Rick Schlichting, Dennis B. Smith, Joao P. Sousa, Ladan Tahvildari, Kenny Wong, and Jochen Wuttke. Software Engineering for Self-Adaptive Systems: A second Research Roadmap. In Rogério de Lemos, Holger Giese, Hausi Müller, and Mary Shaw, editors, Software Engineering for Self-Adaptive Systems II, volume 7475 of Lecture Notes in Computer Science (LNCS), pages 1–32. Springer, 2013.

    Google Scholar 

  15. Marco Dorigo, Vito Trianni, Erol Şahin, Roderich Groß, Thomas H. Labella, Gianluca Baldassarre, Stefano Nolfi, Jean-Louis Deneubourg, Francesco Mondada, Dario Floreano, and Luca M. Gambardella. Evolving self-organizing behaviors for a swarm-bot. Autonomous Robots, 17:223–245, 2004.

    Google Scholar 

  16. Sylvain Frey, Ada Diaconescu, and Isabelle M. Demeure. Architectural Integration Patterns for Autonomic Management Systems. In Proc. of the 9th IEEE International Conference and Workshops on the Engineering of Autonomic and Autonomous Systems (EASe 2012), 2012.

    Google Scholar 

  17. David Garlan, Shang-Wen Cheng, An-Cheng Huang, Bradley R. Schmerl, and Peter Steenkiste. Rainbow: Architecture-based self-adaptation with reusable infrastructure. IEEE Computer, 37(10):46–54, 2004.

    Google Scholar 

  18. Holger Giese and Wilhelm Schfer. Model-Driven Development of Safe Self-Optimizing Mechatronic Systems with MechatronicUML. In Javier Camara, Rogrio de Lemos, Carlo Ghezzi, and Antónia Lopes, editors, Assurances for Self-Adaptive Systems, volume 7740 of Lecture Notes in Computer Science (LNCS), pages 152–186. Springer, 2013.

    Google Scholar 

  19. Julia Hielscher, Raman Kazhamiakin, Andreas Metzger, and Marco Pistore. A framework for proactive self-adaptation of service-based applications based on online testing. In Petri Mahonen, Klaus Pohl, and Thierry Priol, editors, Towards a Service-Based Internet, volume 5377 of Lecture Notes in Computer Science (LNCS), pages 122–133. Springer, 2008.

    Google Scholar 

  20. Henry Hoffmann, Martina Maggio, Marco D. Santambrogio, Alberto Leva, and Anant Agarwal. Seec: A general and extensible framework for self-aware computing. Technical Report MIT-CSAIL-TR-2011-046, MIT CSAIL, 2011.

    Google Scholar 

  21. John E. Kelly and Steve Hamm. Smart machines: IBM’s Watson and the era of cognitive computing. Columbia Business School Publishing, 2013.

    Google Scholar 

  22. Jeffrey O. Kephart and David M. Chess. The vision of autonomic computing. Computer, 36(1):41–50, 2003.

    Google Scholar 

  23. Samuel Kounev. Self-Aware Software and Systems Engineering: A Vision and Research Roadmap. In GI Softwaretechnik-Trends, 31(4), November 2011, Karlsruhe, Germany, 2011.

    Google Scholar 

  24. Jeff Kramer and Jeff Magee. Self-Managed Systems: an Architectural Challenge. In FOSE ’07: Future of Software Engineering, pages 259–268. IEEE, 2007.

    Google Scholar 

  25. Peter R. Lewis, Arjun Chandra, Funmilade Faniyi, Kyrre Glette, Tao Chen, Rami Bahsoon, Jim Torresen, and Xin Yao. Architectural aspects of self-aware and self-expressive computing systems: From psychology to engineering. IEEE Computer, 48(8):62–70, 2015.

    Google Scholar 

  26. Janet Metcalfe and Arthur P. Shimamura, editors. Metacognition: Knowing about knowing. MIT Press, Cambridge, MA, USA, 1994.

    Google Scholar 

  27. Melanie Mitchell. Self-awareness and control in decentralized systems (Tech Report SS-05-04). In AAAI Spring Symp. on Metacognition in Computation, Menlo Park, 2005. AIII Press.

    Google Scholar 

  28. Hausi A. Müller, Mauro Pezzè, and Mary Shaw. Visibility of Control in Adaptive Systems. In Proceedings of the 2nd International Workshop on Ultra-large-scale Software-intensive Systems, ULSSIS ’08, pages 23–26. ACM, 2008.

    Google Scholar 

  29. Christian Muller-Schloer, Hartmut Schmeck, and Theo Ungerer, editors. Organic Computing - A Paradigm Shift for Complex Systems. Birkhuser, 2011.

    Google Scholar 

  30. Hausi A. Mller, Holger M. Kienle, and Ulrike Stege. Autonomic Computing Now You See It, Now You Don’t. In Andrea Lucia and Filomena Ferrucci, editors, Software Engineering: International Summer Schools, ISSSE 2006-2008, Salerno, Italy, Revised Tutorial Lectures, volume 5413 of Lecture Notes in Computer Science (LNCS), pages 32–54. Springer, 2009.

    Google Scholar 

  31. Object Management Group. OMG Systems Modeling Language (OMG SysML\(^{TM}\)), 2015. Version 1.4, formal/2015-06-03.

    Google Scholar 

  32. Object Management Group. OMG Unified Modeling Language\(^{TM}\) (OMG UML), 2015. Version 2.5, formal/2015-03-01.

    Google Scholar 

  33. L.D. Paulson. DARPA creating self-aware computing. Computer, 36(3):24, 2003.

    Google Scholar 

  34. Mazeiar Salehie and Ladan Tahvildari. Self-adaptive software: Landscape and research challenges. ACM Trans. Auton. Adapt. Syst., 4(2):1–42, 2009.

    Google Scholar 

  35. Mary Shaw. Beyond objects: A software design paradigm based on process control. ACM SIGSOFT Software Engineering Notes, 20(1):27–38, 1995.

    Google Scholar 

  36. Mary Shaw and David Garlan. An Introduction to Software Architecture. volume 2, pages 1–39. World Scientific Publishing Company, 1993.

    Google Scholar 

  37. Vítor E. Silva Souza, Alexei Lapouchnian, William N. Robinson, and John Mylopoulos. Awareness requirements for adaptive systems. In Proc. of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, pages 60–69. ACM, 2011.

    Google Scholar 

  38. Clemens Szyperski, Dirk Gruntz, and Stephan Murer. Component Software Beyond Object-Oriented Programming. Component Software. Addison-Wesley, New York, NY, USA, 2nd edition, 2002.

    Google Scholar 

  39. Thomas Vogel and Holger Giese. Adaptation and Abstract Runtime Models. In Proceedings of the 5th Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2010), pages 39–48. ACM, May 2010.

    Google Scholar 

  40. Thomas Vogel and Holger Giese. Model-driven engineering of self-adaptive software with eurema. ACM Trans. Auton. Adapt. Syst., 8(4):18:1–18:33, 2014.

    Google Scholar 

  41. Thomas Vogel, Andreas Seibel, and Holger Giese. The Role of Models and Megamodels at Runtime. In Juergen Dingel and Arnor Solberg, editors, Models in Software Engineering, Workshops and Symposia at MODELS 2010, Reports and Revised Selected Papers, volume 6627 of Lecture Notes in Computer Science (LNCS), pages 224–238. Springer, 2011.

    Google Scholar 

  42. Eric Yuan, Naeem Esfahani, and Sam Malek. Automated mining of software component interactions for self-adaptation. In Proceedings of the 9th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS’14, pages 27–36. ACM, 2014.

    Google Scholar 

  43. Franco Zambonelli, Nicola Bicocchi, Giacomo Cabri, Letizia Leonardi, and Mariachiara Puviani. On self-adaptation, self-expression, and self-awareness in autonomic service component ensembles. In Proc. of the Fifth IEEE Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW), pages 108–113. IEEE, 2011.

    Google Scholar 

Download references

Acknowledgements

This chapter is the result of stimulating discussions among the authors and other participants, especially Peter Lewis, Nelly Bencomo, Kurt Geihs, Kirstie Bellman, Chris Landauer, and Paola Inverardi, during the seminar on Model-driven Algorithms and Architectures for Self-Aware Computing Systems at Schloss Dagstuhl in January 2015 (http://www.dagstuhl.de/15041).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Holger Giese .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this chapter

Cite this chapter

Giese, H., Vogel, T., Diaconescu, A., Götz, S., Kounev, S. (2017). Architectural Concepts for Self-aware Computing Systems. In: Kounev, S., Kephart, J., Milenkoski, A., Zhu, X. (eds) Self-Aware Computing Systems. Springer, Cham. https://doi.org/10.1007/978-3-319-47474-8_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-47474-8_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-47472-4

  • Online ISBN: 978-3-319-47474-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics