Font Size: a A A

The All Information Of Function Call Based Fault Localization

Posted on:2017-02-25Degree:MasterType:Thesis
Country:ChinaCandidate:G P JinFull Text:PDF
GTID:2348330566956724Subject:Software engineering
Abstract/Summary:PDF Full Text Request
In the program debugging,fault localization is an important activity in the process of program debugging.The efficiency of finding out software defects depends on development personnel's logical judgment ability and application developer in the process of program debugging experience.However,in recent years,with the high-speed development of software industry,especially the Internet industry,Some large software are large scale ?large amount of code?Complex logic.Simply relying on the manual to locate the software defect is very difficult.If there is a method that can local approximate location of software defect according to the characteristics of the runnning program,then programmer check program simply.So that we can save a lot of energy.For this reason,in recent years,some automated location methods of software defects are proposed by many scholars at home and abroad.Nowadays the popular fault localization technologyies are spectrum-based fault localization,based on statistical fault localization,BP neural network-based fault localization and so on.The above relative studies are mostly localization granularity of basing on statement and lack of localization granularity of basing on function.In the actual production environment,most of the faults are caused by a function internal logic.thus,localization granularity which is based on function is suitable for the actual production environment.Moreover,Now most studies are based on stand alone system.when Software is huge and include a lot of code,Single machine processing is quite demanding.So based on the ways of handling big data for data cleaning and data statistics is quite necessary.This article mainly apply the approach of based on the information of the full-function call for fault localization research.Firstly,the approach exploits the Aspect Oriented Programming way to obtain parameter values during the function call function,the function call times,the data information of relationship between functions.Then,Gini index are adopted for extracting features about faults.Finally,Random Forest model is designed to predict the suspected degree of possible fault of function.In this method,Data preprocessing is on the Hadoop cluster.Data cleaning and feature extraction are through by hive framework and MapReduce programmingmodel.Random Forest model which is modified by me is used to train and predict.Resampling algorithm which is proposed by me is used to solve the problem of positive and negative sample distribution imbalance.Random Forest model which includes confidence coefficient can obtain more informations.Through the experiment on Siemens test units,It can prove that the approach of based on the information of the full-function call for fault localization is more accurate and efficient.Since this method almost the whole process is performed on a Hadoop cluster,so It is be suitable for fault localization for large software.The method in the actual production environment has higher practical value for large software.
Keywords/Search Tags:fault localization, aspect oriented programming, random forests, big data
PDF Full Text Request
Related items