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.
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.
This comprehensive book brings together research focusing on how to manage trade-offs to help engineers architect adaptive systems in different business contexts, including state-of-the-art techniques, methodologies, tools, best practices, guidelines and guidance on future software engineering research and practice.
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 Global Software
Engineering 2009 and 2010 and IEEE International Workshop on the
Future of Software Engineering for/in the Cloud (FoSEC) held in
conjunction with IEEE Cloud 2011.He has been the guest-editor of
IEE Proceedings Software: A special Issue on Relating Software
Requirements and Architectures published by IEE in 2005 and the
lead-editor of the book Rationale Management in Software
Engineering published by Springer in 2006. He has been the
co-author of the book Rationale-Based Software Engineering
published by Springer in May 2008. He has been the lead-editor of
the book Collaborative Software Engineering published by Springer
in 2010, the book on Relating Software Requirements and
Architectures published by Springer in 2011 and the lead-editor of
the book on Aligning Enterprise, System, and Software Architectures
published by IGI Global in 2012. He was the lead-editor of the
Expert Systems Special Issue on Knowledge Engineering in Global
Software Development and the co-editor of the JSS Special Issue on
the Future of Software Engineering for/in the Cloud, both published
in 2013. He was the co-editor for the book on Agile Software
Architecture published in 2013. Currently, he is the lead-editor
for the book on Economics-driven Software Architecture to be
published in 2014.
Nour Ali is a Senior Lecturer at the University of Brighton since
December, 2012. She holds a PhD in Software Engineering from the
Polytechnic University of Valencia-Spain for her work in Ambients
in Aspect-Oriented Software Architecture. Her research area
encompasses service oriented architecture, software architecture,
model driven engineering and mobile systems. In 2014, the
University of Brighton have awarded her a Rising Stars project in
Service Oriented Architecture Recovery and Consistency. Rick Kazman
is a Professor at the University of Hawaii and a Principal
Researcher at the Software Engineering Institute of Carnegie Mellon
University. His primary research interests are software
architecture, design and analysis tools, software visualization,
and software engineering economics. He also has interests in
human-computer interaction and information retrieval. Kazman has
created several highly influential methods and tools for
architecture analysis, including the SAAM (Software Architecture
Analysis Method), the ATAM (Architecture Tradeoff Analysis Method),
the CBAM (Cost-Benefit Analysis Method) and the Dali architecture
reverse engineering tool. John Grundy is Professor of Software
Engineering, Dean of Software and Electrical Engineering and
Director of the Centre for Computing and Engineering Software
Systems at the Swinburne University of Technology. Previously he
was Professor of Software Engineering and Head of Department for
Electrical and Computer Engineering at the University of Auckland,
New Zealand. He is Assistant Editor in Chief of IEEE Transactions
on Software Engineering, and Associate Editor for IEEE Software and
Automated Software Engineering. He is on the Steering Committee of
the IEEE/ACM International Conference on Automated Software
Engineering. Bradley Schmerl is a Senior Systems Scientist in the
School of Computer Science at Carnegie Mellon University, USA. He
has been involved in research in self-adaptive systems for over 20
years, starting with his Ph.D. at Flinders University in South
Australia, which investigated using configuration management
techniques to manage dynamically changing systems. He was a
Lecturer at Flinders University and an Assistant Professor at
Clemson University in South Carolina before joining CMU in 2000. At
CMU he has been involved in research using software architecture
models as a basis for reasoning about self-adapting systems,
including using utility theory to select appropriate strategies
that balance multiple quality and business priorities.
Contributions Include:
· Norha M. Villegas (Universidad Icesi, Colombia) discusses
architecting software systems for runtime self-adaptation:
concepts, models, instrumentation and challenges
· Mohamed Almorsy Abdelrazek (Deakin University, Australia)
explores adaptive security for software systems
· Sam Malek (University of California, Irvine, USA) delves
into automated inference techniques to assist with construction of
adaptable software architectures
· Javier Camara (Carnegie Mellon University, USA) evaluates
trade-offs of human involvement in self-adaptive systems
· Maria Salama (University of Birmingham, UK) presents a
systematic mapping study on managing trade-offs in self-adaptive
architectures
· Amel Bennaceur (The Open University, UK) examines the many
facets of mediation: a requirements-driven approach for trading-off
mediation solutions
· Claudia Raibulet (University of Milano-Bicocca, Italy)
proposes an overview of quality evaluation mechanisms for
self-adaptive systems
Plus Forewords from:
· David Garlan (Carnegie Mellon University, USA)
· Nenad Medvidovic (University of Southern California, USA)
on the Golden Age of software architecture, that continues on in
finding solutions to the problem of how quality trade-offs are
managed in adaptable software architectures.
· Paris Avgeriou (University of Groningen, Netherlands) on
the current problems and potential solutions in managing tradeoffs
of quality attributes in self-adaptive architectures
· Rogerio De Lemos (University of Kent, UK)
And much more...
![]() |
Ask a Question About this Product More... |
![]() |