Exhaustive search of puzzles in operational transformation

Operational Transformation (OT) is a collaboration-enabling technology and increasingly adopted in a wide range of real-world applications. One long-lasting issue in OT research is detecting and resolving puzzles -- subtle and characteristic collaborative editing scenarios in which an OT system may fail. After many years of extensive search and research, a variety of intricate puzzles have been de-tected and resolved. However, it remains open whether all puzzles, under certain well-defined conditions, have been discovered. To address this issue, we set out to devise a system of verification frameworks and a software tool, that are independent of specific OT algorithms and able to ex-haustively cover all possible transformation cases in which puzzles (if any) will manifest themselves. With the support of these tools, we verified OT correctness and concluded: all puzzles, under basic data and operation models and established transformation properties, have been discov-ered and resolved. Our discoveries help resolve a number of long-standing mysteries surrounding OT correctness and contribute to the advancement of OT fundamental knowledge and technology.

[1]  Mo Li,et al.  Achieving convergence in operational transformation: conditions, mechanisms and systems , 2014, CSCW.

[2]  James Begole,et al.  Flexible collaboration transparency: supporting worker independence in replicated application-sharing systems , 1999, TCHI.

[3]  Fei Liu,et al.  CoMaya: incorporating advanced collaboration capabilities into 3d digital media design tools , 2008, CSCW.

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

[5]  Matthias Ressel,et al.  Reducing the problems of group undo , 1999, GROUP.

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

[7]  Hanifa Boucheneb,et al.  On Model-Checking Optimistic Replication Algorithms , 2009, FMOODS/FORTE.

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

[9]  Ning Gu,et al.  A sequence transformation algorithm for supporting cooperative work on mobile devices , 2010, CSCW '10.

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

[11]  Claudia-Lavinia Ignat,et al.  Customizable Collaborative Editor Relying on treeOPT Algorithm , 2003, ECSCW.

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

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

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

[15]  Rui Li,et al.  Preserving operation effects relation in group editors , 2004, CSCW.

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

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

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

[19]  Chengzheng Sun,et al.  Operational transformation for orthogonal conflict resolution in real-time collaborative 2d editing systems , 2012, CSCW '12.

[20]  Chengzheng Sun,et al.  Dependency-conflict detection in real-time collaborative 3D design systems , 2013, CSCW '13.

[21]  Wentong Cai,et al.  Transparent adaptation of single-user applications for multi-user real-time collaboration , 2006, TCHI.

[22]  Jiang-Ming Yang,et al.  Consistency maintenance based on the mark & retrace technique in groupware systems , 2005, GROUP.

[23]  David Sun,et al.  Context-Based Operational Transformation in Distributed Collaborative Editing Systems , 2009, IEEE Transactions on Parallel and Distributed Systems.

[24]  Gordon V. Cormack,et al.  Operation transforms for a distributed shared spreadsheet , 1998, CSCW '98.

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