An Introduction to Self-adaptive Systems
Home > Computing and Information Technology > Computer programming / software engineering > Software Engineering > An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective(IEEE Press)
An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective(IEEE Press)

An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective(IEEE Press)

|
     0     
5
4
3
2
1




Out of Stock


Notify me when this book is in stock
About the Book

A concise and practical introduction to the foundations and engineering principles of self-adaptation Though it has recently gained significant momentum, the topic of self-adaptation remains largely under-addressed in academic and technical literature. This book changes that. Using a systematic and holistic approach, An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective provides readers with an accessible set of basic principles, engineering foundations, and applications of self-adaptation in software-intensive systems. It places self-adaptation in the context of techniques like uncertainty management, feedback control, online reasoning, and machine learning while acknowledging the growing consensus in the software engineering community that self-adaptation will be a crucial enabling feature in tackling the challenges of new, emerging, and future systems. The author combines cutting-edge technical research with basic principles and real-world insights to create a practical and strategically effective guide to self-adaptation. He includes features such as: An analysis of the foundational engineering principles and applications of self-adaptation in different domains, including the Internet-of-Things, cloud computing, and cyber-physical systems End-of-chapter exercises at four different levels of complexity and difficulty An accompanying author-hosted website with slides, selected exercises and solutions, models, and code Perfect for researchers, students, teachers, industry leaders, and practitioners in fields that directly or peripherally involve software engineering, as well as those in academia involved in a class on self-adaptivity, this book belongs on the shelves of anyone with an interest in the future of software and its engineering.

