Automated categorization of software security requirements: an NLP and ML based approach
摘要
Accurate categorization of software requirements into security and non-security categories is crucial for project management as it helps in prioritization, resource allocation, and risk management. The automated labeling of software requirements helps organizations to quickly classify and organize vast amounts of requirements data, reducing time and effort required for manual labeling. In this paper, we investigate the automatic labeling of software requirement sentences by utilizing TF-IDF in conjunction with individual keyword comparison (IKC) and Combined Keyword Comparison techniques. The validation of software requirements is performed using three different classifiers including Logistic Regression, Support Vector Machine (SVM), and Random Forest. In this study, we utilize the PROMISE, DOSSPRE, and DONSPRE datasets to conduct our analysis. Experimental results show that the SVM classifier achieved superior performance, attaining an accuracy of 94% after applying the proposed automated score-based labeling (ASBL) technique using IKC at the median threshold. The research contribution of this paper is twofold. Firstly, the suggested automated score-based labeling (ASBL) technique can significantly enhance the efficiency and accuracy of requirement categorization in software development projects, hence reduce the potential for human error in the labeling process. Secondly, a new dataset is created with more detailed consideration on security requirements of software projects.