Using Machine Learning To Identify Software Weaknesses From Software Requirement Specifications

08/10/2023
by   Mounika Vanamala, et al.
0

Secure software engineering is crucial but can be time-consuming; therefore, methods that could expedite the identification of software weaknesses without reducing the process efficacy would benefit the software engineering industry and thus benefit modern life. This research focuses on finding an efficient machine learning algorithm to identify software weaknesses from requirement specifications. The research uses the CWE repository and PROMISE exp dataset for training. Keywords extracted using latent semantic analysis help map the CWE categories to PROMISE_exp. Naive Bayes, support vector machine (SVM), decision trees, neural network, and convolutional neural network (CNN) algorithms were tested, with SVM and neural network producing reliable results. The research is unique contribution lies in the mapping technique and algorithm selection. It serves as a valuable reference for the secure software engineering community seeking to expedite the development lifecycle without compromising efficacy. Future work involves testing more algorithms, optimizing existing ones, and improving the training sets accuracy.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/27/2020

Machine Learning for Software Engineering: A Systematic Mapping

Context: The software development industry is rapidly adopting machine l...
research
01/06/2021

Awareness of Secure Coding Guidelines in the Industry – A first data analysis

Software needs to be secure, in particular, when deployed to critical in...
research
05/09/2019

A Road to Bio-inspired Software Engineering

Software production research is quickly evolving on two parallel approac...
research
10/23/2021

Changing Software Engineers' Self-Efficacy with Bootcamps:A Research Proposal

In several areas of knowledge, self-efficacy is related to the perfomanc...
research
02/09/2021

Using Structural and Semantic Information to Identify Software Components

Component Based Software Engineering (CBSE) seeks to promote the reuse o...
research
02/12/2021

What helped, and what did not? An Evaluation of the Strategies to Improve Continuous Integration

Continuous integration (CI) is a widely used practice in modern software...
research
07/25/2022

AI Powered Anti-Cyber Bullying System using Machine Learning Algorithm of Multinomial Naive Bayes and Optimized Linear Support Vector Machine

"Unless and until our society recognizes cyber bullying for what it is, ...

Please sign up or login with your details

Forgot password? Click here to reset