Measuring and Improving the Completeness of Natural Language Requirements

  • Alessio Ferrari
  • Felice dell’Orletta
  • Giorgio Oronzo Spagnolo
  • Stefania Gnesi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8396)


[Context and motivation] System requirements specifications are normally written in natural language. These documents are required to be complete with respect to the input documents of the requirements definition phase, such as preliminary specifications, transcripts of meetings with the customers, etc. In other terms, they shall include all the relevant concepts and all the relevant interactions among concepts expressed in the input documents. [Question/Problem] Means are required to measure and improve the completeness of the requirements with respect to the input documents. [Principal idea/results] To measure this completeness, we propose two metrics that take into account the relevant terms of the input documents, and the relevant relationships among terms. Furthermore, to improve the completeness, we present a natural language processing tool named Completeness Assistant for Requirements (CAR), which supports the definition of the requirements: the tool helps the requirements engineer in discovering relevant concepts and interactions. [Contribution] We have performed a pilot test with CAR, which shows that the tool can help improving the completeness of the requirements with respect to the input documents. The study has also shown that CAR is actually useful in the identification of specific/alternative system behaviours that might be overseen without the tool.


Requirements analysis requirements completeness requirements quality natural language processing terminology extraction relation extraction 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Rayson, P., Garside, R., Sawyer, P.: Recovering legacy requirements. In: Proc. of REFSQ 1999, pp. 49–54 (1999)Google Scholar
  2. 2.
    Pohl, K., Böckle, G., Van Der Linden, F.: Software product line engineering: foundations, principles, and techniques. Springer (2005)Google Scholar
  3. 3.
    Goldin, L., Berry, D.M.: Abstfinder, a prototype natural language text abstraction finder for use in requirements elicitation. Autom. Softw. Eng. 4(4), 375–412 (1997)CrossRefGoogle Scholar
  4. 4.
    Ambriola, V., Gervasi, V.: On the systematic analysis of natural language requirements with CIRCE. Autom. Softw. Eng. 13(1), 107–167 (2006)CrossRefGoogle Scholar
  5. 5.
    IEEE: IEEE Standard for Communications Based Train Control (CBTC) Performance and Functional Requirements. IEEE Std 1474.1-2004 (Revision of IEEE Std 1474.1-1999) (2004)Google Scholar
  6. 6.
    Lauesen, S.: Software Requirements: Styles and Techniques. Addison-Wesley (2002)Google Scholar
  7. 7.
    Boehm, B.: Verifying and validating software requirements and design specifications. IEEE Software 1(1), 75–88 (1984)CrossRefGoogle Scholar
  8. 8.
    Zowghi, D., Gervasi, V.: The three cs of requirements: Consistency, completeness, and correctness. In: Proc. of REFSQ 2002, pp. 155–164 (2002)Google Scholar
  9. 9.
    Lindland, O., Sindre, G., Solvberg, A.: Understanding quality in conceptual modeling. IEEE Software 11(2), 42–49 (1994)CrossRefGoogle Scholar
  10. 10.
    España, S., Condori-Fernandez, N., Gonzalez, A., Pastor, O.: Evaluating the completeness and granularity of functional requirements specifications: A controlled experiment. In: Proc. of RE 2009, pp. 161–170 (2009)Google Scholar
  11. 11.
    Yadav, S.B., Bravoco, R.R., Chatfield, A.T., Rajkumar, T.M.: Comparison of analysis techniques for information requirement determination. Commun. ACM 31(9), 1090–1097 (1988)CrossRefGoogle Scholar
  12. 12.
    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: Proc. of SMS 1993, pp. 141–152 (1993)Google Scholar
  13. 13.
    Costello, R.J., Liu, D.B.: Metrics for requirements engineering. J. Syst. Softw. 29(1), 39–63 (1995)CrossRefGoogle Scholar
  14. 14.
    Menzel, I., Mueller, M., Gross, A., Dörr, J.: An experimental comparison regarding the completeness of functional requirements specifications. In: Proc. of RE 2010, pp. 15–24 (2010)Google Scholar
  15. 15.
    Kaiya, H., Saeki, M.: Ontology based requirements analysis: lightweight semantic processing approach. In: Fifth International Conference on Quality Software (QSIC 2005), pp. 223–230 (2005)Google Scholar
  16. 16.
    Bonin, F., Dell’Orletta, F., Montemagni, S., Venturi, G.: A contrastive approach to multi-word extraction from domain-specific corpora. In: Proc. of LREC 2010, pp. 19–21 (2010)Google Scholar
  17. 17.
    Dell’Orletta, F.: Ensemble system for part-of-speech tagging. In: Proc. of Evalita 2009, Evaluation of NLP and Speech Tools for Italian (2009)Google Scholar
  18. 18.
    Dunning, T.: Accurate methods for the statistics of surprise and coincidence. Comput. Linguist. 19(1), 61–74 (1993)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Alessio Ferrari
    • 1
  • Felice dell’Orletta
    • 2
  • Giorgio Oronzo Spagnolo
    • 1
  • Stefania Gnesi
    • 1
  1. 1.ISTI-CNRPisaItaly
  2. 2.ILC-CNRPisaItaly

Personalised recommendations