EA-Miner: Towards Automation in Aspect-Oriented Requirements Engineering

  • Américo Sampaio
  • Awais Rashid
  • Ruzanna Chitchyan
  • Paul Rayson
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4620)


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.


Requirement Engineering Requirement Engineer Library System Requirement Document Toll System 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alexander, I., Stevens, R.: Writing Better Requirements, p. 159. Addison-Wesley, Reading (2002)Google Scholar
  2. 2.
    Sommerville, I.: Software Engineering, 7th edn., p. 784. Addision-Wesley, Reading (2004)Google Scholar
  3. 3.
    Sommerville, I., Sawyer, P.: Requirements Engineering– A Good Practice Guide. Wiley, Chichester (1997)zbMATHGoogle Scholar
  4. 4.
    Potts, C.: Invented Requirements and imagine customers. In: IEEE Requiremenst Engineering Conference (RE 1995), York, UK (1995)Google Scholar
  5. 5.
    Jackson, M.: Software Requirements and Specifications. In: Press, A. (ed.), p. 228. Addison Wesley, Reading (1995)Google Scholar
  6. 6.
    Burg, F.M.: Linguistic Instruments in Requirements Engineering. IOS Press, Amsterdam (1997)Google Scholar
  7. 7.
    Dag, J., Regnell, B., ParCarlshamre, Andersson, M.: A feasibility study of automated natural language requirements analysis in market-driven development. Requirements Engineering 7(1), 20 (2002)zbMATHCrossRefGoogle Scholar
  8. 8.
    Dag, J.N.o., Gervasi, V., Brinkkemper, S., Regnell, B.o.: Speeding up Requirements Management in a Product Software Company:Linking CustomerWishes to Product Requirements through Linguistic Engineering. In: 12th IEEE International Requirements Engineering Conference, Kyoto, Japan (2004)Google Scholar
  9. 9.
    Gervasi, V.: Environment Support for Requirements Writing and Analysis. Universita Degli Studi de Pisa (1999)Google Scholar
  10. 10.
    Goldin, L., Berry, D.: AbstFinder: A Prototype Natural Language Text Abstraction Finder for Use in Requirements Elicitation. Automated Software Engineering, 4 (1997)Google Scholar
  11. 11.
    Sawyer, P., Rayson, P., Garside, R.: REVERE: Support for Requirements Synthesis from Documents. Information Systems Frontiers 4(3), 343–353 (2002)CrossRefGoogle Scholar
  12. 12.
    Mich, L., Garigliano, R.: NL-OOPS: A Requirements Analysis tool based on Natural Language Processing. In: 3rd International Conference On Data Mining, Bologna, Italy (2002)Google Scholar
  13. 13.
    Mich, L., Mariangela, F., Pierluigi, N.I.: Market research for requirements analysis using linguistic tools. Requirements Engineering Journal 9(1) (2004)Google Scholar
  14. 14.
    Kiyavitskaya, N., Zeni, N., Mich, L., Mylopoulos, J.: NLP-based Requirements Modeling: Experiements on the Quality of the Models, University of Trento, Trento, pp. 1–13 (2004)Google Scholar
  15. 15.
    Baniassad, E., Clarke, S.: Finding Aspects in Requirements with Theme/Doc. In: Workshop on Early Aspects (held with AOSD 2004) Lancaster, UK (2004)Google Scholar
  16. 16.
    Rashid, A., Moreira, A., Araujo, J.: Modularisation and Composition of Aspectual Requirements. In: 2nd International Conference on Aspect Oriented Software Development (AOSD), ACM Press, Boston, USA (2003)Google Scholar
  17. 17.
    Rashid, A., Sawyer, P., Moreira, A., Araujo, J.: Early Aspects: a Model for Aspect-Oriented Requirements Engineering. In: International Conference on Requirements Engineering (RE), IEEE Computer Society Press, Essen, Germany (2002)Google Scholar
  18. 18.
    Whittle, J., Araujo, J.: Scenario Modeling with Aspects. IEE Proceedings–Software, (Special Issue on Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design). 151(4), 157–172 (2004)Google Scholar
  19. 19.
    Yu, Y., Leite, J.C.S.d.P., Mylopoulos, J.: From Goals to Aspects: Discovering Aspects from Requirements Goal Models. In: International Conference on Requirements Engineering, IEEE Computer Society Press, Kyoto, Japan (2004)Google Scholar
  20. 20.
    Finkelstein, A., Sommerville, I.: The Viewpoints FAQ. BCS/IEE Software Engineering Journal 11(1) (1996)Google Scholar
  21. 21.
    Jacobson, I., Chirsterson, M., Jonsson, P., Overgaard, G.: Object-Oriented Software Engineering: A Use Case Driven Approach, 4th edn. Addision-Wesley, Reading (1992)zbMATHGoogle Scholar
  22. 22.
    Jacobson, I., Ng, P.-W.: Aspect-Oriented Software Development with Use Cases, p. 464. Addison Wesley Professional, Reading (2005)Google Scholar
  23. 23.
    Sampaio, A., Chitchyan, R., Rashid, A., Rayson, P.: EA-Miner: A tool for automating aspect-oriented requirements identification. In: 20th IEEE/ACM International Conference on Automated Software Engineering (ASE 2005), Long Beach, California, USA (2005)Google Scholar
  24. 24.
    Sampaio, A., Loughran, N., Rashid, A., Rayson, P.: Mining Aspects in Requirements. In: Early Aspects 2005: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (held with AOSD 2005), Chicago, Illinois, USA (2005)Google Scholar
  25. 25.
    Moreira, A., Rashid, A., Araujo, J.: Multi-Dimensional Separation of Concerns in Requirements Engineering. In: The 13th International Conference on Requirements Engineering (RE 2005), IEEE, Paris, France (2005)Google Scholar
  26. 26.
    Baniassad, E., Clarke, S.: Theme: An Approach for Aspect-Oriented Analysis and Design. In: International Conference on Software Engineering, Edinburgh, Scotland, UK (2004)Google Scholar
  27. 27.
    Chung, L., Nixon, B.A., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. In: Basili, V.R. (ed.) The Kluwer International Series in Software Egnieering, Kluwer Academic Publishers, Dordrecht (2000)Google Scholar
  28. 28.
    Rayson, P.: UCREL Semantic Analysis System (USAS) (2005),
  29. 29.
    Sawyer, P., Rayson, P., Cosh, K.: Shallow Knowledge as an Aid to Deep Understanding in Early Phase Requirements Engineering. IEEE Transactions on Software Engineering 31(11), 969–981 (2005)CrossRefGoogle Scholar
  30. 30.
    McEnery, T., Wilson, A.: Corpus Linguistics. Edinburgh University Press, Edinburgh (1996)Google Scholar
  31. 31.
    British National Corpus (BNC), Available from:
  32. 32.
    Archer, D., Rayson, P., Pia, S., McEnery, T.: Comparing the UCREL Semantic Annotation Scheme with Lexicographical Taxonomies. In: 11th EURALEX (European Association for Lexicography) International Congress (Euralex 2004), Lorient, France (2004)Google Scholar
  33. 33.
    Lubars, M.D., Potts, C., Richter, C.: Developing Initial OOA Models. In: ICSE (1993)Google Scholar
  34. 34.
    Cysneiros, L.M., Leite, J.C.S.P.: Nonfunctional Requirements: From Elicitation to Conceptual Models. IEEE Transactions on Software Engineering 30(5), 328–349 (2004)CrossRefGoogle Scholar
  35. 35.
    Cysneiros, L.M., Yu, E., Leite, J.C.S.P.: Cataloguing Non-Functional Requirements as Softgoals Networks in Requirements Engineering for Adaptable Architectures. In: 11th International Requirements Engineering Conference (2003)Google Scholar
  36. 36.
    Marius Marin, A.v.D., Moonen, L.: Identifying aspects using fan-in analysis. In: Working Conference on Reverse Engineering (2004)Google Scholar
  37. 37.
    Basili, V., Selby, R.W., Hutchens, D.H.: Experimentation in Software Engineering. IEEE Transactions on Software Engineering 12(7) (1986)Google Scholar
  38. 38.
    Pfleeger, S.L.: Design and Analysis in Software Engineering - Part1: The Language of Case Studies and Formal Experiments. Software Engineering Notes 19(1), 16–20 (1994)CrossRefGoogle Scholar
  39. 39.
    Wohlin, C., Runeson, P., Host, M., Ohlsson, M.C., Regnell, B., Wesslen, A.: Experimentation in Software Engineering: An Introduction. In: Basili, V.R. (ed.), Kluwer Academic Publishers, Dordrecht (2000)Google Scholar
  40. 40.
    G. University of Kaiserslautern. Web Site: The Light Control Case Study: Problem Description: Available from:
  41. 41.
    Ambriola, V., Gervasi, V.: Processing natural language requirements. In: International Conference on Automated Software Engineering, IEEE Computer Society Press, Los Alamitos (1997)Google Scholar
  42. 42.
    Marcus, A., Maletic, J.I.: Recovering documentation-to-source-code traceability links using latent semantic indexing. In: 25th International Conference on Software Engineering 2003, IEEE Computer Society, Portland, Oregon, USA (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Américo Sampaio
    • 1
  • Awais Rashid
    • 1
  • Ruzanna Chitchyan
    • 1
  • Paul Rayson
    • 1
  1. 1.Computing Department, InfoLab 21, Lancaster University, Lancaster LA1 4WAUK

Personalised recommendations