Synchronizing shared abstract types
ACM Transactions on Computer Systems (TOCS)
RCS—a system for version control
Software—Practice & Experience
Integrating noninterfering versions of programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Concurrency control in groupware systems
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Object management in a CASE environment
ICSE '89 Proceedings of the 11th international conference on Software engineering
CHI '90 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Flexible Diff-ing in a collaborative writing system
CSCW '92 Proceedings of the 1992 ACM conference on Computer-supported cooperative work
Undoing actions in collaborative work
CSCW '92 Proceedings of the 1992 ACM conference on Computer-supported cooperative work
A high-level and flexible framework for implementing multiuser user interfaces
ACM Transactions on Information Systems (TOIS) - Special issue on user interface software and technology
A framework for shared applications with a replicated architecture
UIST '93 Proceedings of the 6th annual ACM symposium on User interface software and technology
Managing update conflicts in Bayou, a weakly connected replicated storage system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
VerSE: towards hypertext versioning styles
Proceedings of the the seventh ACM conference on Hypertext
A concurrency control framework for collaborative systems
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
An integrating, transformation-oriented approach to concurrency control and undo in group editors
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
Network text editor (NTE): A scalable shared text editor for the MBone
SIGCOMM '97 Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication
An integrated approach to version control management in computer supported collaborative writing
ACM-SE 36 Proceedings of the 36th annual Southeast regional conference
A hypermedia version control framework
ACM Transactions on Information Systems (TOIS)
Using metalevel techniques in a flexible toolkit for CSCW applications
ACM Transactions on Computer-Human Interaction (TOCHI)
Re-coupling tailored user interfaces
CSCW '98 Proceedings of the 1998 ACM conference on Computer supported cooperative work
An Integrated Approach to Designing and Evaluating CollaborativeApplications and Infrastructures
Computer Supported Cooperative Work
Cooperative visual manipulation of music notation
ACM Transactions on Computer-Human Interaction (TOCHI)
Research directions in collaborative applications
COMPSAC '97 Proceedings of the 21st International Computer Software and Applications Conference
ECDL '00 Proceedings of the 4th European Conference on Research and Advanced Technology for Digital Libraries
C-Merge: A Tool for Policy-Based Merging of Resource Classifications
ECDL '01 Proceedings of the 5th European Conference on Research and Advanced Technology for Digital Libraries
Flexible Merging for Asynchronous Collaborative Systems
On the Move to Meaningful Internet Systems, 2002 - DOA/CoopIS/ODBASE 2002 Confederated International Conferences DOA, CoopIS and ODBASE 2002
Using the transformational approach to build a safe and generic data synchronizer
GROUP '03 Proceedings of the 2003 international ACM SIGGROUP conference on Supporting group work
A safe and generic model for synchronizing divergent data
UbiMob '04 Proceedings of the 1st French-speaking conference on Mobility and ubiquity computing
Supporting Adaptable Consistency Control in Structured Collaborative Workspaces
Computer Supported Cooperative Work
Draw-together: graphical editor for collaborative drawing
CSCW '06 Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work
Customisable collaborative editing supporting the work processes of organisations
Computers in Industry - Special issue: Collaborative environments for concurrent engineering
Exploiting schemas in data synchronization
Journal of Computer and System Sciences
The parting of the ways: divergence, data management and collaborative work
ECSCW'95 Proceedings of the fourth conference on European Conference on Computer-Supported Cooperative Work
Encapsulating and exploiting change with changeboxes
ICDL '07 Proceedings of the 2007 international conference on Dynamic languages: in conjunction with the 15th International Smalltalk Joint Conference 2007
Collaborative software engineering on large-scale models: requirements and experience in ModelBus
Proceedings of the 2008 ACM symposium on Applied computing
Multi-level Editing of Hierarchical Documents
Computer Supported Cooperative Work
Dimensions of tools for detecting software conflicts
Proceedings of the 2008 international workshop on Recommendation systems for software engineering
Gone but not forgotten: designing for disconnection in synchronous groupware
Proceedings of the 2010 ACM conference on Computer supported cooperative work
Support elements in graph structured schema reintegration
CIKM '10 Proceedings of the 19th ACM international conference on Information and knowledge management
The human factors of consistency maintenance in multiplayer computer games
Proceedings of the 16th ACM international conference on Supporting group work
Concurrent modeling in early phases of the software development life cycle
CRIWG'10 Proceedings of the 16th international conference on Collaboration and technology
Merging collection data structures in a content management system
SCM'01/SCM'03 Proceedings of the 2001 ICSE Workshops on SCM 2001, and SCM 2003 conference on Software configuration management
Autonomous storage management for personal devices with PodBase
USENIXATC'11 Proceedings of the 2011 USENIX conference on USENIX annual technical conference
Supporting customised collaboration over shared document repositories
CAiSE'06 Proceedings of the 18th international conference on Advanced Information Systems Engineering
Creative conflict resolution in realtime collaborative editing systems
Proceedings of the ACM 2012 conference on Computer Supported Cooperative Work
Journal of Computer and System Sciences
Making software integration really continuous
FASE'12 Proceedings of the 15th international conference on Fundamental Approaches to Software Engineering
Improving early detection of software merge conflicts
Proceedings of the 34th International Conference on Software Engineering
An introduction to model versioning
SFM'12 Proceedings of the 12th international conference on Formal Methods for the Design of Computer, Communication, and Software Systems: formal methods for model-driven engineering
Turning Conflicts into Collaboration
Computer Supported Cooperative Work
Hi-index | 0.00 |
The need to merge different versions of an object to a common state arises in collaborative computing due to several reasons including optimistic concurrency control, asynchronous coupling, and absence of access control. We have developed a flexible object merging framework that allows definition of the merge policy based on the particular application and the context of the collaborative activity. It performs automatic, semi-automatic, and interactive merges, supports semantics-determined merges, operates on objects with arbitrary structure and semantics, and allows fine-grained specification of merge policies. It is based on an existing collaborative applications framework and consists of a merge matrix, which defines merge functions and their parameters and allows definition of multiple merge policies, and a merge algorithm, which performs the merge based on the results computed by the merge functions. In conjunction with our framework we introduce a set of merge policies for several useful kinds of merges we have identified. This paper motivates the need for a general approach to merging, identifies some important merging issues, surveys previous research in merging, identifies a list of merge requirements, describes our merging framework and illustrates it with examples, and evaluates the framework with respect to the requirements and other research efforts in merging objects.