skip to main content
10.1145/3395363.3397369acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

CoCoNuT: combining context-aware neural translation models using ensemble for program repair

Published: 18 July 2020 Publication History

Abstract

Automated generate-and-validate (GV) program repair techniques (APR) typically rely on hard-coded rules, thus only fixing bugs following specific fix patterns. These rules require a significant amount of manual effort to discover and it is hard to adapt these rules to different programming languages.
To address these challenges, we propose a new G&V technique—CoCoNuT, which uses ensemble learning on the combination of convolutional neural networks (CNNs) and a new context-aware neural machine translation (NMT) architecture to automatically fix bugs in multiple programming languages. To better represent the context of a bug, we introduce a new context-aware NMT architecture that represents the buggy source code and its surrounding context separately. CoCoNuT uses CNNs instead of recurrent neural networks (RNNs), since CNN layers can be stacked to extract hierarchical features and better model source code at different granularity levels (e.g., statements and functions). In addition, CoCoNuT takes advantage of the randomness in hyperparameter tuning to build multiple models that fix different bugs and combines these models using ensemble learning to fix more bugs.
Our evaluation on six popular benchmarks for four programming languages (Java, C, Python, and JavaScript) shows that CoCoNuT correctly fixes (i.e., the first generated patch is semantically equivalent to the developer’s patch) 509 bugs, including 309 bugs that are fixed by none of the 27 techniques with which we compare.

References

