A Rule-Based Approach for Automatic Generation of Class Diagram from Functional Requirements Using Natural Language Processing and Machine Learning
Keywords:
UML Class Diagram, Machine Learning, Dataset, Class Relationships, Aggregation, Association, Composition, InheritanceAbstract
Requirement analysis is the initial and most crucial phase of the software development life cycle (SDLC). In this phase, the requirements after gathering from the user and different stakeholders are evaluated and abstraction is created in terms of a model. The generation of UML class diagrams from requirements is a very time-consuming task and hence demands the automation of the process. The researchers have proposed a number of tools and methods for the transformation of natural language requirements to UML class diagrams in the last few years. Different approaches like Natural Language Processing (NLP) and Rule based approaches were used for this purpose, but they have certain limitations. Moreover, these approaches do not extract all the relationship types of class diagrams. To resolve this issue machine learning based approaches have been used for a few years. Machine learning requires large and precise datasets to train models. In this research, a new model is proposed to generate class diagrams from requirements written in natural language more accurately using Natural Language Processing as well as the machine learning approach. NLP has helped to extract the classes, attributes, and methods while machine learning is used to extract the class relationships. To implement machine learning models we have created a dataset containing class names and relationship types i.e. aggregation, association, composition, and inheritance. The effectiveness of models is analyzed by comparing the results using accuracy metrics.
Downloads
Published
How to Cite
Issue
Section
License
This is an open Access Article published by Research Center of Computing & Biomedical Informatics (RCBI), Lahore, Pakistan under CCBY 4.0 International License