Collaborative Real Time Coding or How to Avoid the Dreaded Merge
Stanislav Levin, Amiram Yehudai

TL;DR
This paper introduces a real-time collaborative coding system that minimizes manual merges by blocking conflicting changes until they are valid, demonstrated through an Eclipse IDE plugin.
Contribution
It presents the design and implementation of a novel real-time collaborative coding approach and a prototype plugin for Eclipse IDE, addressing challenges unique to code editing.
Findings
Reduces manual merge conflicts in collaborative coding.
Allows real-time code sharing with conflict prevention.
Demonstrates feasibility through an Eclipse IDE plugin.
Abstract
Software engineers who collaborate to develop software in teams often have to manually merge changes they made to a module (e.g. a class), because the change conflicts with one that has just been made by another engineer to the same or another module (e.g. a supplier class). This is due to the fact that engineers edit code separately, and loosely coordinate their work via a source control or a software configuration management system (SCM). This work proposes to eliminate almost all the need to manually merge a recent change, by proposing a Collaborative Real Time Coding approach. In this approach, valid changes to the code are seen by others in real time, but intermediate changes (that cause the code not to compile) result in blocking other engineers from making changes related to the entity (e.g. method) being modified, while allowing them to work on most of the system. The subject of…
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
TopicsUsability and User Interface Design · Model-Driven Software Engineering Techniques · Software Engineering Techniques and Practices
