Computer Science ›› 2015, Vol. 42 ›› Issue (12): 102-104.

Previous Articles     Next Articles

Fault Localization Using Failure-related Contexts for Automatic Program Repair

LI Ang, MAO Xiao-guang and LEI Yan   

  • Online:2018-11-14 Published:2018-11-14

Abstract: In face of the high cost consumed by program repair in the software life-cycle,researchers from both academia and industry are trying to develop an effective automatic program repair technique to address this problem.Being an essential part of program repair,fault localization plays an important role in repair performance.However,preliminary studies have shown that existing fault localization approaches do not take into account the features of automatic repair,and therefore restrict repair performance.It is vital to design fault localization approaches for automatic repair to improve its performance.To address this issue,this paper proposed a fault localization approach using failure-related contexts for improving automatic program repair.The proposed approach first utilizes program slicing technique to construct a failure-related context,then evaluates the suspiciousness of each element in the context of being faulty,and finally presents this context and its elements with different suspiciousness to automatic program repair techniques for performing repair on faulty programs.The preliminary experimental results demonstrate that the proposed approach is effective to improve automatic repair performance.

Key words: Automatic repair,Fault localization,Failure-related context,Program slicing,Suspiciousness evaluation

[1] Naish L,Lee H J,Ramamohanarao K.A model for spectra-based software diagnosis [J].ACM Transactions on Software Engineering and Methodology,2011,20(3):1-32
[2] Goues L C,Dewey-Vogt M,Forrest S,et al.A systematic study of automated program repair:fixing 55 out of 105 bugs for $8 each[C]∥Proc.of the 34th International Conference on Software Engineering (ICSE).Zurich,Switzerland,2012:3-13
[3] Goues L C,Nguyen T,Forrest S,et al.GenProg:a generic me-thod for automatic software repair[J].IEEE Transactions on Software Engineering (TSE),2012,38(1):54-72
[4] Weimer W,Nguyen T,Goues L C,et al.Automatically FindingPatches Using Genetic Programming[C]∥Proc.of the 31st International Conference on Software Engineering (ICSE).Vancouver,Canada,2009:16-24
[5] Seacord R C,Plakosh D,Lewis G A.Modernizing Legacy Systems:Software Technologies,Engineering Process and Business Practices[M].Addison-Wesley,2003
[6] Anvik J,Hiew L,Murphy G C.Who should fix this bug?[C]∥Proc.of the 28th International Conference on Software Engineering (ICSE).Shanghai,China,2006:361-370
[7] http://www.mozilla.org/security/bug-bounty.html MYM3,0/bug
[8] http://blog.chromium.org/2010/01/encouraging-more-chromi-um-security.html$500/bug
[9] http://www.tarsnap.com/bugbounty.html
[10] Hailpern B,Santhanam P.Software debugging,testing,and verification[J].IBM Systems Journal,2002,41(1):4-12
[11] Arcuri A.On the automation of fixing software bugs[C]∥Proc.of the 30th International Conference on Software Engineering (ICSE).Leipzig,Germany,2008:1003-1006
[12] Arcuri A.Evolutionary repair of faulty software[J].Applied Soft Computing,2011,11(4):3494-3514
[13] Wei Y,Pei Y,Furia C A,et al.Automated fixing of programs with contracts[C]∥Proc.of the International Symposium on Software Testing and Analysis (ISSTA).Trento,Italy,2010:61-72
[14] Wei Y,Pei Y,Furia C A,et al.Inferring better contracts[C]∥Proc.of the 33rd International Conference on Software Engineering (ICSE).Honolulu,Hawaii,USA,2011:191-200
[15] Kim D,Nam J,Song J,et al.Automatic patch generation learned from human written patches[C]∥Proc.of 35th International Conference on Software Engineering (ICSE).San Francisco,California,2013:802-811
[16] Qi Yu-hua,Mao Xiao-guang,Lei Yan,et al.Using automatedprogram repair for evaluating the effectiveness of fault localization techniques[C]∥The 22th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA).Lugano,Switzerland,2013:191-201
[17] Weiser M.Program slicing[J].IEEE Transactions on Software Engineering,1984,10(4):352-357
[18] Korel B,Laski J.Dynamic Program Slicing[J].Information Processing Letters,1988,29(3):155-163
[19] Agrawal H,Horgan J R.Dynamic program slicing[C]∥Proceedings of the Conference on Programming Language Design and Implementation (PLDI).1990:246-256

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!