An Approach to Ensuring Consistency in Peer-to-Peer Real-Time Group Editors

Real-time group editors allow distributed users to edit a shared document at the same time over a computer network. Operational transformation (OT) is a well accepted consistency control method in state-of-the-art group editors. Significant progress has been made in this field but there are still many open issues and research opportunities. In particular, established theoretic OT frameworks all require that OT algorithms be able to converge along arbitrary transformation paths. This property is desirable because group editors that implement such algorithms will not rely on a central component for achieving convergence. However, this has not been achieved in any published work to our knowledge. We analyze the root of this problem and propose a novel state difference based transformation (SDT) approach which ensures convergence in the presence of arbitrary transformation paths. Our approach is based on a novel consistency model that is more explicitly formulated than previously established models for proving correctness. SDT is the first and the only OT algorithm proved to converge in peer-to-peer group editors.

[1]  Yanchun Zhang,et al.  Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems , 1998, TCHI.

[2]  Junwei Lu,et al.  Generalizing operational transformation to the standard general markup language , 2002, CSCW '02.

[3]  Chengzheng Sun,et al.  Operational transformation in real-time group editors: issues, algorithms, and achievements , 1998, CSCW '98.

[4]  Nicolas Vidot,et al.  Copies convergence in a distributed real-time collaborative environment , 2000, CSCW '00.

[5]  Rui Li,et al.  A landmark-based transformation approach to concurrency control in group editors , 2005, GROUP '05.

[6]  Chengzheng Sun,et al.  Undo as concurrent inverse in group editors , 2002, TCHI.

[7]  Chengzheng Sun,et al.  Consistency maintenance in real-time collaborative graphics editing systems , 2002, Interactions.

[8]  Jonathan Grudin,et al.  Groupware and social dynamics: eight challenges for developers , 1994, CACM.

[9]  Pierfrancesco Bellini,et al.  Cooperative visual manipulation of music notation , 2002, TCHI.

[10]  David Kaufer,et al.  Computer support for distributed collaborative writing: defining parameters of interaction , 1994, CSCW '94.

[11]  Hala Skaf-Molli,et al.  Semantic Consistency for Collaborative Systems , 2003 .

[12]  SYLVIE NOËL,et al.  Empirical Study on Collaborative Writing: What Do Co-authors Do, Use, and Like? , 2004, Computer Supported Cooperative Work (CSCW).

[13]  Rui Li,et al.  Transparent sharing and interoperation of heterogeneous single-user applications , 2002, CSCW '02.

[14]  Rui Li,et al.  A New Operational Transformation Framework for Real-Time Group Editors , 2007, IEEE Transactions on Parallel and Distributed Systems.

[15]  W. Keith Edwards,et al.  Policies and roles in collaborative applications , 1996, CSCW '96.

[16]  Clarence A. Ellis,et al.  Groupware: some issues and experiences , 1991, CACM.

[17]  Jean Ferrié,et al.  Concurrent operations in a distributed and mobile collaborative environment , 1998, Proceedings 14th International Conference on Data Engineering.

[18]  Rui Li,et al.  A time interval based consistency control algorithm for interactive groupware applications , 2004, Proceedings. Tenth International Conference on Parallel and Distributed Systems, 2004. ICPADS 2004..

[19]  Pascal Molli,et al.  Achieving Convergence with Operational Transformation in Distributed Groupware Systems , 2004 .

[20]  Prasun Dewan,et al.  An editing-based characterization of the design space of collaborative applications , 1994 .

[21]  Jean Ferrié,et al.  Serialization of concurrent operations in a distributed collaborative environment , 1997, GROUP.

[22]  Pascal Molli,et al.  Real time group editors without Operational transformation , 2005 .

[23]  Gary M. Olson,et al.  Unblocking brainstorming through the use of a simple group editor , 1992, CSCW '92.

[24]  Haifeng Shen,et al.  Flexible notification for collaborative systems , 2002, CSCW '02.

[25]  Kai Lin,et al.  Maintaining Constraints in Collaborative Graphic Systems: the CoGSE Approach , 2005, ECSCW.

[26]  Paul Dourish,et al.  Consistency guarantees: exploiting application semantics for consistency management in a collaboration toolkit , 1996, CSCW '96.

[27]  Carl Gutwin,et al.  A Descriptive Framework of Workspace Awareness for Real-Time Groupware , 2002, Computer Supported Cooperative Work (CSCW).

[28]  Michaël Rusinowitch,et al.  Proving Correctness of Transformation Functions in Real-Time Groupware , 2003, ECSCW.

[29]  Michael Dixon,et al.  High-latency, low-bandwidth windowing in the Jupiter collaboration system , 1995, UIST '95.

[30]  Chengzheng Sun Optional and Responsive Fine-Grain Locking in Internet-Based Collaborative Systems , 2002, IEEE Trans. Parallel Distributed Syst..

[31]  Saul Greenberg,et al.  Real time groupware as a distributed system: concurrency control and its effect on the interface , 1994, CSCW '94.

[32]  Rui Li,et al.  An Operational Transformation Algorithm and Performance Evaluation , 2005, Computer Supported Cooperative Work (CSCW).

[33]  Atul Prakash,et al.  A framework for undoing actions in collaborative systems , 1994, TCHI.

[34]  Chengzheng Sun,et al.  Operational transformation for collaborative word processing , 2004, CSCW.

[35]  David Sun,et al.  Leveraging single-user applications for multi-user collaboration: the coword approach , 2004, CSCW.

[36]  Frank M. Shipman,et al.  Formality Considered Harmful: Experiences, Emerging Themes, and Directions on the Use of Formal Representations in Interactive Systems , 1999, Computer Supported Cooperative Work (CSCW).

[37]  Ronald Baecker,et al.  The user-centered iterative design of collaborative writing software , 1993, INTERCHI.

[38]  Matthias Ressel,et al.  An integrating, transformation-oriented approach to concurrency control and undo in group editors , 1996, CSCW '96.

[39]  Du Li,et al.  Demonstrational customization of a shared whiteboard to support user-defined semantic relationships among objects , 2001, GROUP.

[40]  Richard Bentley,et al.  Medium versus mechanism: Supporting collaboration through customisation , 1995, ECSCW.

[41]  Clarence A. Ellis,et al.  Concurrency control in groupware systems , 1989, SIGMOD '89.