Font Size: a A A

Research And Implementation Of Bug Localization Technology At Method Level

Posted on:2022-10-25Degree:MasterType:Thesis
Country:ChinaCandidate:T H ChenFull Text:PDF
GTID:2518306317958149Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Bug localization is an important field in software engineering research.In the process of software development,software bugs can not be avoided.With the continuous growth of software scale and complexity,the number of software bugs increases rapidly.Fixing these software defects will cost the defect developer a lot of time and effort.In response to this problem,software engineering researchers have proposed a series of technologies based on dynamic bug localization approach and static bug localization approach.These approaches can recommend suspicious code units to help developers locate the bugs,improve the fixing efficiency,reduce the workload of software developers,and provide quality assurance for software projects.The current mainstream approaches of static bug localization are based on information retrieval,which use bug reports to automatically determine the code unit where the bug is located.However,the localization granularity of existing software bug localization approaches based on information retrieval is mostly at the file level.When developers use them to determine the location of the bug,they still need to read a certain number of lines of code to determine which methods need to be debugged and repaired.In response to this problem,this thesis proposes two method-level bug localization approaches.The work mainly includes the following:(1)Based on the code summary technology,we proposesed a method-level bug localization approach combined with the VSM model which is a result of the information retrieval field,historical repair information,and code length information.Experiments on the method-level bug localization dataset shows that the Top 10 accuracy of the localization approach achieves 31%,which is 41%higher than Buglocator.(2)We propose a method-level bug localization approach based on the ALBERT model,which can effectively alleviate the problem of the lack of training data in bug localization field.This approach uses the ALBERT model which is the result of natural language processing.Firstly,we use code annotations and method codes to pre-train the model,then we use bug reports and method codes to fine-tune the model,and finally we use the trained ALBERT model on bug localization.Experiments on the method-level bug localization dataset shows that the Top 10 accuracy of the localization approach achieves 32%,which is 44%higher than Buglocator.(3)We construct a bug localization tool combined with the above-mentioned localization approach.Developers can browse the bug report while browsing the method codes and summary information recommended by the localization model.The developer can select a certain piece of code and quickly jump to the file.
Keywords/Search Tags:Bug report, Bug localization, Information retrieval, Pre-training, ALBERT
PDF Full Text Request
Related items