This book provides formal and informal definitions and taxonomies for self-aware computing systems, and explains how self-aware computing relates to many existing subfields of computer science, especially software engineering. It describes architectures and algorithms for self-aware systems as well as the benefits and pitfalls of self-awareness, and reviews much of the latest relevant research across a wide array of disciplines, including open research challenges.

The chapters of this book are organized into five parts: Introduction, System Architectures, Methods and Algorithms, Applications and Case Studies, and Outlook. Part I offers an introduction that defines self-aware computing systems from multiple perspectives, and establishes a formal definition, a taxonomy and a set of reference scenarios that help to unify the remaining chapters. Next, Part II explores architectures for self-aware computing systems, such as generic concepts and notations that allow a wide range of self-aware system architectures to be described and compared with both isolated and interacting systems. It also reviews the current state of reference architectures, architectural frameworks, and languages for self-aware systems. Part III focuses on methods and algorithms for self-aware computing systems by addressing issues pertaining to system design, like modeling, synthesis and verification. It also examines topics such as adaptation, benchmarks and metrics. Part IV then presents applications and case studies in various domains including cloud computing, data centers, cyber-physical systems, and the degree to which self-aware computing approaches have been adopted within those domains. Lastly, Part V surveys open challenges and future research directions for self-aware computing systems.

It can be used as a handbook for professionals and researchers working in areas related to self-aware computing, and can also serve as an advanced textbook for lecturers and postgraduate students studying subjects like advanced software engineering, autonomic computing, self-adaptive systems, and data-center resource management. Each chapter is largely self-contained, and offers plenty of references for anyone wishing to pursue the topic more deeply.



Samuel Kounev is a professor and chair of software engineering at the University of Würzburg. His research is focussed on software design, modeling and architecture-based analysis; systems benchmarking and experimental analysis; and autonomic and self-aware computing. He has led a number of activities on self-aware computing, including a Dagstuhl seminar in 2015 that inspired the work on this book. He currently serves as chair of the steering committees of the SPEC Research Group, the IEEE International Conference on Autonomic Computing (ICAC), and the ACM/SPEC International Conference on Performance Engineering (ICPE).

Jeffrey O. Kephart is a Distinguished Research Staff Member at IBM T.J. Watson Research Center, where he co-leads IBM's embodied cognition research strategy. In addition to cognitive computing, his research interests include autonomic computing, machine learning, nonlinear dynamics, and reducing energy consumption in data centers. In 2003, he co-wrote an article in IEEE Computer entitled 'The Vision of Autonomic Computing' that is the most widely cited article in the field of autonomic computing, with over 5000 citations. Jeffrey O. Kephart is a co-founder of the International Conference on Autonomic Computing (ICAC). 
Aleksandar Milenkoski is an IT-security expert at ERNW (Enno Rey Netzwerke) GmbH. His research interests include security of dynamic computing infrastructures and security-relevant properties of self-aware systems, such as self-protection. He helped organizing the Dagstuhl seminar 'Model-driven Algorithms and Architectures for Self-Aware Computing Systems', which inspired the work on this book.
Xiaoyun Zhu is a Senior Cloud Architect at Futurewei Technologies (aka. Huawei US R&D Center). She previously worked at VMware and HP Labs. Her work has focused on building self-managing computing systems and software using machine learning, feedback control and optimization. She has co-authored over 50 technical papers in peer-reviewed journals and conferences, and holds over 20 patents. She co-founded the International Workshop on Feedback Computing, and has been actively involved in the organization of several international conferences in the areas of autonomic and cloud computing.

Verwandte Artikel