Aspect-oriented requirements engineering (AORE) provides separation of concerns at the requirements level. In order to cope with concern identification and structuring into different requirements models, tool support is vital to effectively reduce the burden of performing various AORE tasks. This paper describes how the EA-Miner tool-based approach provides automated support for mining various types of concerns from a variety of early stage requirements documents and how these concepts can be structured into specific aspect-oriented requirements models (e.g., viewpoints-based, use-case-based). The key insight for early-stage requirements automation is the use of natural language processing to reason about properties of the requirements as well as the utilization of semantics revealed by the natural language analysis in building the models. Evaluation of EA-Miner shows promising results concerning time-effectiveness and accuracy of undertaking AORE activities and building requirements models. Moreover, an industrial case study conducted at Siemens AG investigated how the tool performs in a real-world setting by analysing what benefits it brings and challenges it faces during AORE analysis. The EA-Miner analysis enabled to find concerns that were considered relevant by a research team at Siemens that is re-implementing the investigated system with aspect-oriented languages. Moreover, the exposure of the tool to industrial requirements written by different developers also revealed some challenges imposed by the structure of the documentation and the different use of vocabulary terms hence providing new paths to explore and improve the tool in the future such as better pre-processing support, “domain synonym” identification and detection of poorly written requirements.
This paper is the culmination of a body of work including that presented at the 2005 IEEE/ACM Conference on Automated Software Engineering (ASE) with a highly selective acceptance rate of 22% from 291 submissions. Our research contribution is the pioneering provision of effective automated support for identifying and separating aspectual and non-aspectual concerns as well as their cross cutting relationships at the requirements level. The approach is multi-disciplinary in nature drawing on corpus-based natural language processing with a linguistic underpinning. The paper describes an industrial case study where the tool offered valuable insights to experienced AO developers at Siemens. RAE_import_type : Journal article RAE_uoa_type : Computer Science and Informatics