ABSTRACT
Natural language is prevalent in requirements documents. However, ambiguity is an intrinsic phenomenon of natural language, and is therefore present in all such documents. Ambiguity occurs when a sentence can be interpreted differently by different readers. In this paper, we describe an automated approach for characterizing and detecting so-called nocuous ambiguities, which carry a high risk of misunderstanding among different readers. Given a natural language requirements document, sentences that contain specific types of ambiguity are first extracted automatically from the text. A machine learning algorithm is then used to determine whether an ambiguous sentence is nocuous or innocuous, based on a set of heuristics that draw on human judgments, which we collected as training data. We implemented a prototype tool for Nocuous Ambiguity Identification (NAI), in order to illustrate and evaluate our approach. The tool focuses on coordination ambiguity. We report on the results of a set of experiments to assess the performance and usefulness of the approach.
- }}Agarwal, R., and Boggess, L. 1992. A simple but useful approach to conjunct identification. In Proceedings of the 30th Annual Meeting of the Association for Computational Linguistics, 15--21. Google ScholarDigital Library
- }}Ambriola, V., and Gervasi, V. 1997. Processing natural language requirements. In Proceedings of the 12th international conference on Automated software engineering 36--45. Google ScholarDigital Library
- }}Berry, D. M., Kamsties, E., and Krieger, M. M. 2003. From contract drafting to software specification: Linguistic sources of ambiguity.Google Scholar
- }}Boyd, S., Zowghi, D., and Farroukh, A. 2005. Measuring the expressiveness of a constrained natural language: An empirical study. In Proceedings of the 13th IEEE International Conference on Requirements Engineering (RE'05), Washington, DC, 339--352. Google ScholarDigital Library
- }}Brill, E., and Resnik, P. 1994. A rule-based approach to prepositional phrase attachment disambiguation. In Proceedings of COLING, 1198--1204. Google ScholarDigital Library
- }}Chantree, F., Nuseibeh, B., De Roeck, A., and Willis, A. 2006. Identifying Nocuous Ambiguities in Natural Language Requirements. In Proceedings of 14th IEEE International Requirements Engineering Conference (RE'06), Minneapolis, USA, 59--68. Google ScholarDigital Library
- }}Fabbrini, F., Fusani, M., Gnesi, S., and Lami, G. 2001. The linguistic approach to the natural language requirements, quality: benefits of the use of an automatic tool. In Proceedings of the twenty sixth annual IEEE computer society - NASA GSFC software engineering workshop, 97--105. Google ScholarDigital Library
- }}Fantechi, A., Gnesi, S., Lami, G., and Maccari, A. 2003. Applications of Linguistic Techniques for Use Case Analysis. Requirements Engineering, 8(9), 161--170.Google ScholarDigital Library
- }}Fuchs, N. E., and Schwitter, R. 1995. Specifying logic programs in controlled natural language. In Proceedings of the Workshop on Computational Logic for Natural Language Processing, 3--5.Google Scholar
- }}Goldberg, M. 1999. An unsupervised model for statistically determining coordinate phrase attachment. In Proceedings of ACL, 610--614. Google ScholarDigital Library
- }}Goldin, L., and Berry, D. M. 1994. Abstfinder, a prototype abstraction finder for natural language text for use in requirements elicitation: design, methodology, and evaluation. In Proceedings of the First International Conference on Requirements Engineering, 18--22.Google Scholar
- }}Kamsties, E., Berry, D., and Paech, B. 2001. Detecting ambiguities in requirements documents using inspections. In Proceedings of the First Workshop on Inspection in Software Engineering (WISE'01), 68--80.Google Scholar
- }}Kilgarriff, A. 2003. Thesauruses for natural language processing. In Proceedings of NLP-KE, 5--13.Google ScholarCross Ref
- }}Kilgarriff, A., Rychly, P., Smrz, P., and Tugwell, D. 2004. The Sketch Engine. In Proceedings of the Eleventh European Association for Lexicography (EURALEX), 105--116.Google Scholar
- }}Kiyavitskaya, N., Zeni, N., Mich, L., and Berry, D. M. 2008. Requirements for tools for ambiguity identification and measurement in natural language requirements specifications. Requirements Engineering Journal 13, 207--240. Google ScholarDigital Library
- }}Lee, B. S., and Bryant, B. R. 2004. Automation of software system development using natural language processing and two-level grammar. Radical Innovations of Software and Systems Engineering in the Future. Springer, Heidelberg 219--233.Google Scholar
- }}Mich, L., and Garigliano, R. 2000. Ambiguity measures in requirement engineering. In Proceedings of international conference on software - theory and practice (ICS2000), 39--48.Google Scholar
- }}Nakov, P., and Hearst, M. 2005. Using the Web as an Implicit Training Set: Application to Structural Ambiguity Resolution. In Proceedings of HLT-NAACL'05, 835--842. Google ScholarDigital Library
- }}Okumura, A., and Muraki, K. 1994. Symmetric pattern matching analysis for English coordinate structures. In Proceedings of the 4th Conference on Applied Natural Language Processing, 41--46. Google ScholarDigital Library
- }}Resnik, P. 1999. Semantic similarity in a taxonomy: An information-based measure and its application to problems of ambiguity in natural language. Journal of Artificial Intelligence Research (JAIR), 11, 95--130.Google ScholarDigital Library
- }}Rus, V., Moldovan, D., and Bolohan, O. 2002. Bracketing compound nouns for logic form derivation. In Proceedings of the Fifteenth International Florida Artificial Intelligence Research Society Conference (FLAIRS), 198--202. Google ScholarDigital Library
- }}Willis, A., Chantree, F., and De Roeck, A. 2008. Automatic Identification of Nocuous Ambiguity. Research on Language & Computation, 6(3-4), 1--23.Google ScholarCross Ref
- }}Wilson, W. M., Rosenberg, L. H., and Hyatt, L. E. 1997. Automated analysis of requirement specifications. In Proceedings of the Nineteenth International Conference on Software Engineering (ICSE), 161--171. Google ScholarDigital Library
- }}Yang, H., De Roeck, A., Gervasi, Vincenzo, Willis, A., and Nuseibeh, B. 2010. Extending Nocuous Ambiguity Analysis for Anaphora in Natural Language Requirements. In Proceedings of the 18th IEEE International Requirements Engineering Conference (RE'10) (In Press). Google ScholarDigital Library
- }}Yang, H., De Roeck, A., Willis, A., and Nuseibeh, B. 2010. A Methodology for Automatic Identification of Nocuous Ambiguity. In Proceedings of the 23rd International Conference on Computational Linguistics (Coling'10) (In Press). Google ScholarDigital Library
Index Terms
- Automatic detection of nocuous coordination ambiguities in natural language requirements
Recommendations
Resolving Ambiguities in Natural Language Software Requirements: A Comprehensive Survey
Requirements Engineering is one of the most vital activities in the entire Software Development Life Cycle. The success of the software is largely dependent on how well the users' requirements have been understood and converted into appropriate ...
Analysing anaphoric ambiguity in natural language requirements
Special Issue on Best Papers of RE'10: Requirements Engineering in a Multi-faceted WorldMany requirements documents are written in natural language (NL). However, with the flexibility of NL comes the risk of introducing unwanted ambiguities in the requirements and misunderstandings between stakeholders. In this paper, we describe an ...
Extending Nocuous Ambiguity Analysis for Anaphora in Natural Language Requirements
RE '10: Proceedings of the 2010 18th IEEE International Requirements Engineering ConferenceThis paper presents an approach to automatically identify potentially nocuous ambiguities, which occur when text is interpreted differently by different readers of requirements written in natural language. We extract a set of anaphora ambiguities from a ...
Comments