SCIENCE CHINA Information Sciences, Volume 62 , Issue 10 : 200103(2019) https://doi.org/10.1007/S11432-019-9947-6

Automated program repair: a step towardssoftware automation

More info
  • ReceivedFeb 26, 2019
  • AcceptedMay 23, 2019
  • PublishedSep 9, 2019


There is no abstract available for this article.


This work was partially supported by Singapore's National Cybersecurity RD Program (Grant No. NRF2014NCR-NCR001-21), National Key Research and Development Program of China (Grant No. 2017YFB1001803), and National Natural Science Foundation of China (Grant Nos. 61672045, 61529201).


[1] Mei H, Zhang L. Can big data bring a break-through for software automation? Sci China Inf Sci, 2018, 61: 056101. Google Scholar

[2] Seacord R, Plakosh D, Lewis G. Modernizing Legacy Systems: Software Technologies, Engineering Processes and Business Practices. Boston: Addison Wesley, 2003. Google Scholar

[3] Weimer W, Nguyen T V, Goues C L, et al. Automatically finding patches using genetic programming. In: Proceedings of ICSE, 2009. 364--374. Google Scholar

[4] Nguyen H D T, Qi D W, Roychoudhury A, et al. SemFix: program repair via semantic analysis. In: Proceedings of ICSE, 2013. 772--781. Google Scholar

[5] Mechtaev S, Griggio A, Cimatti A, et al. Symbolic execution with existential second-order constraints. In: Proceedings of ESEC/FSE, 2018. 389--399. Google Scholar

[6] Qi Z C, Long F, Achour S, et al. An analysis of patch plausibility and correctness for generate-and-validate patch generation systems. In: Proceedings of ISSTA, 2015. 24--36. Google Scholar

[7] Smith E K, Barr E, Goues C L, et al. Is the cure worse than the disease? overfitting in automated program repair. In: Proceedings of FSE, 2015. 532--543. Google Scholar

[8] Cadar C, Dunbar D, and Engler D. KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs. In: Proceedings of OSDI, 2008. 209--224. Google Scholar

[9] Marinescu P and Cadar C. Katch: high-coverage testing of software patches. In: Proceedings of ESEC-FSE, 2019. 235--245. Google Scholar

[10] Böhme M, Pham V T, Roychoudhury A. Coverage based greybox fuzzing as a markov chain. In: Proceedings of CCS, 2016. 489--506. Google Scholar

[11] Mechtaev S, Nguyen M D, Noller Y, et al. Semantic program repair using a reference implementation. In: Proceedings of ICSE, 2018. 129--139. Google Scholar

[12] Mechtaev S, Yi J, Roychoudhury A. Directfix: looking for simple program repairs. In: Proceedings of ICSE, 2015. 448--458. Google Scholar

[13] Tan S H, Yoshida H, Prasad M, et al. Anti-patterns in search-based program repair. In: Proceedings of FSE, 2016. 727--738. Google Scholar

[14] Just R, Jalali D, and Ernst M D. Defects4j: a database of existing faults to enable controlled testing studies for java programs. In: Proceedings of ISSTA, 2014. 437--440. Google Scholar

[15] Dmeiri N, Tomassi D, Wang Y, et al. Bugswarm: mining and continuously growing a dataset of reproducible failures and fixes. In: Proceedings of ICSE, 2019. 339--349. Google Scholar

[16] Xiong Y F, Wang J, Yan R F, et al. Precise condition synthesis for program repair. In: Proceedings of ICSE, 2017. 416--426. Google Scholar

[17] Gao Q, Zhang H S, Wang J, et al. Fixing recurring crash bugs via analyzing q&a sites (T) In: Proceedings of ASE, 2015. Google Scholar

[18] Xiong Y, Wang B, Fu G R, and et al. Learning to synthesize. In: Proceedings of GI, 2018. 37--44. Google Scholar

[19] Gupta R, Pal S, Kanade A, and Shevade S. DeepFix: fixing common C language errors by deep learning. In: Proceedings of AAAI, 2017. Google Scholar

[20] Mechtaev S, Gao X, Tan S H, et al. Test-equivalence analysis for automatic patch generation. ACM Trans Softw Eng Methodol, 2018, 27: 1--37. Google Scholar

[21] Wang B, Xiong Y F, Shi Y Q W, et al. Faster mutation analysis via equivalence modulo states. In: Proceedings of ISSTA, 2017. 295--306. Google Scholar