e-Informatica Software Engineering Journal Mining Non-Functional Requirements using Machine Learning Techniques

Mining Non-Functional Requirements using Machine Learning Techniques

by Rajni Jindal, Ruchika Malhotra, Abha Jain and Ankita Bansal
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.
Reference:
Rajni Jindal, Ruchika Malhotra, Abha Jain and Ankita Bansal, “Mining Non-Functional Requirements using Machine Learning Techniques”, In e-Informatica Software Engineering Journal, vol. 15, no. 1, pp. 85–114, 2021.
Bibtex Entry:
@Article{e-Informatica2021Art05,
  author = {Rajni Jindal and Ruchika Malhotra and Abha Jain and Ankita Bansal},
  title = {Mining Non-Functional Requirements using Machine Learning Techniques},
  pages = {85--114},
  doi = {10.37190/e-Inf210105},
  year = {2021},
  volume = {15},
  number = {1},
  keywords = {requirement engineering, text mining, non-functional requirements, machine learning, receiver operating characteristics},
  journal = {e-Informatica Software Engineering Journal},
  url = {https://www.e-informatyka.pl/attach/e-Informatica_-_Volume_15/eInformatica2021Art05.pdf},
  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. }
}

  • 2021-09-23

©2015 e-Informatyka.pl, All rights reserved.

Built on WordPress Theme: Mediaphase Lite by ThemeFurnace.