Relating Software Requirements and Architectures [electronic resource] /
Avgeriou, Paris.editor.
Grundy, John.editor.
Hall, Jon G.editor.
Lago, Patricia.editor.
Mistrík, Ivan.editor.
Why have a book about the relation between requirements and software architecture? Understanding the relation between requirements and architecture is important because the requirements, be they explicit or implicit, represent the function, whereas the architecture determines the form. While changes to a set of requirements may impact on the realization of the architecture, choices made for an architectural solution may impact on requirements, e.g., in terms of revising functional or non-functional requirements that cannot actually be met. Although research in both requirements engineering and software architecture is quite active, it is in their combination that understanding is most needed and actively sought. Presenting the current state of the art is the purpose of this book. The editors have divided the contributions into four parts: Part 1 “Theoretical Underpinnings and Reviews” addresses the issue of requirements change management in architectural design through traceability and reasoning. Part 2 “Tools and Techniques” presents approaches, tools, and techniques for bridging the gap between software requirements and architecture. Part 3 “Experiences from Industrial Projects” then reports on case studies from industry, while part 4 on “Emerging Issues” details advanced topics such as synthesizing architecture from requirements or the role of middleware in architecting for non-functional requirements. The final chapter is a conclusions chapter identifying key contributions and outstanding areas for future research and improvement of practice. The book is targeted at academic and industrial researchers in requirements engineering or software architecture. Graduate students specializing in these areas as well as advanced professionals in software development will also benefit from the results and experiences presented in this volume.
Description based upon print version of record.
Includes bibliographical references and index.
Introduction: relating requirements and architectures -- Part 1 Theoretical Underpinnings and Reviews -- Anticipating Change in Requirements Engineering -- Traceability in the Co-evolution of Architectural Requirements and Design -- Understanding Architectural Elements from Requirements Traceability Networks -- Part 2 Tools and Techniques -- Goal-Oriented Software Architecting -- Product-Line Models to Address Requirements Uncertainty, Volatility and Risk -- Systematic Architectural Design based on Problem Patterns -- Adaptation Goals for Adaptive Service-oriented Architectures -- Business Goals and Architecture -- Part 3 Experiences from Industrial Projects -- A Reference Architecture for Consumer Electronics Products and its Application in Requirements Engineering -- Using Model-Driven Views and Trace Links to Relate Requirements and Architecture: A Case Study -- Managing Artifacts with a Viewpoint-Realization Level Matrix -- Onions, Pyramids & Loops - From Requirements to Software Architecture -- Part 4 Emerging Issues in Relating Software Requirements and Architecture -- Synthesizing Architecture from Requirements: A Genetic Approach -- How Software Architecture can Frame, Constrain and Inspire System Requirements -- Economics-driven Architecting for Non functional Requirements in the Presence of Middleware -- Conclusions.
Why have a book about the relation between requirements and software architecture? Understanding the relation between requirements and architecture is important because the requirements, be they explicit or implicit, represent the function, whereas the architecture determines the form. While changes to a set of requirements may impact on the realization of the architecture, choices made for an architectural solution may impact on requirements, e.g., in terms of revising functional or non-functional requirements that cannot actually be met. Although research in both requirements engineering and software architecture is quite active, it is in their combination that understanding is most needed and actively sought. Presenting the current state of the art is the purpose of this book. The editors have divided the contributions into four parts: Part 1 “Theoretical Underpinnings and Reviews” addresses the issue of requirements change management in architectural design through traceability and reasoning. Part 2 “Tools and Techniques” presents approaches, tools, and techniques for bridging the gap between software requirements and architecture. Part 3 “Experiences from Industrial Projects” then reports on case studies from industry, while part 4 on “Emerging Issues” details advanced topics such as synthesizing architecture from requirements or the role of middleware in architecting for non-functional requirements. The final chapter is a conclusions chapter identifying key contributions and outstanding areas for future research and improvement of practice. The book is targeted at academic and industrial researchers in requirements engineering or software architecture. Graduate students specializing in these areas as well as advanced professionals in software development will also benefit from the results and experiences presented in this volume.
Software engineering.
Management information systems.
Computer science.
Software Engineering.
Management of Computing and Information Systems.