Advertisement

Running Out of Words: How Similar User Stories Can Help to Elaborate Individual Natural Language Requirement Descriptions

  • Frederik S. BäumerEmail author
  • Michaela Geierhos
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 639)

Abstract

While requirements focus on how the user interacts with the system, user stories concentrate on the purpose of software features. But in practice, functional requirements are also described in user stories. For this reason, requirements clarification is needed, especially when they are written in natural language and do not stick to any templates (e.g., “as an X, I want Y so that Z ...”). However, there is a lot of implicit knowledge that is not expressed in words. As a result, natural language requirements descriptions may suffer from incompleteness. Existing approaches try to formalize natural language or focus only on entirely missing and not on deficient requirements. In this paper, we therefore present an approach to detect knowledge gaps in user-generated software requirements for interactive requirement clarification: We provide tailored suggestions to the users in order to get more precise descriptions. For this purpose, we identify not fully instantiated predicate argument structures in requirements written in natural language and use context information to realize what was meant by the user.

Keywords

Natural language requirements clarification Syntactically incomplete requirements Compensatory user stories 

Notes

Acknowledgments

This work was partially supported by the German Research Foundation (DFG) within the Collaborative Research Centre On-The-Fly Computing (SFB 901).

References

  1. 1.
    Albayrak, Ö, Kurtoglu, H., Biaki, M.: Incomplete software requirements and assumptions made by software engineers. In: Proceedings of the 9th Asia-Pacific Software Engineering Conference, pp. 333–339, December 2009Google Scholar
  2. 2.
    Bajwa, I.S., Lee, M., Bordbar, B.: Resolving syntactic ambiguities in natural language specification of constraints. In: Gelbukh, A. (ed.) CICLing 2012. LNCS, vol. 7181, pp. 178–187. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-28604-9_15 CrossRefGoogle Scholar
  3. 3.
    Baker, C.F., Fillmore, C.J., Lowe, J.B., FrameNet, T.B.: The Berkeley FrameNet project. In: COLING-ACL 1998: Proceedings of the Conference, Montreal, Canada, pp. 86–90 (1998)Google Scholar
  4. 4.
    Clarke, J., Srikumar, V., Sammons, M., Roth, D.: An NLP curator (or: how ILearned to stop worrying and love NLP pipelines). In: Language Resources and Evaluation Journal, pp. 3276–3283 (2012)Google Scholar
  5. 5.
    Dollmann, M.: Frag die Anwender: Extraktion und Klassifikation von funktionalen Anforderungen aus User-Generated-Content. Master’s thesis, University of Paderborn (2016)Google Scholar
  6. 6.
    Fabbrini, F., Fusani, M., Gnesi, S., Lami, G.: The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool. In: Proceedings of the 26th Annual NASA Goddard Software Engineering Workshop, Greenbelt, MD, USA, pp. 97–105, November 2001Google Scholar
  7. 7.
    Fatwanto, A.: Software requirements specification analysis using natural language processing technique. In: Proceedings of the International Conference on Quality in Research QiR 2013, Yogyakarta, pp. 105–110, June 2013Google Scholar
  8. 8.
    Ferrari, A., dell’ Orletta, F., Spagnolo, G.O., Gnesi, S.: Measuring and improving the completeness of natural language requirements. In: Salinesi, C., Weerd, I. (eds.) REFSQ 2014. LNCS, vol. 8396, pp. 23–38. Springer, Heidelberg (2014). doi: 10.1007/978-3-319-05843-6_3 CrossRefGoogle Scholar
  9. 9.
    Firesmith, D.G.: Are your requirements complete? J. Object Technol. 4(2), 27–43 (2005)CrossRefGoogle Scholar
  10. 10.
    Geierhos, M., Schulze, S., Bäumer, F.S.: What did you mean? Facing the Challenges of User-generated Software Requirements. In: Loiseau, S., Filipe, J., Duval, B., van den Herik, J. (eds.) Proceedings of the 7th International Conference on Agents and Artificial Intelligence. Special Session on Partiality, Underspecification, and Natural Language Processing (PUaNLP 2015), pp. 277–283. SCITEPRESS - Science and Technology Publications, Lissabon, Portugal (2015)Google Scholar
  11. 11.
    Ghazarian, A.: A case study of defect introduction mechanisms. In: Eck, P., Gordijn, J., Wieringa, R. (eds.) CAiSE 2009. LNCS, vol. 5565, pp. 156–170. Springer, Heidelberg (2009). doi: 10.1007/978-3-642-02144-2_16 CrossRefGoogle Scholar
  12. 12.
    Gillick, D.: Sentence boundary detection, the problem with the U.S. In: Proceedings of Human Language Technologies: The 2009 Annual Conference of the North American Chapter of the ACL, Companion Volume: Short Papers, NAACL-Short 2009, pp. 241–244. ACL, Stroudsburg (2009)Google Scholar
  13. 13.
    Grande, M.: 100 Minuten für Anforderungsmanagement - Kompaktes Wissen nicht nur für Projektleiter und Entwickler. Vieweg+Teubner Verlag/Springer Fachmedien, Wiesbaden (2011)Google Scholar
  14. 14.
    Huertas, C., Juárez-Ramírez, R.: NLARE, a natural language processing tool for automatic requirements evaluation. In: Proceedings of the CUBE International Information Technology Conference, CUBE 2012, pp. 371–378. ACM, New York (2012)Google Scholar
  15. 15.
    Huertas, C., Juárez-Ramírez, R.: Towards assessing the quality of functional requirements using English/Spanish controlled languages and context free grammar. In: Proceedings of the 3rd International Conference on Digital Information and Communication Technology and its Applications (DICTAP 2013), pp. 234–241. SDIWC, July 2013Google Scholar
  16. 16.
    IEEE. IEEE Std 830–1998 - Recommended Practice for Software Requirements Specifications. Institute of Electrical and Electronics Engineers, New York, USA (1998)Google Scholar
  17. 17.
    Kaiya, H., Saeki, M.: Analysis, ontology based requirements: lightweight semantic processing approach. In: Proceedings of the 5th International Conference on Quality Software, pp. 223–230, September 2005Google Scholar
  18. 18.
    Kaiya, H., Saeki, M.: Using domain ontology as domain knowledge for requirements elicitation. In: 14th IEEE International Requirements Engineering Conference, pp. 189–198, September 2006Google Scholar
  19. 19.
    Kamata, M.I., Tamai, T.: How does requirements quality relate to project success or failure? In: Proceedings of the 15th IEEE International Requirements Engineering Conference, pp. 69–78, October 2007Google Scholar
  20. 20.
    Körner, S.J.: RECAA - Werkzeugunterstützung in der Anforderungserhebung. PhD thesis, Karlsruher Institut für Technologie (KIT), Karlsruhe, February 2014Google Scholar
  21. 21.
    Manning, C.D., Surdeanu, M., Bauer, J., Finkel, J., Bethard, S.J., McClosky, D.: The stanford CoreNLP natural language processing toolkit. In: Association for Computational Linguistics (ACL) System Demonstrations, pp. 55–60 (2014)Google Scholar
  22. 22.
    Menzel, I., Mueller, M., Gross, A., Doerr, J.: An experimental comparison regarding the completeness of functional requirements specifications. In: Proceedings of the 18th IEEE International Requirements Engineering Conference, pp. 15–24, September 2010Google Scholar
  23. 23.
    Naeem, M., Heckel, R., Orejas, F., Hermann, F.: Incremental service composition based on partial matching of visual contracts. In: Rosenblum, D.S., Taentzer, G. (eds.) FASE 2010. LNCS, vol. 6013, pp. 123–138. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-12029-9_9 CrossRefGoogle Scholar
  24. 24.
    Palmer, M., Gildea, D., Kingsbury, P.: The proposition bank: an annotated corpus of semantic roles. Comput. Linguist. 31(1), 71–106 (2005)CrossRefGoogle Scholar
  25. 25.
    Platenius, M.C.: Fuzzy service matching in on-the-fly computing. In: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2013, pp. 715–718. ACM, New York (2013)Google Scholar
  26. 26.
    Platenius, M.C., Arifulina, S., Petrlic, R., Schäfer, W.: Matching of incomplete service specifications exemplified by privacy policy matching. In: Ortiz, G., Tran, C. (eds.) ESOCC 2014. CCIS, vol. 508, pp. 6–17. Springer, Heidelberg (2015). doi: 10.1007/978-3-319-14886-1_2 Google Scholar
  27. 27.
    Saeki, M., Horai, H., Enomoto, H.: Software development process from natural language specification. In: Proceedings of the 11th International Conference on Software Engineering, ICSE 1989, pp. 64–73. ACM, New York (1989)Google Scholar
  28. 28.
    Standish Group International. The CHAOS Report (1994, 1995). https://www.standishgroup.com/sample_research_files/chaos_report_1994.pdf. Accessed 14 Feb 2016
  29. 29.
    Tjong, S.F., Berry, D.M.: The design of SREE — a prototype potential ambiguity finder for requirements specifications and lessons learned. In: Doerr, J., Opdahl, A.L. (eds.) REFSQ 2013. LNCS, vol. 7830, pp. 80–95. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-37422-7_6 CrossRefGoogle Scholar
  30. 30.
    Verma, K., Kass, A.: Requirements analysis tool: a tool for automatically analyzing software requirements documents. In: Sheth, A., Staab, S., Dean, M., Paolucci, M., Maynard, D., Finin, T., Thirunarayan, K. (eds.) ISWC 2008. LNCS, vol. 5318, pp. 751–763. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-88564-1_48 CrossRefGoogle Scholar
  31. 31.
    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

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Heinz Nixdorf InstituteUniversity of PaderbornPaderbornGermany

Personalised recommendations