Mining non-functional requirements using machine learning techniques

15Citations
Citations of this article
51Readers
Mendeley users who have this article in their library.

Abstract

Background: Non-Functional Requirements (NFR) have a direct impact on the architecture of the system, thus it is essential to identify NFRs in the initial phases of software development. Aim: The work is based on extraction of relevant keywords from NFR descriptions by employing text mining steps and thereafter classifying these descriptions into one of the nine types of NFRs. Method: For each NFR type, keywords are extracted from a set of pre-categorized specifications using Information-Gain measure. Then models using 8 Machine Learning (ML) techniques are developed for classification of NFR descriptions. A set of 15 projects (containing 326 NFR descriptions) developed by MS students at DePaul University are used to evaluate the models. Results: The study analyzes the performance of ML models in terms of classification and misclassification rate to determine the best model for predicting each type NFR descriptions. The Naïve Bayes model has performed best in predicting “maintainability” and “availability” type of NFRs. Conclusion: The NFR descriptions should be analyzed and mapped into their corresponding NFR types during the initial phases. The authors conducted cost benefit analysis to appreciate the advantage of using the proposed models.

Cite

CITATION STYLE

APA

Jindal, R., Malhotra, R., Jain, A., & Bansal, A. (2021). Mining non-functional requirements using machine learning techniques. E-Informatica Software Engineering Journal, 15(1), 85–114. https://doi.org/10.37190/E-INF210105

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free