An Improved Hybrid Deep Learning Approach for Security Requirements Classification
Source abstract
Abstract
As the trend to use the latest machine learning models to automate requirements engineering processes continues, security requirements classification is tuning into the most researched field in the software engineering community. Previous literature studies have proposed numerous models for the classification of security requirements. However, adopting those models is constrained due to the lack of essential datasets permitting the repetition and generalization of studies employing more advanced machine learning algorithms. Moreover, most of the researchers focus only on the classification of requirements with security keywords. They did not consider other nonfunctional requirements (NFR) directly or indirectly related to security. This has been identified as a significant research gap in security requirements engineering. The major objective of this study is to propose a security requirements classification model that categorizes security and other relevant security requirements. We use PROMISE_exp and DOSSPRE, the two most commonly used datasets in the software engineering community. The proposed methodology consists of two steps. In the first step, we analyze all the nonfunctional requirements and their relation with security requirements. We found 10 NFRs that have a strong relationship with security requirements. In the second step, we categorize those NFRs in the security requirements category. Our proposed methodology is a hybrid model based on the Convolutional Neural Network (CNN) and Extreme Gradient Boosting (XGBoost) models. Moreover, we evaluate the model by updating the requirement type column with a binary classification column in the dataset to classify the requirements into security and non-security categories. The performance is evaluated using four metrics: recall, precision, accuracy, and F1 Score with 20 and 28 epochs number and batch size of 32 for PROMISE_exp and DOSSPRE datasets and achieved 87.3% and 85.3% accuracy, respectively. The proposed study shows an enhancement in metrics values compared to the previous literature studies. This is a proof of concept for systematizing the evaluation of security recognition in software systems during the early phases of software development.
Source: openalex_inverted_index · Quality: baseline
Research context
OpenAlex topics: Information and Cyber Security · Network Security and Intrusion Detection
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
References (53)
Show source-provided references
1. Analyzing the implications of healthcare data breaches through computational technique
2. Salini · Advances in computing and information technology · 2013
3. Enhancing misuse cases with risk assessment for safety requirements10.1109/ACCESS.2019.2963673 ↗
4. A tool for security requirements recommendation using case-based problem domain ontology
5. Hidden in plain sight: automatically identifying security requirements from natural language artifacts
6. Automated extraction of non-functional requirements in available documentation
7. The Internet of Things: a domain-specific security requirement classification
8. Software requirements classification using machine learning algorithms10.3390/e22091057 ↗
9. Mengmeng · Automatic classification of non-functional requirements from augmented app user reviews · 2017 · 344
10. Eliciting a security architecture requirements baseline from standards and regulations
11. System security assurance: a systematic literature review10.1016/j.cosrev.2022.100496 ↗
12. Understanding and recommending security requirements from problem domain ontology: a cognitive three-layered approach10.1016/j.jss.2020.110695 ↗
13. PURE: a dataset of public requirements documents
14. Security requirements extraction and classification: a survey
15. Understanding of a convolutional neural network
16. An introduction of CNN: models and training on neural network models
17. XGBoost model and its application to personal credit evaluation10.1109/MIS.2020.2972533 ↗
18. Comparison of XGBoost and the neural network model on the classbalanced datasets
19. A systematic mapping to investigate the application of machine learning techniques in requirement engineering activities
20. A review paper: security requirement patterns for a secure software development
21. Classification of non-functional requirements from SRS documents using thematic roles
22. Unveiling the correlation between nonfunctional requirements and sustainable environmental factors using a machine learning model10.3390/su16145901 ↗
23. Toward a better understanding of cybersecurity10.1145/3442445 ↗
24. Information asset classification and labelling model using fuzzy approach for effective security risk assessment
25. The importance of security requirements elicitation and how to do it
26. Building security requirements with CLASP
27. Machine learning based intrusion detection system
28. Security requirements prioritization techniques: a survey and classification framework10.3390/software1040019 ↗
29. Developing a novel holistic taxonomy of security requirements10.1016/j.procs.2015.08.442 ↗
30. Scalability in computing and robotics10.1109/TC.2021.3089044 ↗
31. Research of model-based reliability requirement transformation technology
32. Eliciting security requirements and tracing them to design: an integration of common criteria, heuristics, and UMLsec10.1007/s00766-009-0093-9 ↗
33. Deep learning model for selecting suitable requirements elicitation techniques10.3390/app12189060 ↗
34. Software requirements classification using deep- learning approach with various hidden layers
35. Machine/deep learning for software engineering: a systematic literature review10.1109/TSE.2022.3173346 ↗
36. Arora · Generative AI for effective software development · 2024
37. Classification and prioritisation of software requirements using machine learning—A systematic review
38. Automatic classification of user requirements information based on convolutional neural network
39. CNN-BPSO approach to select optimal values of CNN parameters for software requirements classification
40. Intelligent requirements engineering: applying machine learning for requirements classification
41. NFR classification using keyword extraction and CNN on app reviews
42. A non-exclusive multi-class convolutional neural network for the classification of functional requirements in AUTOSAR software requirement specification10.1109/ACCESS.2022.3217752 ↗
43. Experimenting XGBoost algorithm for prediction and classification of different datasets
44. ConvXGB: a new deep learning model for classification problems based on CNN and XGBoost10.1016/j.net.2020.04.008 ↗
45. A classification approach for software requirements towards maintainable security
46. Automated classification of security requirements
47. RE data challenge: requirements identification with Word2Vec and TensorFlow
48. What works better? A study of classifying requirements
49. Studying the commonalities, mappings and relationships between nonfunctional requirements using machine learning10.1016/j.scico.2022.102806 ↗
50. A systematic review of software maintainability prediction and metrics
51. GeeksforGeeks. Evaluation metrics in machine learning. Uttar Pradesh, India: Sanchhaya Education Private Limited; 2013. Available from: https://www.geeksforgeeks.org/metrics-for-machine-learning-model/. [Accessed 2024 Jun 26].
52. Software engineering repositories: expanding the PROMISE database
53. Evaluating the quality of machine learning explanations: a survey on methods and metrics10.3390/electronics10050593 ↗