Font Size: a A A

Software Defect Distribution Prediction Techniques And Application

Posted on:2016-02-25Degree:DoctorType:Dissertation
Country:ChinaCandidate:C DanFull Text:PDF
GTID:1108330503955252Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Software security plays a more and more important role in the computer system.Software failure might cause substantial damage to life and property, and even more serious consequence. System failure might be caused by hardware failure, software failure,or human factors. But most of the failures should be caused by software errors. People can use the software defect prediction model to predict the distribution of defects in the software modules and identify high-risk modules. Project manager can effectively utilize resources to make meaningful impact on time and cost, and optimize quality assurance activities. Software defect prediction has been a popular research topic in software reliability engineering and security engineering research.Research on static software defect distribution prediction technology involves metrics,machine learning, statistical learning theory and data mining. Considerable effort has been dedicated toward various aspects of machine learning, including data preprocessing, model training, model evaluation, and pattern verification and validation. Effective classification model is very important in the static software defect distribution prediction. Data preprocessing and classification model is the two key research interests in this research field. The project "Research on XXXX Discovery Techniques” is supported by the Key Project of National Defense Basic Research Program of China. The key techniques for developing software defect prediction prototype system are researched. The focus of this thesis is on data processing activities based classification algorithms. Major contributions and innovation are as follows.(1) The data redundancy caused by the overmuch attributes of defect data set will make the prediction accuracy decrease. A model based on locally linear embedding and support vector machine(LLE-SVM) is proposed to solve this problem in this thesis. The SVM is used as the basic classifier in the model. And the LLE algorithm is used to solve data redundancy due to its ability of maintaining local geometry. The comparison between LLE-SVM model and SVM model was experimentally verified on the same NASA defect data set. The results indicate that the prediction accuracy of proposal LLE-SVM model is higher than SVM model, and it is available to avoid the accuracy decrease caused by the data redundancy.(2) In this thesis, a software defect prediction model based on SVM optimized by improved genetic algorithm(IGA) is proposed, in which the SVM is applied as the prediction classifier and the improved GA is used to select the optimal metric attributes andcalculate the optimal parameters of SVM. Experiments show that the proposed model presents higher prediction accuracy than SVM, PCA-GA-SVM, and PCA-ACO-SVM.(3) For the long time computation and the poor learning effect in application of BP algorithm in software defect prediction model, an improved BP algorithm is presented in this thesis. The improved algorithm combines the JCUDA technology and the BP algorithm,by learning the sample decomposition, multithreading and CPU-GPU processing mode,both learning speed and predicting time are optimized for the software defect predict model based on BP algorithm. The experimental results show that the JCUDA-BP algorithm optimizes the learning process, especially for a larger number of samples.(4) Based on the LLE-SVM model, IGA-SVM model and JCUDA-BP model, a software defect distribution prediction prototype system is introduced in this thesis. The system can predicate software defects using LLE-SVM model, IGA-SVM model or JCUDA-BP model independently. It also can do some simple integration predictions. The prototype system has been applied in XXXX defect discovery platform.
Keywords/Search Tags:software security, software defect prediction, locally linear embedding, support vector machine, genetic algorithm, JCUDA technique, BP algorithm
PDF Full Text Request
Related items