Overwatch: Learning Patterns in Code Edit Sequences
Yuhao Zhang, Yasharth Bajpai, Priyanshu Gupta, Ameya Ketkar, Miltiadis, Allamanis, Titus Barik, Sumit Gulwani, Arjun Radhakrishna, Mohammad Raza,, Gustavo Soares, Ashish Tiwari

TL;DR
Overwatch is a novel technique that learns patterns in developers' code edit sequences using temporal context, significantly improving IDE suggestions by predicting common and new edits with high precision.
Contribution
This paper introduces Overwatch, a new method for learning code edit sequence patterns from IDE usage data, enhancing code suggestion accuracy and coverage.
Findings
Overwatch achieves 78% precision in predicting code edits.
It can predict edits that lack existing IDE support.
Overwatch improves developer assistance by capturing temporal editing patterns.
Abstract
Integrated Development Environments (IDEs) provide tool support to automate many source code editing tasks. Traditionally, IDEs use only the spatial context, i.e., the location where the developer is editing, to generate candidate edit recommendations. However, spatial context alone is often not sufficient to confidently predict the developer's next edit, and thus IDEs generate many suggestions at a location. Therefore, IDEs generally do not actively offer suggestions and instead, the developer is usually required to click on a specific icon or menu and then select from a large list of potential suggestions. As a consequence, developers often miss the opportunity to use the tool support because they are not aware it exists or forget to use it. To better understand common patterns in developer behavior and produce better edit recommendations, we can additionally use the temporal…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Advanced Malware Detection Techniques · Software Testing and Debugging Techniques
MethodsAttentive Walk-Aggregating Graph Neural Network
