Requirements Analysis: Concept Extraction and Translation of Textual Specifications to Executable Models

  • Leonid Kof
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5723)


Requirements engineering, the first phase of any software development project, is the Achilles’ heel of the whole development process, as requirements documents are often inconsistent and incomplete. In industrial requirements documents, natural language is the main presentation means. This results in the fact that the requirements documents are imprecise, incomplete, and inconsistent. A viable way to detect inconsistencies and omissions in documents is to extract system models from them.

In our previous work we developed approaches translating textual scenarios to message sequence charts (MSCs) and textual descriptions of automata to automata themselves. It turned out that these approaches are highly sensitive to proper definition of terms (communicating objects for MSCs, states for automata).

The goal of the presented paper is a systematic comparison of different term extraction heuristics, as a preliminary stage of MSC or automata extraction. The extracted terms were declared to communicating objects (in the case of MSCs) or to states (in the case of automata). The heuristics were compared on the basis of correctness of resulting MSCs and automata. We came to the conclusion that named entity recognition is the best performing technique for term extraction from requirements documents.


Requirement Analysis Direct Object Name Entity Recognition Entity Recognition Requirement Document 
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.
    Mich, L., Franch, M., Novi Inverardi, P.: Market research on requirements analysis using linguistic tools. Requirements Engineering 9, 40–56 (2004)CrossRefGoogle Scholar
  2. 2.
    Boehm, B.W.: Software Engineering Economics. Prentice-Hall, Englewood Cliffs (1981)zbMATHGoogle Scholar
  3. 3.
    Kof, L.: Scenarios: Identifying missing objects and actions by means of computational linguistics. In: 15th IEEE International Requirements Engineering Conference, New Delhi, India, pp. 121–130. IEEE Computer Society Conference Publishing Services, Los Alamitos (2007)CrossRefGoogle Scholar
  4. 4.
    Kof, L.: Treatment of Passive Voice and Conjunctions in Use Case Documents. In: Kedad, Z., Lammari, N., Métais, E., Meziane, F., Rezgui, Y. (eds.) NLDB 2007. LNCS, vol. 4592, pp. 181–192. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Kof, L.: From Textual Scenarios to Message Sequence Charts: Inclusion of Condition Generation and Actor Extraction. In: 16th IEEE International Requirements Engineering Conference, Barcelona, Spain, pp. 331–332. IEEE Computer Society Conference Publishing Services, Los Alamitos (2008)CrossRefGoogle Scholar
  6. 6.
    Kof, L.: Translation of Textual Specifications to Automata by Means of Discourse Context Modeling. In: Glinz, M., Heymans, P. (eds.) REFSQ 2009. LNCS, vol. 5512, pp. 197–211. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Broy, M.: Informatik. In: Eine grundlegende Einführung, vol. 2. Springer, Heidelberg (1998)Google Scholar
  8. 8.
    Abrial, J.R., Börger, E., Langmaack, H.: Formal Methods for Industrial Applications: Specifying and Programming the Steam Boiler Control. In: Abrial, J.-R., Börger, E., Langmaack, H. (eds.) Dagstuhl Seminar 1995. LNCS, vol. 1165. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  9. 9.
    Abrial, J.R., Börger, E., Langmaack, H.: The steam boiler case study: Competition of formal program specification and development methods. In: Abrial, J.-R., Börger, E., Langmaack, H. (eds.) Dagstuhl Seminar 1995. LNCS, vol. 1165. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  10. 10.
    Buhr, K., Heumesser, N., Houdek, F., Omasreiter, H., Rothermehl, F., Tavakoli, R., Zink, T.: DaimlerChrysler demonstrator: System specification instrument cluster (2004), (accessed 11.01.2007)
  11. 11.
    Kof, L.: Natural Language Processing: Mature Enough for Requirements Documents Analysis? In: Montoyo, A., Muńoz, R., Métais, E. (eds.) NLDB 2005. LNCS, vol. 3513, pp. 91–102. Springer, Heidelberg (2005)Google Scholar
  12. 12.
    Witte, R., Li, Q., Zhang, Y., Rilling, J.: Ontological Text Mining of Software Documents. In: Kedad, Z., Lammari, N., Métais, E., Meziane, F., Rezgui, Y. (eds.) NLDB 2007. LNCS, vol. 4592, pp. 168–180. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Clark, S., Curran, J.R.: Wide-coverage efficient statistical parsing with ccg and log-linear models. Comput. Linguist. 33, 493–552 (2007)CrossRefGoogle Scholar
  14. 14.
    Rupp, C.: Requirements-Engineering und-Management. In: Professionelle, iterative Anforderungsanalyse für die Praxis, 2nd edn. Hanser–Verlag (2002) ISBN 3-446-21960-9 Google Scholar
  15. 15.
    Fabbrini, F., Fusani, M., Gnesi, S., Lami, G.: The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool. In: 26th Annual NASA Goddard Software Engineering Workshop, Greenbelt, Maryland, pp. 97–105. IEEE Computer Society, Los Alamitos (2001)Google Scholar
  16. 16.
    Kamsties, E., Berry, D.M., Paech, B.: Detecting ambiguities in requirements documents using inspections. In: Workshop on Inspections in Software Engineering, Paris, France, pp. 68–80 (2001)Google Scholar
  17. 17.
    Chantree, F., Nuseibeh, B., de Roeck, A., Willis, A.: Identifying nocuous ambiguities in natural language requirements. In: RE 2006: Proceedings of the 14th IEEE International Requirements Engineering Conference (RE 2006), pp. 56–65. IEEE Computer Society, Washington (2006)Google Scholar
  18. 18.
    Goldin, L., Berry, D.M.: AbstFinder, a prototype natural language text abstraction finder for use in requirements elicitation. Automated Software Eng. 4, 375–412 (1997)CrossRefGoogle Scholar
  19. 19.
    Abbott, R.J.: Program design by informal English descriptions. Communications of the ACM 26, 882–894 (1983)zbMATHCrossRefGoogle Scholar
  20. 20.
    Sawyer, P., Rayson, P., Cosh, K.: Shallow knowledge as an aid to deep understanding in early phase requirements engineering. IEEE Trans. Softw. Eng. 31, 969–981 (2005)CrossRefGoogle Scholar
  21. 21.
    Vadera, S., Meziane, F.: From English to formal specifications. The Computer Journal 37, 753–763 (1994)CrossRefGoogle Scholar
  22. 22.
    Gervasi, V., Zowghi, D.: Reasoning about inconsistencies in natural language requirements. ACM Trans. Softw. Eng. Methodol. 14, 277–330 (2005)CrossRefGoogle Scholar
  23. 23.
    Smith, R.L., Avrunin, G.S., Clarke, L.A., Osterweil, L.J.: Propel: an approach supporting property elucidation. In: ICSE 2002: Proceedings of the 24th International Conference on Software Engineering, pp. 11–21. ACM, New York (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Leonid Kof
    • 1
  1. 1.Fakultät für InformatikTechnische Universität MünchenGarching bei MünchenGermany

Personalised recommendations