Evaluating Classification of Software Requirements using Machine Learning and Natural Learning Processing Approaches

No Thumbnail Available

Date

2022

Journal Title

Journal ISSN

Volume Title

Publisher

Library Information Services, COMSATS University Islamabad, Lahore Campus

Abstract

The software development process consists of a series of phases e.g., requirement engineering, design, coding, and testing, and each phase is critical for fulfilling the needs of a software user. Requirement engineering is vital to understand, analyze and document the needs and expectations of the user. The functional requirements define the roadmap for the software development process. Functional requirements have not gained attention. No state of art discussed formatting and classification of functional requirements subclasses such as ubiquitous. Optional, unwanted behavior, event driven, and state-driven, and there were no larger datasets publicly available furthermore no datasets were formatted in standard syntax. So, the current research focuses to classify functional requirements subcategories e.g, ubiquitous requirements, event-driven, unwanted behavior, optional features, and state-driven requirements. This research aims to format the requirements using the EARS (Easy Approach to Requirement Syntax) boilerplate and perform several DL, ML techniques, and NLP experiments on a larger dataset of more than 9000 requirements which were created through processing 315 software requirement specifications documents of BS (CS) and BS (SE) final year projects (FYP) of CUI, Lahore to classify functional requirements subclasses. Using natural language processing (NLP) and machine learning (ML) techniques, this study intended to create a framework for classifying functional needs and their subclasses. All software requirements were altered through a series of procedures like normalization, and feature extractions techniques like TF-IDF. Several Machine Learning and Deep Learning experiments were conducted e.g., Logistic Regression (LR), Bernoulli Naïve Bayes (BNB), Decision Tree (DT), Multinomial Naïve Bayes (MNB), Random Forest CNN, and Long Short-Term Memory algorithms to classify functional requirements subclasses. CNN model got a higher result about 0.93 and LSTM achieved an accuracy of 0.92

Description

Keywords

Dr. Touseef Tahir, fa20, Department of Computer Science, Computer Science, Software Requirements, Natural Learning Processing Approaches

Citation

Collections

Endorsement

Review

Supplemented By

Referenced By