计算机科学 ›› 2015, Vol. 42 ›› Issue (12): 102-104.
李昂,毛晓光,雷晏
LI Ang, MAO Xiao-guang and LEI Yan
摘要: 为了应对日益增长的软件修复开销,研究高效的软件自动修复技术成为学术界和工业界的共识。缺陷定位作为自动修复技术的前端,是实现快速准确自动修复的关键,其精度直接影响自动修复的性能。然而,初步研究表明,现有缺陷定位技术缺乏对自修复需求的考虑,对自修复算法支持有限。有必要研究面向自修复的高精度自动化缺陷定位技术,以提升自修复性能。因此,提出了失效场景的缺陷定位方法来应对该问题。提出的方法首先采用程序切片技术,构造出与失效相关的场景;然后对失效场景的各个元素实施可疑值度量;最后将可疑值度量化的场景交给自动修复技术实施修复。初步实验结果表明,本缺陷定位方法能有效提升自动修复性能。
[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! |
|