Aspect-Oriented Requirements Engineering [electronic resource] /
Moreira, Ana.editor.
Chitchyan, Ruzanna.editor.
Araújo, João.editor.
Rashid, Awais.editor.
Broadly-scoped requirements such as security, privacy, and response time are a major source of complexity in modern software systems. This is due to their tangled inter-relationships with and effects on other requirements. Aspect-Oriented Requirements Engineering (AORE) aims to facilitate modularisation of such broadly-scoped requirements, so that software developers are able to reason about them in isolation - one at a time. AORE also captures these inter-relationships and effects in well-defined composition specifications, and, in so doing exposes the causes for potential conflicts, trade-offs, and roots for the key early architectural decisions. Over the last decade, significant work has been carried out in the field of AORE. With this book the editors aim to provide a consolidated overview of these efforts and results. The individual contributions discuss how aspects can be identified, represented, composed and reasoned about, as well as how they are used in specific domains and in industry. Thus, the book does not present one particular AORE approach, but conveys a broad understanding of the aspect-oriented perspective on requirements engineering. The chapters are organized into five sections: concern identification in requirements, concern modelling and composition, domain-specific use of AORE, aspect interactions, and AORE in industry. This book provides readers with the most comprehensive coverage of AORE and the capabilities it offers to those grappling with the complexity arising from broadly-scoped requirements - a phenomenon that is, without doubt, universal across software systems. Software engineers and related professionals in industry, as well as advanced undergraduate and post-graduate students and researchers, will benefit from these comprehensive descriptions and the industrial case studies.
Description based upon print version of record.
Includes bibliographical references and index.
Chapter 1: Aspect-Oriented Requirements Engineering -- Section 1: Concern Identification in Requirements -- Chapter 2: Aspect Identification in Textual Requirements with EA-Miner -- Chapter 3: Reasoning about Dynamic Aspectual Requirements -- Section 2: Concern Modelling and Composition -- Chapter 4: AO Aspect-Oriented Compositions for Dynamic Behaviour Models -- Chapter 5: Semantics-based Composition for Textual Requirements -- Chapter 6: Composing Goal and Scenario Models with the Aspect-oriented User Requirements Notation (AoURN) Based on Syntax and Semantics -- Chapter 7: Aspect Oriented Goal Modelling and Composition with AOV-graph -- Chapter 8: Aspects Composition in Problem Frames -- Section 3: Domain-Specific Use of AORE -- Chapter 9: Mapping Aspects from Requirements to Architecture -- Chapter 10: Maintaining Security Requirements of Software Systems using Evolving Crosscutting Dependencies -- Chapter 11: Using Aspects to Model Volatile Concerns -- Section 4: Aspect Interactions -- Chapter 12: Conflict Identification with EA-Analyser -- Chapter 13: Handling Conflicts in Aspect-Oriented Requirements Engineering -- Chapter 14: Analysis of Aspect-Oriented Models using Graph Transformation Systems -- Chapter 15: Aspect Interactions: A Requirements Engineering Perspective -- Section 5: AORE in Industry -- Chapter 16: Implementing Aspect-Oriented Requirements Analysis for Investment Banking Applications -- Chapter 17: Experience Report: AORE in Slot Machines -- Chapter 18: Advancing AORE through Evaluation.
Broadly-scoped requirements such as security, privacy, and response time are a major source of complexity in modern software systems. This is due to their tangled inter-relationships with and effects on other requirements. Aspect-Oriented Requirements Engineering (AORE) aims to facilitate modularisation of such broadly-scoped requirements, so that software developers are able to reason about them in isolation - one at a time. AORE also captures these inter-relationships and effects in well-defined composition specifications, and, in so doing exposes the causes for potential conflicts, trade-offs, and roots for the key early architectural decisions. Over the last decade, significant work has been carried out in the field of AORE. With this book the editors aim to provide a consolidated overview of these efforts and results. The individual contributions discuss how aspects can be identified, represented, composed and reasoned about, as well as how they are used in specific domains and in industry. Thus, the book does not present one particular AORE approach, but conveys a broad understanding of the aspect-oriented perspective on requirements engineering. The chapters are organized into five sections: concern identification in requirements, concern modelling and composition, domain-specific use of AORE, aspect interactions, and AORE in industry. This book provides readers with the most comprehensive coverage of AORE and the capabilities it offers to those grappling with the complexity arising from broadly-scoped requirements - a phenomenon that is, without doubt, universal across software systems. Software engineers and related professionals in industry, as well as advanced undergraduate and post-graduate students and researchers, will benefit from these comprehensive descriptions and the industrial case studies.
Software engineering.
Management information systems.
Computer science.
Software Engineering.
Management of Computing and Information Systems.