Semantic Interpretation of Requirements through Cognitive Grammar and Configuration

  • Matt Selway
  • Wolfgang Mayer
  • Markus Stumptner
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8862)

Abstract

Many attempts have been made to apply Natural Language Processing to requirements specifications. However, typical approaches rely on shallow parsing to identify object-oriented elements of the specifications (e.g. classes, attributes, and methods). As a result, the models produced are often incomplete, imprecise, and require manual revision and validation. In contrast, we propose a deep Natural Language Understanding approach to create complete and precise formal models of requirements specifications. We combine three main elements to achieve this: (1) acquisition of lexicon from a user-supplied glossary requiring little specialised prior knowledge; (2) flexible syntactic analysis based purely on word-order; and (3) Knowledge-based Configuration unifies several semantic analysis tasks and allows the handling of ambiguities and errors. Moreover, we provide feedback to the user, allowing the refinement of specifications into a precise and unambiguous form. We demonstrate the benefits of our approach on an example from the PROMISE requirements corpus.

Keywords

natural language processing natural language understanding semantic interpretation requirements specifications 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abbot, R.: Program design by informal English descriptions. Comm. ACM 26(11), 882–894 (1983)CrossRefGoogle Scholar
  2. Ambriola, V., Gervasi, V.: Processing natural language requirements. In: Proc. Automated Software Engineering 1997, pp. 36–45. IEEE (1997)Google Scholar
  3. Ambriola, V., Gervasi, V.: On the systematic analysis of natural language requirements with CIRCE. Automated Software Engineering 13(1), 107–167 (2006)CrossRefGoogle Scholar
  4. Anandha Mala, G.S., Uma, G.V.: Automatic construction of object oriented design models [UML diagrams] from natural language requirements specification. In: Yang, Q., Webb, G. (eds.) PRICAI 2006. LNCS (LNAI), vol. 4099, pp. 1155–1159. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. Bajwa, I.S., Choudhary, M.A.: From natural language software specifications to UML class models. In: Zhang, R., Zhang, J., Zhang, Z., Filipe, J., Cordeiro, J. (eds.) ICEIS 2011. LNBIP, vol. 102, pp. 224–237. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  6. Booch, G.: Object-Oriented Analysis and Design with Application, 2nd edn. Benjamin/Cummings, Redwood City (1994)Google Scholar
  7. Deeptimahanti, D.K., Sanyal, R.: Semi-automatic generation of UML models from natural language requirements. In: Proc. India Software Engineering Conference, ISEC 2011, pp. 165–174. ACM (2011)Google Scholar
  8. Estratat, M., Henocque, L.: Parsing languages with a configurator. In: de Mántaras, R.L., Saitta, L. (eds.) Proc. ECAI 2004, vol. 16, pp. 591–595. IOS Press (2004)Google Scholar
  9. Harmain, H.M., Gaizauskas, R.: CM-Builder: A natural language-based CASE tool for object-oriented analysis. Automated Software Engineering 10(2), 157–181 (2003)CrossRefGoogle Scholar
  10. Holmqvist, K.B.I.: Implementing cognitive semantics: Image schemata, valence accommodation and valence suggestion for AI and computational linguistics. Ph.D. thesis, Dept. of Cognitive Science Lund University, Lund, Sweden (1993)Google Scholar
  11. Jurafsky, D., Martin, J.H.: Speech and Language Processing: An Introduction to Natural Language Processing. In: Computational Linguistics and Speech Recognition, 2nd edn. Prentice Hall (2008)Google Scholar
  12. Kleiner, M., Albert, P., Bézivin, J.: Parsing SBVR-based controlled languages. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 122–136. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. Langacker, R.W. (ed.): Cognitive grammar: A basic introduction. Oxford University Press, Oxford (2008)Google Scholar
  14. Letsholo, K., Zhao, L., Chioasca, E.V.: TRAM: A tool for transforming textual requirements into analysis models. In: Denney, E., Bultan, T., Zeller, A. (eds.) Proc. 2013 Conference on Automated Software Engineering (ASE), pp. 738–741. IEEE/ACM (2013)Google Scholar
  15. Liang, P., Jordan, M.I., Klein, D.: Learning dependency-based compositional semantics. Computational Linguistics 39(2), 389–446 (2013)CrossRefMathSciNetGoogle Scholar
  16. Menzies, T., Caglayan, B., He, Z., Kocaguneli, E., Krall, J., Peters, F., Turhan, B.: The PROMISE repository of empirical software engineering data (June 2012), http://promisedata.googlecode.com
  17. Mich, L.: NL-OOPS: from natural language to object oriented requirements using the natural language processing system LOLITA. Natural Language Engineering 2(02), 161–187 (1996)CrossRefGoogle Scholar
  18. Naradowsky, J., Vieira, T., Smith, D.: Grammarless parsing for joint inference. In: Kay, M., Boitet, C. (eds.) Proc. COLING 2012, pp. 1995–2010. The COLING 2012 Organizing Committee (2012)Google Scholar
  19. Object Management Group (OMG): Semantics of Business Vocabulary and Business Rules (SBVR), v1.0 (2008)Google Scholar
  20. Soininen, T., Tiihonen, J., Männistö, T., Solunen, R.: Towards a general ontology of configuration. AI EDAM 12(04), 357–372 (1998)Google Scholar
  21. Stumptner, M., Friedrich, G.E., Haselböck, A.: Generative constraint-based configuration of large technical systems. AI EDAM 12(04), 307–320 (1998)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Matt Selway
    • 1
  • Wolfgang Mayer
    • 1
  • Markus Stumptner
    • 1
  1. 1.Knowledge and Software Engineering LaboratoryUniversity of South AustraliaAdelaideAustralia

Personalised recommendations