Awareness and coordination in shared workspaces
CSCW '92 Proceedings of the 1992 ACM conference on Computer-supported cooperative work
SDE 5 Proceedings of the fifth ACM SIGSOFT symposium on Software development environments
A flexible object merging framework
CSCW '94 Proceedings of the 1994 ACM conference on Computer supported cooperative work
Program integration for languages with procedure calls
ACM Transactions on Software Engineering and Methodology (TOSEM)
Coordination, overload and team performance: effects of team communication strategies
CSCW '98 Proceedings of the 1998 ACM conference on Computer supported cooperative work
Parallel changes in large-scale software development: an observational case study
ACM Transactions on Software Engineering and Methodology (TOSEM)
Software Configuration Management Patterns: Effective Teamwork, Practical Integration
Software Configuration Management Patterns: Effective Teamwork, Practical Integration
Palantír: raising awareness among configuration management workspaces
Proceedings of the 25th International Conference on Software Engineering
FASTDash: a visual dashboard for fostering awareness in software teams
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Supporting distributed software development by modes of collaboration
ECSCW'01 Proceedings of the seventh conference on European Conference on Computer Supported Cooperative Work
Awareness in the Wild: Why Communication Breakdowns Occur
ICGSE '07 Proceedings of the International Conference on Global Software Engineering
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
An exploratory study of awareness interests about software modifications
Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering
Proactive detection of collaboration conflicts
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Hi-index | 0.00 |
The earlier merge conflicts are detected the easier it is to resolve them. A recommended practice is for developers to frequently integrate so that they detect conflicts earlier. However, manual integrations are cumbersome and disrupt programming flow, so developers commonly defer them; besides, manual integrations do not help to detect conflicts with uncommitted code of co-workers. Consequently, conflicts grow over time thus making resolution harder at late stages. We present a solution that continuously integrates in the background uncommitted and committed changes to support automatic detection of conflicts emerging during programming. To do so, we designed a novel merge algorithm that is O(N) complex, and implemented it inside an IDE, thus promoting a metaphor of continuous merging, similar to continuous compilation. Evidence from controlled experiments shows that our solution helps developers to become aware of and resolve conflicts earlier than when they use a mainstream version control system.