Skip to main content

On the Ability of Lightweight Checks to Detect Ambiguity in Requirements Documentation

  • Conference paper
  • First Online:
Requirements Engineering: Foundation for Software Quality (REFSQ 2017)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10153))

Abstract

Context & motivation: The quality of requirements documentation, which is often written in natural language, directly influences the quality of subsequent software engineering tasks. Ambiguity is one of the main quality risks, but unfortunately natural language has a natural tendency towards ambiguity.

Question/problem: Precisely identifying ambiguity in specifications is virtually impossible fully automatically due the complexity and variability of natural language. Ignoring grammar and context in the analysis, on the other hand, makes an implementation and application feasible, but also reduces the accuracy. The question researched in this paper is whether such a lightweight check can still sufficiently accurately detect which requirements are formulated ambiguously or certainly.

Principal ideas/results: To investigate this research question, we have implemented a lightweight analysis tool based on a finite dictionary combining different results from the literature. The tool, called tactile check, adds annotations to phrases in requirements documents, which are weak respectively strong with regard to non-ambiguity. Within an embedded single case study, tactile check is applied to two real requirements documents (totaling 293 requirements) from KLM Engineering & Maintenance and the results (454 annotations in total) are assessed by three expert business analysts. In our study, the tool achieved a precision and recall of at least 77% respectively 59%. Annotations of weak phrases have prevalently been perceived as helpful for reducing ambiguity.

Contribution: In this paper, we establish that simple textual analyses with low overhead can detect ambiguity in requirements with significant accuracy. Our experts assessed the analysis’ findings as helpful input to reducing the ambiguity. The tool and dictionary used in our study are provided for download to support repeatability of the study. Furthermore, we provide an extended dictionary for download that incorporates suggestions by our experts.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    See the Tactile Check homepage: https://github.com/mwmk67/TactileCheck.

  2. 2.

    See the Tactile Check homepage: https://github.com/mwmk67/TactileCheck.

  3. 3.

    The strong phrases “and” and “should” occur extremely frequently in similar sentence patterns. To save the limited time of our expert analysts, we asked them to only assess 15 occurrences of these two phrases. All assessments are almost identical.

  4. 4.

    An extended dictionary containing the additional phrases can be found at https://github.com/mwmk67/TactileCheck.

  5. 5.

    See https://github.com/mwmk67/TactileCheck.

References

  1. Berry, D.M., Kamsties, E., Krieger, M.M.: From contract drafting to software specification: linguistic sources of ambiguity. In: A Handbook (2003). http://cs.uwaterloo.ca/~dberry/handbook/ambiguityHandbook.pdf. Accessed 31 Dec 2016

  2. Boehm, B., Basili, V.R.: Software Defect Reduction Top 10 List. Computer 34(1), 135–137 (2001)

    Article  Google Scholar 

  3. Carlson, N., Laplante, P.: The NASA automated requirements measurement tool: a reconstruction. Innov. Syst. Softw. Eng. 10(2), 77–91 (2014). http://dx.doi.org/10.1007/s11334-013-0225-8

    Article  Google Scholar 

  4. Davis, A., Overmyer, S., Jordan, K., Caruso, J., Dandashi, F., Dinh, A., Kincaid, G., Ledeboer, G., Reynolds, P., Sitaram, P., Ta, A., Theofanos, M.: Identifying and measuring quality in a software requirements specification. In: Proceedings First International Software Metrics Symposium, pp. 141–152. IEEE (1993)

    Google Scholar 

  5. Femmer, H., Fernández, D.M., Wagner, S., Eder, S.: Rapid quality assurance with requirements smells. J. Syst. Softw. 123, 190–213 (2017)

    Article  Google Scholar 

  6. Femmer, H., Fernández, D.M., Juergens, E., Klose, M., Zimmer, I., Zimmer, J.: Rapid requirements checks with requirements smells: two case studies. In: Proceedings of the 1st International Workshop on Rapid Continuous Software Engineering, pp. 10–19 (2014). http://doi.acm.org/10.1145/2593812.2593817

  7. Fleiss, J., et al.: Measuring nominal scale agreement among many raters. Psychol. Bull. 76(5), 378–382 (1971)

    Article  Google Scholar 

  8. Gleich, B., Creighton, O., Kof, L.: Ambiguity detection: towards a tool explaining ambiguity sources. In: Wieringa, R., Persson, A. (eds.) REFSQ 2010. LNCS, vol. 6182, pp. 218–232. Springer, Heidelberg (2010). doi:10.1007/978-3-642-14192-8_20

    Chapter  Google Scholar 

  9. Gnesi, S., Lami, G., Trentanni, G., Fabbrini, F., Fusani, M.: An automatic tool for the analysis of natural language requirements. Int. J. Comput. Syst. Sci. Eng. 20(1), 53–62 (2005)

    Google Scholar 

  10. Hairul, M., Nasir, N., Sahibuddin, S.: Critical success factors for software projects : a comparative study. Sci. Res. essays 6, 2174–2186 (2011)

    Article  Google Scholar 

  11. Hofmann, H.F., Lehner, F.: Requirements engineering as a success factor in software projects. IEEE Softw. 18(4), 58–66 (2001)

    Article  Google Scholar 

  12. IEEE: ISO/IEC/IEEE 29148: 2011 Systems and software engineering - Life cycle processes - Requirements engineering, pp. 1–94. ISO (2011)

    Google Scholar 

  13. Kamata, M.I., Tamai, T.: How does requirements quality relate to project success or failure?. In: 15th IEEE International Requirements Engineering Conference (RE 2007), pp. 69–78. IEEE, October 2007

    Google Scholar 

  14. Saunders, M., Lewis, P., Thornhill, A.: Research Methodes for Business Students, 6th edn. Pearson Benelux, London (2012)

    Google Scholar 

  15. Sommerville, I.: Software Engineering, 10th edn. Pearson Education Limmited, Harlow (2016)

    MATH  Google Scholar 

  16. Wiegers, K., Beatty, J.: Software Requirements, 3rd edn. Microsoft Corporation, Redmont (2013)

    Google Scholar 

  17. Wilmink, M.: Requirements ambiguousness pitfalls. Master’s thesis, Open Universiteit Nederland (2016)

    Google Scholar 

  18. Wilson, W.M., Rosenberg, L.H., Hyatt, L.E.: Automated analysis of requirement specifications. In: Proceedings of ICSE, pp. 161–171. ACM Press, New York, USA, May 1997

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Christoph Bockisch .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Wilmink, M., Bockisch, C. (2017). On the Ability of Lightweight Checks to Detect Ambiguity in Requirements Documentation. In: Grünbacher, P., Perini, A. (eds) Requirements Engineering: Foundation for Software Quality. REFSQ 2017. Lecture Notes in Computer Science(), vol 10153. Springer, Cham. https://doi.org/10.1007/978-3-319-54045-0_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-54045-0_23

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-54044-3

  • Online ISBN: 978-3-319-54045-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics