Managing Trade-offs in Adaptable Software Architectures

Coordinators: Mistrik Ivan, Ali Nour, Kazman Rick, Grundy John, Schmerl Bradley

Language: English

96.04 €

In Print (Delivery period: 14 days).

Add to cartAdd to cart
Publication date:
Support: Print on demand

Managing Trade-Offs in Adaptable Software Architectures explores the latest research on adapting large complex systems to changing requirements. To be able to adapt a system, engineers must evaluate different quality attributes, including trade-offs to balance functional and quality requirements to maintain a well-functioning system throughout the lifetime of the system.

This comprehensive resource brings together research focusing on how to manage trade-offs and architect adaptive systems in different business contexts. It presents state-of-the-art techniques, methodologies, tools, best practices, and guidelines for developing adaptive systems, and offers guidance for future software engineering research and practice.

Each contributed chapter considers the practical application of the topic through case studies, experiments, empirical validation, or systematic comparisons with other approaches already in practice. Topics of interest include, but are not limited to, how to architect a system for adaptability, software architecture for self-adaptive systems, understanding and balancing the trade-offs involved, architectural patterns for self-adaptive systems, how quality attributes are exhibited by the architecture of the system, how to connect the quality of a software architecture to system architecture or other system considerations, and more.

1. Managing Trade-Offs in Adaptable Software Architectures

Part I: Concepts and Models for Self-Adaptive Software Architectures 2. Architecting Software Systems for Runtime Self-Adaptation: Concepts, Models, and Challenges 3. A Classification Framework of Uncertainty in Architecture-Based Self-Adaptive Systems With Multiple Quality Requirements 4. An Architecture Viewpoint for Modeling Dynamically Configurable Software Systems 5. Adaptive Security for Software Systems

Part II: Analyzing and Evaluating Trade-Offs in Self-Adaptive Software Architectures 6. Automated Inference Techniques to Assist With the Construction of Self-Adaptive Software 7. Evaluating Trade-Offs of Human Involvement in Self-Adaptive Systems 8. Principled Eliciting and Evaluation of Trade-Offs When Designing Self-Adaptive Systems Architectures 9. Analyzing the Architectures of Software-Intensive Ecosystems 10. Architectural Perspective for Design and Analysis of Scalable Software as a Service Architectures

Part III: Managing Trade-Offs in Self-Adaptive Software Architectures 11. Managing Trade-offs in Self-Adaptive Software Architectures: A Systematic Mapping Study 12. The Many Facets of Mediation: A Requirements-Driven Approach for Trading Off Mediation Solutions

Part IV: Quality Assurance in Self-Adaptive Software Architectures 13. An Overview on Quality Evaluation of Self-Adaptive Systems 14. Identifying and Handling Uncertainties in the Feedback Control Loop

Ivan Mistrik is a computer scientist who is interested in system and software engineering (SE/SWE) and in system and software architecture (SA/SWA), in particular: life cycle system/software engineering, requirements engineering, relating software requirements and architectures, knowledge management in software development, rationale-based software development, aligning enterprise/system/software architectures, and collaborative system/software engineering. He has more than forty years’ experience in the field of computer systems engineering as an information systems developer, R&D leader, SE/SA research analyst, educator in computer sciences, and ICT management consultant.

In the past 40 years, he has been primarily working at various R&D institutions and has done consulting on a variety of large international projects sponsored by ESA, EU, NASA, NATO, and UN. He has also taught university-level computer sciences courses in software engineering, software architecture, distributed information systems, and human-computer interaction. He is the author or co-author of more than 80 articles and papers in international journals, conferences, books and workshops, most recently a chapter Capture of Software Requirements and Rationale through Collaborative Software Development, a paper Knowledge Management in the Global Software Engineering Environment, and a paper Architectural Knowledge Management in Global Software Development.

He has written a number of editorials and prefaces, most recently for the book on Aligning Enterprise, System, and Software Architecture and the book on Agile Software Architecture. He has also written over 120 technical reports and presented over 70 scientific/technical talks. He has served in many program committees and panels of reputable international conferences and organized a number of scientific workshops, most recently two workshops on Knowledge Engineering in Global Software and Development at International Conference on

  • Explains software architectural processes and metrics supporting highly adaptive and complex engineering
  • Covers validation, verification, security, and quality assurance in system design
  • Discusses domain-specific software engineering issues for cloud-based, mobile, context-sensitive, cyber-physical, ultra-large-scale/internet-scale systems, mash-up, and autonomic systems
  • Includes practical case studies of complex, adaptive, and context-critical systems