Table of Contents:
Foreword xi Acknowledgments xv Acronyms xvii Introduction xix 1 Basic Principles of Self-Adaptation and Conceptual Model 1 1.1 Principles of Self-Adaptation 2 1.2 Other Adaptation Approaches 4 1.3 Scope of Self-Adaptation 5 1.4 Conceptual Model of a Self-Adaptive System 5 1.4.1 Environment 5 1.4.2 Managed System 7 1.4.3 Adaptation Goals 8 1.4.4 Feedback Loop 8 1.4.5 Conceptual Model Applied 10 1.5 A Note on Model Abstractions 11 1.6 Summary 11 1.7 Exercises 12 1.8 Bibliographic Notes 14 2 Engineering Self-Adaptive Systems: A Short Tour in Seven Waves 17 2.1 Overview of the Waves 18 2.2 Contributions Enabled by the Waves 20 2.3 Waves Over Time with Selected Work 20 2.4 Summary 22 2.5 Bibliographic Notes 23 3 Internet-of-Things Application 25 3.1 Technical Description 25 3.2 Uncertainties 28 3.3 Quality Requirements and Adaptation Problem 29 3.4 Summary 29 3.5 Exercises 30 3.6 Bibliographic Notes 31 4 Wave I: Automating Tasks 33 4.1 Autonomic Computing 34 4.2 Utility Functions 35 4.3 Essential Maintenance Tasks for Automation 37 4.3.1 Self-Optimization 37 4.3.2 Self-Healing 38 4.3.3 Self-Protection 40 4.3.4 Self-Configuration 42 4.4 Primary Functions of Self-Adaptation 43 4.4.1 Knowledge 44 4.4.2 Monitor 46 4.4.3 Analyzer 47 4.4.4 Planner 49 4.4.5 Executor 51 4.5 Software Evolution and Self-Adaptation 52 4.5.1 Software Evolution Management 53 4.5.2 Self-Adaptation Management 54 4.5.3 Integrating Software Evolution and Self-Adaptation 55 4.6 Summary 56 4.7 Exercises 59 4.8 Bibliographic Notes 60 5 Wave II: Architecture-based Adaptation 63 5.1 Rationale for an Architectural Perspective 64 5.2 Three-Layer Model for Self-Adaptive Systems 66 5.2.1 Component Control 67 5.2.2 Change Management 67 5.2.3 Goal Management 68 5.2.4 Three-Layer Model Applied to DeltaIoT 68 5.2.5 Mapping Between the Three-Layer Model and the Conceptual Model for Self-Adaptation 70 5.3 Reasoning about Adaptation using an Architectural Model 70 5.3.1 Runtime Architecture of Architecture-based Adaptation 71 5.3.2 Architecture-based Adaptation of the Web-based Client-Server System 73 5.4 Comprehensive Reference Model for Self-Adaptation 75 5.4.1 Reflection Perspective on Self-Adaptation 76 5.4.2 MAPE-K Perspective on Self-Adaptation 78 5.4.3 Distribution Perspective on Self-Adaptation 79 5.5 Summary 83 5.6 Exercises 84 5.7 Bibliographic Notes 87 6 Wave III: Runtime Models 89 6.1 What is a Runtime Model? 90 6.2 Causality and Weak Causality 90 6.3 Motivations for Runtime Models 91 6.4 Dimensions of Runtime Models 92 6.4.1 Structural versus Behavioral 93 6.4.2 Declarative versus Procedural 94 6.4.3 Functional versus Qualitative 95 6.4.3.1 Functional Models 95 6.4.3.2 Quality Models 95 6.4.4 Formal versus Informal 98 6.5 Principal Strategies for Using Runtime Models 101 6.5.1 MAPE Components Share K Models 101 6.5.2 MAPE Components Exchange K Models 103 6.5.2.1 Runtime Models 103 6.5.2.2 Components of the Managing System 104 6.5.3 MAPE Models Share K Models 105 6.6 Summary 108 6.7 Exercises 109 6.8 Bibliographic Notes 114 7 Wave IV: Requirements-driven Adaptation 115 7.1 Relaxing Requirements for Self-Adaptation 116 7.1.1 Specification Language to Relax Requirements 116 7.1.1.1 Language Operators for Handling Uncertainty 116 7.1.1.2 Semantics of Language Primitives 118 7.1.2 Operationalization of Relaxed Requirements 118 7.1.2.1 Handing Uncertainty 118 7.1.2.2 Requirements Reflection and Mitigation Mechanisms 119 7.1.2.3 A Note on the Realization of Requirements Reflection 121 7.2 Meta-Requirements for Self-Adaptation 122 7.2.1 Awareness Requirements 123 7.2.2 Evolution Requirements 124 7.2.3 Operationalization of Meta-requirements 126 7.3 Functional Requirements of Feedback Loops 127 7.3.1 Design and Verify Feedback Loop Model 128 7.3.2 Deploy and Execute Verified Feedback Loop Model 130 7.4 Summary 131 7.5 Exercises 132 7.6 Bibliographic Notes 134 8 Wave V: Guarantees Under Uncertainties 137 8.1 Uncertainties in Self-Adaptive Systems 139 8.2 Taming Uncertainty with Formal Techniques 141 8.2.1 Analysis of Adaptation Options 141 8.2.2 Selection of Best Adaptation Option 143 8.3 Exhaustive Verification to Provide Guarantees for Adaptation Goals 144 8.4 Statistical Verification to Provide Guarantees for Adaptation Goals 149 8.5 Proactive Decision-Making using Probabilistic Model Checking 154 8.6 A Note on Verification and Validation 160 8.7 Integrated Process to Tame Uncertainty 160 8.7.1 Stage I: Implement and Verify the Managing System 161 8.7.2 Stage II: Deploy the Managing System 162 8.7.3 Stage III: Verify Adaptation Options, Decide, and Adapt 163 8.7.4 Stage IV: Evolve Adaptation Goals and Managing System 163 8.8 Summary 164 8.9 Exercises 165 8.10 Bibliographic Notes 168 9 Wave VI: Control-based Software Adaptation 171 9.1 A Brief Introduction to Control Theory 173 9.1.1 Controller Design 174 9.1.2 Control Properties 175 9.1.3 SISO and MIMO Control Systems 176 9.1.4 Adaptive Control 177 9.2 Automatic Construction of SISO Controllers 177 9.2.1 Phases of Controller Construction and Operation 178 9.2.2 Model Updates 179 9.2.3 Formal Guarantees 181 9.2.4 Example: Geo-Localization Service 183 9.3 Automatic Construction of MIMO Controllers 184 9.3.1 Phases of Controller Construction and Operation 184 9.3.2 Formal Guarantees 186 9.3.3 Example: Unmanned Underwater Vehicle 186 9.4 Model Predictive Control 189 9.4.1 Controller Construction and Operation 189 9.4.2 Formal Assessment 191 9.4.3 Example: Video Compression 192 9.5 A Note on Control Guarantees 194 9.6 Summary 194 9.7 Exercises 196 9.8 Bibliographic Notes 199 10 Wave VII: Learning from Experience 201 10.1 Keeping Runtime Models Up-to-Date Using Learning 203 10.1.1 Runtime Quality Model 204 10.1.2 Overview of Bayesian Approach 205 10.2 Reducing Large Adaptation Spaces Using Learning 208 10.2.1 Illustration of the Problem 208 10.2.2 Overview of the Learning Approach 210 10.3 Learning and Improving Scaling Rules of a Cloud Infrastructure 213 10.3.1 Overview of the Fuzzy Learning Approach 214 10.3.1.1 Fuzzy Logic Controller 214 10.3.1.2 Fuzzy Q-learning 217 10.3.1.3 Experiments 221 10.4 Summary 223 10.5 Exercises 225 10.6 Bibliographic Notes 226 11 Maturity of the Field and Open Challenges 227 11.1 Analysis of the Maturity of the Field 227 11.1.1 Basic Research 227 11.1.2 Concept Formulation 228 11.1.3 Development and Extension 229 11.1.4 Internal Enhancement and Exploration 229 11.1.5 External Enhancement and Exploration 230 11.1.6 Popularization 230 11.1.7 Conclusion 231 11.2 Open Challenges 231 11.2.1 Challenges Within the Current Waves 231 11.2.1.1 Evidence for the Value of Self-Adaptation 231 11.2.1.2 Decentralized Settings 232 11.2.1.3 Domain-Specific Modeling Languages 232 11.2.1.4 Changing Goals at Runtime 233 11.2.1.5 Complex Types of Uncertainties 233 11.2.1.6 Control Properties versus Quality Properties 234 11.2.1.7 Search-based Techniques 234 11.2.2 Challenges Beyond the Current Waves 235 11.2.2.1 Exploiting Artificial Intelligence 235 11.2.2.2 Dealing with Unanticipated Change 236 11.2.2.3 Trust and Humans in the Loop 236 11.2.2.4 Ethics for Self-Adaptive Systems 237 11.3 Epilogue 239 Bibliography 241 Index 263


Best Sellers


Product Details
  • ISBN-13: 9781119574927
  • Publisher: John Wiley & Sons Inc
  • Publisher Imprint: Standards Information Network
  • Language: English
  • Series Title: IEEE Press
  • ISBN-10: 1119574927
  • Publisher Date: 19 Oct 2020
  • Binding: Digital (delivered electronically)
  • No of Pages: 288
  • Sub Title: A Contemporary Software Engineering Perspective


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective(IEEE Press)
John Wiley & Sons Inc -
An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective(IEEE Press)
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective(IEEE Press)

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!