[1]
Fairseq-py. https://github.com/pytorch/fairseq, 2018.
[2]
Afsoon Afzal, Manish Motwani, Kathryn Stolee, Yuriy Brun, and Claire Le Goues. Sosrepair: Expressive semantic search for real-world program repair. IEEE Transactions on Software Engineering, 2019.
[3]
Carol V Alexandru. Guided code synthesis using deep neural networks. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 1068-1070. ACM, 2016.
[4]
Miltiadis Allamanis, Hao Peng, and Charles Sutton. A convolutional attention network for extreme summarization of source code. In International Conference on Machine Learning, pages 2091-2100, 2016.
[5]
Miltiadis Allamanis, Earl T Barr, Premkumar Devanbu, and Charles Sutton. A survey of machine learning for big code and naturalness. ACM Computing Surveys (CSUR), 51 ( 4 ): 81, 2018.
[6]
Miltiadis Allamanis, Marc Brockschmidt, and Mahmoud Khademi. Learning to represent programs with graphs. In International Conference on Learning Representations, 2018. URL https://openreview.net/forum?id= BJOFETxR-.
[7]
Uri Alon, Meital Zilberstein, Omer Levy, and Eran Yahav. code2vec: Learning distributed representations of code. Proceedings of the ACM on Programming Languages, 3 (POPL): 40, 2019.
[8]
Moumita Asad, Kishan Kumar Ganguly, and Kazi Sakib. Impact analysis of syntactic and semantic similarities on patch prioritization in automated program repair. In 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), pages 328-332. IEEE, 2019.
[9]
Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio. Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473, 2014.
[10]
James Bergstra and Yoshua Bengio. Random search for hyper-parameter optimization. Journal of Machine Learning Research, 13 (Feb): 281-305, 2012.
[11]
Saikat Chakraborty, Miltiadis Allamanis, and Baishakhi Ray. Tree2tree neural translation model for learning source code changes. arXiv preprint arXiv:1810.00314, 2018.
[12]
Liushan Chen, Yu Pei, and Carlo A Furia. Contract-based program repair without the contracts. In Automated Software Engineering (ASE), 2017 32nd IEEE/ACM International Conference on, pages 637-647. IEEE, 2017.
[13]
Zimin Chen, Steve James Kommrusch, Michele Tufano, Louis-Noël Pouchet, Denys Poshyvanyk, and Martin Monperrus. Sequencer: Sequence-to-sequence learning for end-to-end program repair. IEEE Transactions on Software Engineering, 2019.
[14]
Shamil Chollampatt and Hwee Tou Ng. A Multilayer Convolutional EncoderDecoder Neural Network for Grammatical Error Correction. 2018. URL http://arxiv.org/abs/ 1801.08831.
[15]
Shamil Chollampatt and Hwee Tou Ng. A multilayer convolutional encoderdecoder neural network for grammatical error correction. In Proceedings of the Thirty-Second AAAI Conference on Artificial Intelligence, February 2018.
[16]
Yann N. Dauphin, Angela Fan, Michael Auli, and David Grangier. Language modeling with gated convolutional networks. In Proceedings of the 34th International Conference on Machine Learning-Volume 70, ICML' 17, page 933-941. JMLR.org, 2017.
[17]
Thomas Durieux and Martin Monperrus. Dynamoth: dynamic code synthesis for automatic program repair. In Proceedings of the 11th International Workshop on Automation of Software Test, pages 85-91. ACM, 2016.
[18]
Tao Ge, Furu Wei, and Ming Zhou. Reaching Human-level Performance in Automatic Grammatical Error Correction: An Empirical Study. ( 3 ): 1-15, 2018. URL http://arxiv.org/abs/ 1807.01270.
[19]
Tao Ge, Furu Wei, and Ming Zhou. Fluency Boost Learning and Inference for Neural Grammatical Error Correction. Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics, 1 : 1-11, 2018. URL http://aclweb. org/anthology/P18-1097.
[20]
Jonas Gehring, Michael Auli, David Grangier, Denis Yarats, and Yann N Dauphin. Convolutional sequence to sequence learning. pages 1243-1252, 2017.
[21]
Georgios Gousios and Diomidis Spinellis. Ghtorrent: Github's data from a firehose. In 2012 9th IEEE Working Conference on Mining Software Repositories (MSR), pages 12-21, 2012.
[22]
Xiaodong Gu, Hongyu Zhang, and Sunghun Kim. Deep code search. In Proceedings of the 40th International Conference on Software Engineering, pages 933-944. ACM, 2018.
[23]
Rahul Gupta, Soham Pal, Aditya Kanade, and Shirish Shevade. Deepfix: Fixing common c language errors by deep learning. In AAAI, pages 1345-1351, 2017.
[24]
Péter Gyimesi, Béla Vancsics, Andrea Stocco, Davood Mazinanian, Arpád Beszédes, Rudolf Ferenc, and Ali Mesbah. Bugsjs: A benchmark of javascript bugs. In 2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST), pages 90-101. IEEE, 2019.
[25]
Quinn Hanam, Fernando S de M Brito, and Ali Mesbah. Discovering bug patterns in javascript. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 144-156. ACM, 2016.
[26]
Vincent J Hellendoorn and Premkumar Devanbu. Are deep neural networks the best choice for modeling source code? In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, ser. ESEC/FSE, pages 763-773, 2017.
[27]
Jinru Hua, Mengshi Zhang, Kaiyuan Wang, and Sarfraz Khurshid. Sketchfix: a tool for automated program repair approach using lazy candidate generation. In Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pages 888-891. ACM, 2018.
[28]
F. Jelinek, R. L. Mercer, L. R. Bahl, and J. K. Baker. Perplexity-a measure of the dificulty of speech recognition tasks. Journal of the Acoustical Society of America, 62 : S63, November 1977. Supplement 1.
[29]
Jiajun Jiang, Yingfei Xiong, Hongyu Zhang, Qing Gao, and Xiangqun Chen. Shaping program repair space with existing patches and similar code. pages 298-309, 2018.
[30]
Marcin Junczys-Dowmunt, Roman Grundkiewicz, Shubha Guha, and Kenneth Heafield. Approaching Neural Grammatical Error Correction as a Low-Resource Machine Translation Task. ( 2016 ): 595-606, 2018. URL http://arxiv.org/abs/ 1804. 05940.
[31]
René Just, Darioush Jalali, and Michael D Ernst. Defects4j: A database of existing faults to enable controlled testing studies for java programs. In Proceedings of the 2014 International Symposium on Software Testing and Analysis, pages 437-440. ACM, 2014.
[32]
Masahiro Kaneko, Yuya Sakaizawa, and Mamoru Komachi. Grammatical Error Detection Using Error-and Grammaticality-Specific Word Embeddings. Proceedings ofthe The 8th International Joint Conference on Natural Language Processing, ( 2016 ): 40-48, 2017. URL https://github.com/kanekomasahiro/grammatical-error-.
[33]
Jindae Kim and Sunghun Kim. Automatic patch generation with context-based change application. Empirical Software Engineering, 24 ( 6 ): 4071-4106, 2019.
[34]
Sunghun Kim, Hongyu Zhang, Rongxin Wu, and Liang Gong. Dealing with noise in defect prediction. In 2011 33rd International Conference on Software Engineering (ICSE), pages 481-490. IEEE, 2011.
[35]
Anil Koyuncu, Kui Liu, Tegawendé F Bissyandé, Dongsun Kim, Jacques Klein, Martin Monperrus, and Yves Le Traon. Fixminer: Mining relevant fix patterns for automated program repair. arXiv preprint arXiv:1810.01791, 2018.
[36]
Anil Koyuncu, Kui Liu, Tegawendé F Bissyandé, Dongsun Kim, Martin Monperrus, Jacques Klein, and Yves Le Traon. ifixr: bug report driven program repair. In Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pages 314-325, 2019.
[37]
Xuan Bach D Le, David Lo, and Claire Le Goues. History driven program repair. 1 : 213-224, 2016.
[38]
Claire Le Goues, ThanhVu Nguyen, Stephanie Forrest, and Westley Weimer. Genprog: A generic method for automatic software repair. Ieee transactions on software engineering, 38 ( 1 ): 54-72, 2012.
[39]
Claire Le Goues, Neal Holtschulte, Edward K Smith, Yuriy Brun, Premkumar Devanbu, Stephanie Forrest, and Westley Weimer. The manybugs and introclass benchmarks for automated repair of c programs. IEEE Transactions on Software Engineering, 41 ( 12 ): 1236-1256, 2015.
[40]
Jian Li, Pinjia He, Jieming Zhu, and Michael R Lyu. Software defect prediction via convolutional neural network. In Software Quality, Reliability and Security (QRS), 2017 IEEE International Conference on, pages 318-328. IEEE, 2017.
[41]
Liuqing Li, He Feng, Wenjie Zhuang, Na Meng, and Barbara Ryder. Cclearner: A deep learning-based clone detection approach. In Software Maintenance and Evolution (ICSME), 2017 IEEE International Conference on, pages 249-260. IEEE, 2017.
[42]
Yi Li, Wang Shaohua, and Tien N. Nguyen. DLfix: Context-based code transformation learning for automated program repair. In Software Engineering (ICSE), 2020 IEEE/ACM 42nd International Conference on. IEEE, 2020.
[43]
Derrick Lin, James Koppel, Angela Chen, and Armando Solar-Lezama. QuixBugs: a multi-lingual program repair benchmark set based on the quixey challenge. In Proceedings Companion of the 2017 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for Humanity, pages 55-56. ACM, 2017.
[44]
Wang Ling, Edward Grefenstette, Karl Moritz Hermann, Tomáš Kočisky`, Andrew Senior, Fumin Wang, and Phil Blunsom. Latent predictor networks for code generation. arXiv preprint arXiv:1603.06744, 2016.
[45]
Kui Liu, Anil Koyuncu, Kisub Kim, Dongsun Kim, and Tegawendé F Bissyandé. Lsrepair: Live search of fix ingredients for automated program repair. In 2018 25th Asia-Pacific Software Engineering Conference (APSEC), pages 658-662. IEEE, 2018.
[46]
Kui Liu, Anil Koyuncu, Tegawendé F Bissyandé, Dongsun Kim, Jacques Klein, and Yves Le Traon. You cannot fix what you cannot find! an investigation of fault localization bias in benchmarking automated program repair systems. In 2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST), pages 102-113. IEEE, 2019.
[47]
Kui Liu, Anil Koyuncu, Dongsun Kim, and Tegawendé F. Bissyandé. Tbar: Revisiting template-based automated program repair. In Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2019, pages 31-42, New York, NY, USA, 2019. ACM. ISBN 978-1-4503-6224-5. URL http://doi.acm.org/10.1145/3293882.3330577.
[48]
Kui Liu, Anil Koyuncu, Dongsun Kim, and Tegawendé F Bissyandé. Avatar: Fixing semantic bugs with fix patterns of static analysis violations. In 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER), pages 1-12. IEEE, 2019.
[49]
Kui Liu, Shangwen Wang, Anil Koyuncu, Kisub Kim, Tegawendé François D Assise Bissyande, Dongsun Kim, Peng Wu, Jacques Klein, Xiaoguang Mao, and Yves Le Traon. On the eficiency of test suite based program repair: A systematic assessment of 16 automated repair systems for java programs. In 42nd ACM/IEEE International Conference on Software Engineering (ICSE), 2020.
[50]
Xuliang Liu and Hao Zhong. Mining stackoverflow for program repair. In 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER), pages 118-129. IEEE, 2018.
[51]
Zhuo Ran Liu and Yang Liu. Exploiting Unlabeled Data for Neural Grammatical Error Detection. Journal of Computer Science and Technology, 32 ( 4 ): 758-767, 2017. ISSN 18604749.
[52]
Fan Long and Martin Rinard. Staged program repair with condition synthesis. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, pages 166-178. ACM, 2015.
[53]
Fan Long and Martin Rinard. An analysis of the search spaces for generate and validate patch generation systems. In Software Engineering (ICSE), 2016 IEEE/ACM 38th International Conference on, pages 702-713. IEEE, 2016.
[54]
Fan Long, Peter Amidon, and Martin Rinard. Automatic inference of code transforms for patch generation. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, ESEC/FSE, volume 2017, 2017.
[55]
Fan Long et al. Automatic patch generation via learning from successful human patches. PhD thesis, Massachusetts Institute of Technology, 2018.
[56]
Minh-Thang Luong, Hieu Pham, and Christopher D Manning. Efective approaches to attention-based neural machine translation. arXiv preprint arXiv:1508.04025, 2015.
[57]
Fernanda Madeiral, Simon Urli, Marcelo Maia, and Martin Monperrus. Bears: An extensible java bug benchmark for automatic program repair studies. In 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER), pages 468-478. IEEE, 2019.
[58]
Matias Martinez and Martin Monperrus. Astor: A program repair library for java. In Proceedings of the 25th International Symposium on Software Testing and Analysis, pages 441-444. ACM, 2016.
[59]
Sergey Mechtaev, Jooyong Yi, and Abhik Roychoudhury. Angelix: Scalable multiline program patch synthesis via symbolic analysis. In Proceedings of the 38th international conference on software engineering, pages 691-701. ACM, 2016.
[60]
Ali Mesbah, Andrew Rice, Emily Johnston, Nick Glorioso, and Edward Aftandilian. Deepdelta: learning to repair compilation errors. In Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pages 925-936, 2019.
[61]
Lili Mou, Rui Men, Ge Li, Lu Zhang, and Zhi Jin. On end-to-end program generation from user intention by deep neural networks. arXiv preprint arXiv:1510.07211, 2015.
[62]
Vijayaraghavan Murali, Letao Qi, Swarat Chaudhuri, and Chris Jermaine. Neural sketch learning for conditional program generation. In International Conference on Learning Representations, 2018. URL https://openreview.net/forum?id=HkfXMzAb.
[63]
Courtney Napoles and Chris Callison-Burch. Systematically Adapting Machine Translation for Grammatical Error Correction. Proceedings of the 12th Workshop on Innovative Use of NLP for Building Educational Applications, pages 345-356, 2017. URL http://www.aclweb.org/anthology/W17-5039.
[64]
Frolin S Ocariza, Jr, Karthik Pattabiraman, and Ali Mesbah. Vejovis: Suggesting ifxes for javascript faults. In Proceedings of the 36th International Conference on Software Engineering, pages 837-847, 2014.
[65]
Adam Paszke, Sam Gross, Soumith Chintala, and Gregory Chanan. Pytorch, 2017.
[66]
Hao Peng, Lili Mou, Ge Li, Yuxuan Liu, Lu Zhang, and Zhi Jin. Building program vector representations for deep learning. In International Conference on Knowledge Science, Engineering and Management, pages 547-553. Springer, 2015.
[67]
Yuhua Qi, Xiaoguang Mao, Yan Lei, Ziying Dai, and Chengsong Wang. Does genetic programming work well on automated program repair? In 2013 International Conference on Computational and Information Sciences, pages 1875-1878. IEEE, 2013.
[68]
Zichao Qi, Fan Long, Sara Achour, and Martin Rinard. An analysis of patch plausibility and correctness for generate-and-validate patch generation systems. In Proceedings of the 2015 International Symposium on Software Testing and Analysis, pages 24-36. ACM, 2015.
[69]
Ripon K Saha, Yingjun Lyu, Hiroaki Yoshida, and Mukul R Prasad. Elixir: efective object oriented program repair. In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, pages 648-659. IEEE Press, 2017.
[70]
Ripon K Saha, Yingjun Lyu, Wing Lam, Hiroaki Yoshida, and Mukul R Prasad. Bugs. jar: a large-scale, diverse dataset of real-world java bugs. In Proceedings of the 15th International Conference on Mining Software Repositories, pages 10-13, 2018.
[71]
Seemanta Saha, Ripon K Saha, and Mukul R Prasad. Harnessing evolution for multi-hunk program repair. In Proceedings of the 41st International Conference on Software Engineering, pages 13-24. IEEE Press, 2019.
[72]
Keisuke Sakaguchi, Matt Post, and Benjamin Van Durme. Grammatical Error Correction with Neural Reinforcement Learning. 2017. URL http://arxiv.org/abs/ 1707.00299.
[73]
Eddie A Santos, Joshua C Campbell, Abram Hindle, and José Nelson Amaral. Finding and correcting syntax errors using recurrent neural networks. PeerJ PrePrints, 2017.
[74]
Allen Schmaltz, Yoon Kim, Alexander M. Rush, and Stuart M. Shieber. Adapting Sequence Models for Sentence Correction. 2017. URL http://arxiv.org/abs/1707. 09067.
[75]
Ming Tan, Lin Tan, Sashank Dara, and Caleb Mayeux. Online defect prediction for imbalanced data. In 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, volume 2, pages 99-108. IEEE, 2015.
[76]
Shin Hwei Tan, Jooyong Yi, Sergey Mechtaev, Abhik Roychoudhury, et al. Codelfaws: a programming competition benchmark for evaluating automated program repair tools. In Proceedings of the 39th International Conference on Software Engineering Companion, pages 180-182. IEEE Press, 2017.
[77]
Michele Tufano, Cody Watson, Gabriele Bavota, Massimiliano Di Penta, Martin White, and Denys Poshyvanyk. An empirical investigation into learning bugifxing patches in the wild via neural machine translation. In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering. ACM, pages 832-837, 2018.
[78]
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. In Advances in Neural Information Processing Systems, pages 5998-6008, 2017.
[79]
Jinyong Wang and Ce Zhang. Software reliability prediction using a deep learning model based on the rnn encoder-decoder. Reliability Engineering & System Safety, 2017.
[80]
Ke Wang, Rishabh Singh, and Zhendong Su. Dynamic neural program embedding for program repair. arXiv preprint arXiv:1711.07163, 2017.
[81]
Song Wang, Taiyue Liu, and Lin Tan. Automatically learning semantic features for defect prediction. In Software Engineering (ICSE), 2016 IEEE/ACM 38th International Conference on, pages 297-308. IEEE, 2016.
[82]
Ming Wen, Junjie Chen, Rongxin Wu, Dan Hao, and Shing-Chi Cheung. Contextaware patch generation for better automated program repair. In Proceedings of the 40th International Conference on Software Engineering, pages 1-11. ACM, 2018.
[83]
Martin White, Christopher Vendome, Mario Linares-Vásquez, and Denys Poshyvanyk. Toward deep learning software repositories. In Mining Software Repositories (MSR), 2015 IEEE/ACM 12th Working Conference on, pages 334-345. IEEE, 2015.
[84]
Martin White, Michele Tufano, Christopher Vendome, and Denys Poshyvanyk. Deep learning code fragments for code clone detection. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, pages 87-98. ACM, 2016.
[85]
Tong Xiao, Tian Xia, Yi Yang, Chang Huang, and Xiaogang Wang. Learning from massive noisy labeled data for image classification. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 2691-2699, 2015.
[86]
Qi Xin and Steven P Reiss. Leveraging syntax-related code for automated program repair. In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, pages 660-670. IEEE Press, 2017.
[87]
Yingfei Xiong, Jie Wang, Runfa Yan, Jiachen Zhang, Shi Han, Gang Huang, and Lu Zhang. Precise condition synthesis for program repair. In Proceedings of the 39th International Conference on Software Engineering, pages 416-426. IEEE Press, 2017.
[88]
Jifeng Xuan, Matias Martinez, Favio Demarco, Maxime Clement, Sebastian Lamelas Marcote, Thomas Durieux, Daniel Le Berre, and Martin Monperrus. Nopol: Automatic repair of conditional statement bugs in java programs. IEEE Transactions on Software Engineering, 43 ( 1 ): 34-55, 2017.
[89]
Jinqiu Yang, Alexey Zhikhartsev, Yuefei Liu, and Lin Tan. Better test cases for better automated program repair. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, pages 831-841. ACM, 2017.
[90]
Helen Yannakoudakis, Marek Rei, Øistein E Andersen, and Zheng Yuan. Neural Sequence-Labelling Models for Grammatical Error Correction. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing, pages 2795-2806, 2017. D17-1297. URL http://aclweb.org/anthology/D17-1297.
[91]
Yuan Yuan and Wolfgang Banzhaf. Arja: Automated repair of java programs via multi-objective genetic programming. IEEE Transactions on Software Engineering, 2018.

Cited By

View all
  • (2025)Leveraging Large Language Models for Automated Program Repair in Programming EducationXRDS: Crossroads, The ACM Magazine for Students10.1145/370340831:2(58-60)Online publication date: 8-Jan-2025
  • (2025)ChatAssert: LLM-Based Test Oracle Generation With External Tools AssistanceIEEE Transactions on Software Engineering10.1109/TSE.2024.351915951:1(305-319)Online publication date: Jan-2025
  • (2025)GenProgJS: A Baseline System for Test-Based Automated Repair of JavaScript ProgramsIEEE Transactions on Software Engineering10.1109/TSE.2024.349779851:2(325-343)Online publication date: Feb-2025
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

ISSTA 2020: Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis
July 2020
591 pages
ISBN:9781450380089
DOI:10.1145/3395363
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 July 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. AI and Software Engineering
  2. Automated program repair
  3. Deep Learning
  4. Neural Machine Translation

Qualifiers

  • Research-article

Funding Sources

Conference

ISSTA '20
Sponsor:

Acceptance Rates

Overall Acceptance Rate 58 of 213 submissions, 27%

Upcoming Conference

ISSTA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)313
  • Downloads (Last 6 weeks)46
Reflects downloads up to 25 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Leveraging Large Language Models for Automated Program Repair in Programming EducationXRDS: Crossroads, The ACM Magazine for Students10.1145/370340831:2(58-60)Online publication date: 8-Jan-2025
  • (2025)ChatAssert: LLM-Based Test Oracle Generation With External Tools AssistanceIEEE Transactions on Software Engineering10.1109/TSE.2024.351915951:1(305-319)Online publication date: Jan-2025
  • (2025)GenProgJS: A Baseline System for Test-Based Automated Repair of JavaScript ProgramsIEEE Transactions on Software Engineering10.1109/TSE.2024.349779851:2(325-343)Online publication date: Feb-2025
  • (2025)D3: Differential Testing of Distributed Deep Learning With Model GenerationIEEE Transactions on Software Engineering10.1109/TSE.2024.346165751:1(38-52)Online publication date: 1-Jan-2025
  • (2025)Improving Patch Optimization With Buggy Block for Complex Program RepairIEEE Access10.1109/ACCESS.2025.354133613(30420-30443)Online publication date: 2025
  • (2025)Automated program repair for variability bugs in software product line systemsJournal of Systems and Software10.1016/j.jss.2024.112152221:COnline publication date: 1-Mar-2025
  • (2025)LineJLocRepair: A line-level method for Automated Vulnerability Repair based on joint trainingFuture Generation Computer Systems10.1016/j.future.2024.107671166(107671)Online publication date: May-2025
  • (2025)Structuring Semantic‐Aware Relations Between Bugs and Patches for Accurate Patch EvaluationJournal of Software: Evolution and Process10.1002/smr.7000137:2Online publication date: 6-Feb-2025
  • (2024)Technological Pillars of DecentralizationReshaping Marketing Science in Wholesaling and Retailing10.4018/979-8-3693-6145-0.ch012(280-308)Online publication date: 21-Aug-2024
  • (2024)Exploring the Potential of Pre-Trained Language Models of Code for Automated Program RepairElectronics10.3390/electronics1307120013:7(1200)Online publication date: 25-Mar-2024
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy