skip to main content
research-article

Achieving Data Consistency by Contextualization in Web-Based Collaborative Applications

Published:01 March 2011Publication History
Skip Abstract Section

Abstract

Recent years have witnessed the emergence and rapid development of collaborative Web-based applications exemplified by Web-based office productivity applications. One major challenge in building these applications is maintaining data consistency while meeting the requirements of fast local response, total work preservation, unconstrained interaction, and customizable collaboration mode. These requirements are important in determining users’ experiences in interaction and collaboration, and in meeting users’ diverse needs under complex and dynamic collaboration and networking environments; but none of existing solutions is able to meet all of them. In this article, we present a data consistency maintenance solution capable of meeting these requirements for collaborative Web-based applications. Major technical contributions include an efficient sequence-based operation transformation control algorithm based on the concept of contextualization, an operation broadcast protocol for supporting a variety of collaboration modes, an operation replaying algorithm for ensuring fast local response and efficient remote operation replay, and a set of communication protocols for managing the integrity of collaborative Web-based sessions. The proposed solution has been implemented in a prototype collaborative Web-based editor WRACE and the correctness of the solution is formally verified in the article.

References

  1. Begole, J., Rosson, M. B., and Shaffer, C. A. 1999. Flexible collaboration transparency: Supporting worker independence in replicated application-sharing systems. ACM Trans. Comput.-Hum. Interact. 6, 2, 95--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bernstein, P., Goodman, N., and Hadzilacos, V. 1987. Concurrency Control and Recorvery in Database Systems. Addision-Welsley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Chawathe, S. S., Rajaraman, A., Garcia-Molina, H., and Widom, J. 1996. Change detection in hierarchically structured information. In Proceedings of the ACM SIGMOD International Conference on Management of Data. 493--504. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Douglis, F., Ball, T., Chen, Y. F., and Koutsofios, E. 1998. The AT&T internet difference engine: Tracking and viewing changes on the Web. J. World Wide Web 1, 1, 27--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Dourish, P. 1996. Consistency guarantees: Exploiting application semantics for consistency management in a collaboration toolkit. In Proceedings of the Conference on Computer-Supported Cooperative Work. 268--277. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Ellis, C. and Gibbs, S. 1989. Concurrency control in groupware systems. In Proceedings of ACM SIGMOD Conference on Management of Data. 399--407. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Fidge, C. 1988. Timestamps in message-passing systems that preserve the partial ordering. Austral. Comput. Sci. Comm. 10, 1, 56--66.Google ScholarGoogle Scholar
  8. Goodman, D. 2002. Dynamic HTML: The Definitive Reference 2nd Ed. O’Reilly Media. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Greenberg, S. and Marwood, D. 1994. Real time groupware as a distributed system: Concurrency control and its effect on the interface. In Proceedings of the ACM Conference on Computer Supported Cooperative Work. 207--217. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Jones, P. M. and Lucenti Jr., M. J. 2000. Flexible collaborative support: An architecture and application. In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics. 1057--1062.Google ScholarGoogle Scholar
  11. Karsenty, A. and Beaudouin-Lafon, M. 1993. An algorithm for distributed groupware applications. In Proceedings of the 13th Conference on Distributed Groupware Computing Systems. 195--202.Google ScholarGoogle Scholar
  12. Knister, M. and Prakash, A. 1993. Issues in the design of a toolkit for supporting mulitple group editors. J. Usenix Assoc. 6, 2, 135--166.Google ScholarGoogle Scholar
  13. Lamport, L. 1978. Time, clocks and the ordering of events in a distributed system. Comm. ACM 21, 7, 558--565. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Li, D. and Li, R. 2006. A performance study of group editing algorithms. In Proceedings of the 12th International Conference on Parallel and Distributed Systems. 300--307. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Li, R., Li, D., and Sun, C. 2004. A time interval based consistency control algorithm for interactive groupware applications. In Proceedings of the 10th International Conference on Parallel and Distributed Systems. 429--436. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Lindholm, T. 2004. A three-way merge for XML documents. In Proceedings of the ACM Symposium on Document Engineering. 1--10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. MacManus, R. 2007. Google docs the clear leader in Web office market. http://www.readwriteweb.com/archives/google_docs_web_office_leader.php.Google ScholarGoogle Scholar
  18. Mahemoff, M. 2006. Ajax Design Patterns. O’Reilly Meida. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. McGuffin, L. and Olson, G. 1992. ShrEdit: A shared electronic workshpace. CSMIL Tech. rep. 13.Google ScholarGoogle Scholar
  20. Myers, E. 1986. An O(ND) difference algorithm and its variations. Algorithmica 1, 2, 251--266.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Nichols, D. A., Curtis, P., Dixon, M., and Lamping, J. 1995. High-Latency, low-bandwidth windowing in the jupiter collaboration system. In Proceedings of the ACM Symposium on User Interface Software and Technology. 111--120. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. O’Reilly, T. 2005. What Is Web 2.0: Design Patterns and Business Models for the Next Generation of Software. O’Reilly Meida.Google ScholarGoogle Scholar
  23. Palmer, C. R. and Cormack, G. V. 1998. Operation transforms for a distributed shared spreadsheet. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 69--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Raynal, M. and Singhal, M. 1996. Logical time: Capturing causality in distributed systems. IEEE Comput. Mag. 29, 2, 49--56. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Ressel, M., Nitsche-Ruhland, D., and Gunzenbauser, R. 1996. An integrating, transformation-oriented approach to concurrency control and undo in group editors. In Proceedings of the ACM Conference on Computer Supported Cooperative Work. 288--297. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Shen, H. 2009. Maintaining constraints of UML models in distributed collaborative environments. J. Syst. Archit. 55, 7--9, 396--408. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Shen, H. and Sun, C. 2002. Flexible notification for collaborative systems. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 77--86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Shen, H., Xia, S., and Sun, C. 2007. Integrating advanced collaborative capabilities into Web-based word processors. In Proceedings of the 4th International Conference on Cooperative Design, Visualization and Engineering. 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Suleiman, M., Cart, M., and Ferrié, J. 1997. Serialization of concurrent operations in a distributed collaborative environment. In Proceedings of the ACM Conference on Supporting Group Work. 435--445. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Sun, C. and Chen, D. 2002. Consistency maintenance in real-time collaborative graphics editing systems. ACM Trans. Comput.-Hum. Interact. 9, 1, 1--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Sun, C. and Ellis, C. 1998. Operational transformation in real-time group editors: Issues, algorithms, and achievements. In Proceedings of the ACM Conference on Computer Supported Cooperative Work. 59--68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Sun, C., Jia, X., Zhang, Y., Yang, Y., and Chen, D. 1998. Achieving convergence, causality-preservation, and intention-preservation in real-time cooperative editing systems. ACM Trans. Comput.-Hum. Interact. 5, 1, 63--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Sun, C., Xia, S., Sun, D., Chen, D., Shen, H., and Cai, W. 2006. Transparent adaptation of single-user applications for multi-user real-time collaboration. ACM Trans. Comput.-Hum. Interact. 13, 4, 531--582. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Sun, D. and Sun, C. 2009. Context-based operational transformation in distributed collaborative editing systems. IEEE Trans. Paral. Distrib. Syst. 20, 10, 1454--1470. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Sun, D., Xia, S., Sun, C., and Chen, D. 2004. Operational transformation for collaborative word processing. In Proceedings of the ACM Conference on Computer Supported Cooperative Work. 437--446. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Vidot, N., Cart, M., and Suleiman, J. F. M. 2000. Copies convergence in a distributed real-time collaborative environment. In Proceedings of the ACM Conference on Computer Supported Cooperative Work. 171--180. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Yang, J., Wang, H., Gu, N., Liu, Y., Wang, C., and Zhang, Q. 2008. Lock-Free consistency control for Web 2.0 applications. In Proceedings of the ACM Conference on the World Wide Web. 725--734. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Zheng, Y., Shen, H., and Sun, C. 2010. Achieving innovative design by collaborative exploration of Boolean operations. IEEE Trans. Industr. Inf. 6, 2, 243--250.Google ScholarGoogle ScholarCross RefCross Ref
  39. Zhu, H. and Zhou, M. 2006. Role-Based collaborations and their kernel mechanisms. IEEE Trans. Syst., Man Cybernet. C 36, 4, 578--589. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Achieving Data Consistency by Contextualization in Web-Based Collaborative Applications

                            Recommendations

                            Comments

                            Login options

                            Check if you have access through your login credentials or your institution to get full access on this article.

                            Sign in

                            Full Access

                            PDF Format

                            View or Download as a PDF file.

                            PDF

                            eReader

                            View online with eReader.

                            eReader
                            About Cookies On This Site

                            We use cookies to ensure that we give you the best experience on our website.

                            Learn more

                            Got it!