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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
See the Tactile Check homepage: https://github.com/mwmk67/TactileCheck.
- 2.
See the Tactile Check homepage: https://github.com/mwmk67/TactileCheck.
- 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.
An extended dictionary containing the additional phrases can be found at https://github.com/mwmk67/TactileCheck.
- 5.
References
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
Boehm, B., Basili, V.R.: Software Defect Reduction Top 10 List. Computer 34(1), 135–137 (2001)
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
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)
Femmer, H., Fernández, D.M., Wagner, S., Eder, S.: Rapid quality assurance with requirements smells. J. Syst. Softw. 123, 190–213 (2017)
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
Fleiss, J., et al.: Measuring nominal scale agreement among many raters. Psychol. Bull. 76(5), 378–382 (1971)
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
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)
Hairul, M., Nasir, N., Sahibuddin, S.: Critical success factors for software projects : a comparative study. Sci. Res. essays 6, 2174–2186 (2011)
Hofmann, H.F., Lehner, F.: Requirements engineering as a success factor in software projects. IEEE Softw. 18(4), 58–66 (2001)
IEEE: ISO/IEC/IEEE 29148: 2011 Systems and software engineering - Life cycle processes - Requirements engineering, pp. 1–94. ISO (2011)
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
Saunders, M., Lewis, P., Thornhill, A.: Research Methodes for Business Students, 6th edn. Pearson Benelux, London (2012)
Sommerville, I.: Software Engineering, 10th edn. Pearson Education Limmited, Harlow (2016)
Wiegers, K., Beatty, J.: Software Requirements, 3rd edn. Microsoft Corporation, Redmont (2013)
Wilmink, M.: Requirements ambiguousness pitfalls. Master’s thesis, Open Universiteit Nederland (2016)
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
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights 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)