Abstract
Requirements Engineering in the industry is expertise-driven, heavily manual, and centered around various types of requirement specification documents being prepared and maintained. These specification documents are in diverse formats and vary depending on whether it is a business requirement document, functional specification, interface specification, client specification, and so on. These diverse specification documents embed crucial product knowledge such as functional decomposition of the domain into features, feature hierarchy, feature types and their specific feature characteristics, dependencies, business context, etc. Moreover, in a product development scenario, thousands of pages of requirement specification documentation is created over the years. Comprehending functionality and its associated context from large volumes of specification documents is a highly complex task. To address this problem, we propose to digitalize the requirement specification documents into processable models. This paper discusses the salient aspects involved in the digitalization of requirements knowledge from diverse requirement specification documents. It proposes an AI engine for the automatic transformation of diverse text-based requirement specifications into machine-processable models using NLP techniques and the generation of context-sensitive user stories. The paper describes the key requirement abstractions and concepts essential in an industrial scenario, the conceptual meta-model, and DizReq engine (AI engine for digitalizing requirements) implementation for automatically transforming diverse requirement specifications into user stories embedding the business context. The evaluation results from digitalizing specifications of an IT product suite are discussed: mean feature extraction efficiency is 40 features/file, mean user story extraction efficiency is 71 user stories/file, feature extraction accuracy is 94%, and requirement extraction accuracy is 98%.







Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Abbreviations
- AI:
-
Artificial intelligence
- BRS:
-
Business requirement specification
- BSD:
-
Business specification document
- BU:
-
Business unit
- CIM:
-
Component independent model
- CP:
-
Client partner
- CR:
-
Change request
- CRUD:
-
Create-retrieve-update-delete
- DizReq:
-
AI engine for digitalizing requirements
- FA:
-
Feature area
- FSD:
-
Functional specification document
- INT:
-
Interface specification document
- IO:
-
Input- output
- MDA:
-
Model driven architecture
- MF:
-
Major feature
- MSD:
-
Market specification document
- NL:
-
Natural language
- NLP:
-
Natural language processing
- NLP4RE:
-
NLP for requirements engineering
- PIM:
-
Platform independent model
- POS:
-
Part-of-speech
- PSD:
-
Product specification document
- PSM:
-
Platform specific model
- RE:
-
Requirements engineering
- RPT:
-
Report specification document
- SF:
-
Sub feature
- SRS:
-
Software requirement specification
- UML:
-
Unified modeling language
- URS:
-
User requirement specification
References
Acher, M., Cleve, A., Perrouin, G., Heymans, P., Vanbeneden, C., Collet, P., & Lahire, P. (2012). On extracting feature models from product descriptions. In: proceedings of the sixth international workshop on variability modeling of software-intensive systems, (pp. 45–54).
Ambriola, V., Gervasi, V.: On the systematic analysis of natural language requirements with CIRCE. Autom. Softw. Eng. 13(1), 107–167 (2006)
Arora, C., Sabetzadeh, M., Briand, L., & Zimmer, F. (2016). Extracting domain models from natural-language requirements: approach and industrial evaluation. In: proceedings of the ACM/IEEE 19th international conference on model driven engineering languages and systems - MODELS ’16, pp. 250–260.
Bleistein, S.J., Cox, K., Verner, J., Phalp, K.T.: B-SCP: a requirements analysis framework for validating strategic alignment of organizational IT based on strategy, context, and process. Inf. Softw. Technol. 48(9), 846–868 (2006)
Bourque, P., Fairley, R. E., & IEEE Computer Society. (2014). SWEBOK: guide to the software engineering body of knowledge.
Bryant, B. R., Lee, B.-S., Cao, F., Zhao, W., & Gray, J. G. (2003). natural language requirements to executable models of software components. Indiana Univ-Purdue Univ At Indianapolis.
Dalpiaz, F., Ferrari, A., Franch, X., Palomares, C.: Natural language processing for requirements engineering: the best is yet to come. IEEE Softw. 35(5), 115–119 (2018)
Davril, J. M., Delfosse, E., Hariri, N., Acher, M., Cleland-Huang, J., & Heymans, P. (2013). Feature model extraction from large collections of informal product descriptions. In: proceedings of the 2013 9th joint meeting on foundations of software engineering, pp. 290–300.
Deeptimahanti, D. K., & Babar, M. A. (2009). An automated tool for generating UML models from natural language requirements. In: 2009 IEEE/ACM international conference on automated software engineering, pp. 680–682.
Deeptimahanti, D. K., & Sanyal, R. (2011). Semi-automatic generation of UML models from natural language requirements.In: proceedings of the 4th India software engineering conference on - ISEC ’11, 165–174.
Diamantopoulos, T., Roth, M., Symeonidis, A., Klein, E.: Software requirements as an application domain for natural language processing. Lang. Resour. Eval. 51(2), 495–524 (2017)
Docx4J open source (ASLv2) Java library. (2021). https://www.docx4java.org/
Elallaoui, M., Nafil, K., Touahni, R.: Automatic transformation of user stories into UML use case diagrams using NLP techniques. Procedia Comput. Sci. 130, 42–49 (2018)
Ferrari, A., Dell’Orletta, F., Esuli, A., Gervasi, V., Gnesi, S.: Natural language requirements processing: a 4D vision. IEEE Softw. 34(6), 28–35 (2017)
Herchi, H., & Abdessalem, W. B. (2012). From user requirements to UML class diagram. 4.
Hong, D., Chiu, D. K. W., & Shen, V. Y. (2005). Requirements elicitation for the design of context-aware applications in a ubiquitous environment. In: proceedings of the 7th international conference on electronic commerce - ICEC ’05, 590.
Hull, E., Jackson, K., Dick, J.: Requirements engineering. Springer (2005)
ISO/IEC 2382:2015 Information technology -- Vocabulary. (2015).
Karlsson, L., Dahlstedt, A., Natt och Dag, D. J., Regnell, B., & Persson, A. (2002). Challenges in market-driven requirements engineering-an industrial interview study. (artifact issues- traditional specs, overload). In: eighth international workshop on requirements engineering: foundation for software quality.
Kassab, M. (2015). The changing landscape of requirements engineering practices over the past decade. In: 2015 IEEE fifth international workshop on empirical requirements engineering (EmpiRE), 1–8.
Kleppe, A. G., Warmer, J., Warmer, J. ., & Bast, W. (2003). MDA explained: the model driven architecture: practice and promise Kleppe, Anneke G., Jos Warmer, Jos B. Warmer, and Wim Bast. Addison-Wesley Professional.
Kulkarni, V., Reddy, S., Rajbhoj, A.: Scaling up model driven engineering – experience and lessons learnt. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) Model driven engineering languages and systems, vol. 6395, pp. 331–345. Springer, Berlin (2010)
Liddy, E. D. (2001). Natural language processing. 15.
Lucassen, G., Dalpiaz, F., van der Werf, J. M. E. M., & Brinkkemper, S. (2015). Forging high-quality user stories: towards a discipline for Agile Requirements. In: 2015 IEEE 23rd international requirements engineering conference (RE), 126–135.
Melouk, M., Rhazali, Y., Youssef, H.: An approach for transforming CIM to PIM up To PSM in MDA. Procedia Comput. Sci. 170, 869–874 (2020)
Mich, L., Franch, M., & Inverardi, P. N. (2004). Market research for requirements analysis using linguistic tools. 25.
More, P., Phalnikar, R.: Generating UML diagrams from natural language specifications. Int. J. Appl. Inf. Syst. 1(8), 19–23 (2012)
Nistala, P., & Kumari, P. (2013). An approach to carry out consistency analysis on requirements: validating and tracking requirements through a configuration structure. In: 21st IEEE international requirements engineering conference (RE), 320–325. Doi: https://doi.org/10.1109/RE.2013.6636737 (2013b)
Nistala, P. V., Nori, K. V., & Natarajan, S. (2016). Process patterns for requirement consistency analysis. In: proceedings of the 21st European conference on pattern languages of programs - EuroPlop ’16, 1–11. https://doi.org/10.1145/3011784.3011809 (2016b)
Nistala, P., Rajbhoj, A., Kulkarni, V., & Nori, K. (2020). Digital re-imagination of software and systems processes for quality engineering: iSPIN Approach. In: 2020 IEEE/ACM international conference on software and system processes (ICSSP), 10.
OpenNLP. (2021). https://opennlp.apache.org/
Riebisch, M. (2003). Towards a more precise definition of feature models. 64–76.
Robeer, M., Lucassen, G., van der Werf, J. M. E., Dalpiaz, F., & Brinkkemper, S. (2016). Automated extraction of conceptual models from user stories via NLP. In: 2016 IEEE 24th international requirements engineering conference (RE),pp. 196–205.
Rolland, C., & Proix, C. (1992). A natural language approach for requirements engineering. 21.
Savic, D., Antovic, I., Vlajic, S., Stanojevic, V., & Milic, M. (2011). Language for use case specification. In: IEEE 34th software engineering workshop, 19–26.
Schatsky, D., & Bumb, S. (2020). AI is helping to make better software. 12.
Shaheen, R., Ahsan, A., & Anwar., Z. (2018). Requirements management for market driven software products—key issues. (req challenges). 1–6.
Sitou, W., & Spanfelner, B. (2007). Towards requirements engineering for context adaptive systems. In: 31st annual international computer software and applications conference - Vol. 2 - (COMPSAC 2007), 593–600.
Sree-Kumar, A., Planas, E., & Clarisó, R. (2018). Extracting software product line feature models from natural language specifications. In: proceedings of the 22nd international systems and software product line conference - Volume 1, 43–53.
Xie, T.: Intelligent software engineering: synergy between AI and software engineering. In: Feng, X., Müller-Olm, M., Yang, Z. (eds.) Dependable software engineering. Theories, tools, and applications, vol. 10998, pp. 3–7. Springer, Berlin (2018)
Yue, T., Briand, L.C., Labiche, Y.: A systematic review of transformation approaches between user requirements and analysis models. Requirements Eng. 16(2), 75–99 (2011)
Zhao, L., Alhoshan, W., Ferrari, A., Letsholo, K. J., Ajagbe, M. A., Chioasca, E.-V., & Batista-Navarro, R. T. (2020). Natural language processing (NLP) for requirements engineering: a systematic mapping study. natural language processing, 75.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Nistala, P.V., Rajbhoj, A., Kulkarni, V. et al. Towards digitalization of requirements: generating context-sensitive user stories from diverse specifications. Autom Softw Eng 29, 26 (2022). https://doi.org/10.1007/s10515-022-00324-2
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s10515-022-00324-2