A Multi-Versioning Scheme for Intention Preservation in Collaborative Editing Systems*

Although the multi-version approach to consistency maintenance has been widely discussed and implemented in database systems, version control systems, and asynchronous groupware systems, its potential in real-time groupware systems is largely unexplored. Intention preservation is an important aspect of consistency maintenance in real-time collaborative editing systems, where multiple users cooperate with each other by concurrently editing the same document. The multi-version approach is supposed to be able to preserve individual users’ concurrent conflicting intentions. In this article, we propose a new multi-versioning scheme that can preserve not only concurrent conflicting intentions but also contextual intentions while achieving convergence of the document under editing. By extending an existing multi-versioning scheme to a general one that specifies the conditions for convergence, we decouple the discussion of convergence from that of intention preservation. By constraining the general scheme, we arrive at the novel scheme that guarantees to preserve users’ intentions. The correctness of the scheme has been formally verified. The design of an algorithm for consistent version composition and identification has been discussed in detail.

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

[2]  Saul Greenberg,et al.  GroupWare for Real-Time Drawing: A Designer's Guide , 1995 .

[3]  Yohannes Woldetensae Mathematical logic and set theory , 1999 .

[4]  Alain Karsenty,et al.  An algorithm for distributed groupware applications , 1993, [1993] Proceedings. The 13th International Conference on Distributed Computing Systems.

[5]  Michel Beaudouin-Lafon,et al.  Computer supported co-operative work , 1999 .

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

[7]  Mehmet A. Orgun,et al.  A Group-Based Time-Stamping Scheme for the Preservation of Group Intentions , 2002, DCW.

[8]  Prasun Dewan,et al.  A concurrency control framework for collaborative systems , 1996, CSCW '96.

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

[10]  Jörg M. Haake,et al.  Supporting collaborative writing of hyperdocuments in SEPIA , 1992, CSCW '92.

[11]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[12]  Rushed Kanawati LICRA: A Replicated-Data Management Algorithm for Distributed Synchronous Groupware Applications , 1997, Parallel Comput..

[13]  Mehmet A. Orgun,et al.  Locking without requesting a lock: A consistency maintenance mechanism in Internet-based real-time group editors , 2005, J. Parallel Distributed Comput..

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

[15]  Winfried K. Grassmann,et al.  Logic and discrete mathematics - a computer science perspective , 1995 .

[16]  Jonathan Grudin,et al.  Why CSCW applications fail: problems in the design and evaluationof organizational interfaces , 1988, CSCW '88.

[17]  Mukesh Singhal,et al.  Logical Time: Capturing Causality in Distributed Systems , 1996, Computer.

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

[19]  Yanbo Han,et al.  Engineering and deployment of cooperative information systems : First International Conference, EDCIS 2002, Beijing, China, September 17-20, 2002 : proceedings , 2002 .

[20]  Jonathan Trevor,et al.  Anchored conversations: chatting in the context of a document , 2000, CHI.

[21]  Prasun Dewan,et al.  Sync: A Java Framework for Mobil Collaborative Applications , 1997, Computer.

[22]  Mehmet A. Orgun,et al.  A Multi-versioning Algorithm for Intention Preservation in Distributed Real-time Group Editors , 2003, ACSC.

[23]  Rob Procter,et al.  An investigation of the influence of network quality of service on the effectiveness of multimedia communication , 1999, GROUP '99.

[24]  Mehmet A. Orgun,et al.  Intention Preservation by Multi-versioning in Distributed Real-Time Group Editors , 2002, EDCIS.

[25]  Prasun Dewan,et al.  Architectures for Collaborative Applications , 1999 .

[26]  Yanchun Zhang,et al.  Real-Time Cooperative Editing on the Internet , 2000, IEEE Internet Comput..

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

[28]  Chengzheng Sun,et al.  A distributed algorithm for graphic objects replication in real-time group editors , 1999, GROUP.

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

[30]  Alain Karsenty,et al.  GroupDesign: Shared Editing in a Heterogeneous Environment , 1993, Comput. Syst..

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