A Novel Natural Language Processing (NLP) Approach to Automatically Generate Conceptual Class Model from Initial Software Requirements

Conceptual class model is an essential design artifact of Software Development Life Cycle (SDLC). The involvement of several resources and additional time is required to generate the class model from early software requirements. On the other hand, Natural Language Processing (NLP) is a knowledge discovery approach to automatically extract elements of concern from initial plain text documents. Consequently, it is frequently utilized to generate various SDLC artifacts like class model from the early software requirements. However, it is usually required to perform few manual processing on textual requirements before applying NLP techniques that makes the whole process semi-automatic. This article presents a novel fully automated NLP approach to generate conceptual class model from initial software requirements. As a part of research, Automated Requirements 2 Design Transformation (AR2DT) tool is developed. The validation is performed through three benchmark case studies. The experimental results prove that the proposed NLP approach is fully automated and considerably improved as compared to the other state-of-the-art approaches.

[1]  Ratna Sanyal,et al.  Semi-automatic generation of UML models from natural language requirements , 2011, ISEC.

[2]  Imran Sarwar Bajwa,et al.  NL-Based Automated Software Requirements Elicitation and Specification , 2011, ACC.

[3]  R. Sanyal,et al.  Static UML Model Generator from Analysis of Requirements (SUGAR) , 2008, 2008 Advanced Software Engineering and Its Applications.

[4]  Marie Meteer,et al.  MedLingMap: A growing resource mapping the Bio-Medical NLP field , 2012, BioNLP@HLT-NAACL.

[5]  Rodina Ahmad,et al.  Class Diagram Extraction from Textual Requirements Using Natural Language Processing (NLP) Techniques , 2010, 2010 Second International Conference on Computer Research and Development.

[6]  Y. Alkhader,et al.  Experimenting With Extracting Software Requirements Using NLP Approach , 2006, 2006 International Conference on Information and Automation.

[7]  H. M. Sneed Testing against Natural Language Requirements , 2007 .

[8]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[9]  Dong Liu,et al.  Natural language requirements analysis and class model generation using UCDA , 2004 .

[10]  Paul Vickers,et al.  Parsed use case descriptions as a basis for object-oriented class model generation , 2011, J. Syst. Softw..

[11]  Robert J. Gaizauskas,et al.  CM-Builder: A Natural Language-Based CASE Tool for Object-Oriented Analysis , 2003, Automated Software Engineering.

[12]  Abinash Tripathy,et al.  Application of Natural Language Processing in Object Oriented Software Development , 2014, 2014 International Conference on Recent Trends in Information Technology.

[13]  Alex Kass,et al.  Extracting High-Level Functional Design from Software Requirements , 2009, 2009 16th Asia-Pacific Software Engineering Conference.