skip to main content
article

Transparent adaptation of single-user applications for multi-user real-time collaboration

Published:01 December 2006Publication History
Skip Abstract Section

Abstract

Single-user interactive computer applications are pervasive in our daily lives and work. Leveraging single-user applications for supporting multi-user collaboration has the potential to significantly increase the availability and improve the usability of collaborative applications. In this article, we report an innovative Transparent Adaptation (TA) approach and associated supporting techniques that can be used to convert existing and new single-user applications into collaborative ones, without changing the source code of the original application. The cornerstone of the TA approach is the operational transformation (OT) technique and the method of adapting the single-user application programming interface to the data and operation models of OT. This approach and supporting techniques were developed and tested in the process of transparently converting two commercial off-the-shelf single-user applications (Microsoft Word and PowerPoint) into real-time collaborative applications, called CoWord and CoPowerPoint, respectively. CoWord and CoPowerPoint not only retain the functionalities and “look-and-feel” of their single-user counterparts, but also provide advanced multi-user collaboration capabilities for supporting multiple interaction paradigms, ranging from concurrent and free interaction to sequential and synchronized interaction, and for supporting detailed workspace awareness, including multi-user telepointers and radar views. The TA approach and generic collaboration engine software component developed from this work are potentially applicable and reusable in adapting a wide range of single-user applications.

References

  1. Abdel-Wahab, H. and Peit, M. 1991. XTV: A framework for sharing x window clients in remote synchronous collaboration. In Proceedings of the IEEE Tricomm Conference. 159--167.Google ScholarGoogle Scholar
  2. Begole, J., Rosson, M., and Shaffer, C. 1999. Flexible collaboration transparency: Supporting worker independence in replicated application sharing systems. ACM Trans. Comput.-Human Interact. 6, 2, 95--132. Google ScholarGoogle Scholar
  3. Begole, J., Smith, R., Struble, C., and Shaffer, C. 2001. Resource sharing for replicated synchronous groupware. IEEE/ACM Trans. Network. 9, 6, 833--843. Google ScholarGoogle Scholar
  4. Chung, G. and Dewan, P. 1996. A mechanism for supporting client migration in a shared window system. In Proceedings of the ACM Symposium on User Interface Software and Technology. 11--20. Google ScholarGoogle Scholar
  5. Chung, G., Jeffay, K., and Abdel-Wahab, H. 1993. Accommodating latecomers in shared window systems. IEEE Comput. 26, 1, 72--74. Google ScholarGoogle Scholar
  6. Crowley, T., Milazzo, P., Baker, E., Forsdick, H., and Tomlinson, R. 1990. MMConf: An infrastructure for building shared multimedia applications. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 329--342. Google ScholarGoogle Scholar
  7. Davis, A., Sun, C., and Lu, J. 2002. Generalizing operational transformation to the standard general markup language. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 58--67. Google ScholarGoogle Scholar
  8. Ellis, C. A. and Gibbs, S. J. 1989. Concurrency control in groupware systems. In Proceedings of the ACM Conference on Management of Data. 399--407. Google ScholarGoogle Scholar
  9. Ellis, C. A., Gibbs, S. J., and Rein, G. L. 1991. Groupware: Some issues and experiences. Commun. ACM 34, 1, 39--58. Google ScholarGoogle Scholar
  10. Engelbart, D. 1975. NLS teleconferencing features: The journal, and shared-screen telephoning. In Proceedings of the IEEE Fall COMPCON. 173--176.Google ScholarGoogle Scholar
  11. Forsdick, H. 1985. Explorations in real-time multimedia conferencing. In Proceedings of the 2nd International Symposium on Computer Message Systems. 299--315.Google ScholarGoogle Scholar
  12. Garfinkel, D., Welti, B., and Yip, T. 1994. HP SharedX: A tool for real-time collaboration. HP J. 45, 2, 23--36.Google ScholarGoogle Scholar
  13. Gutwin, C. and Greenberg, S. 1999. The effects of workspace awareness support on the usability of real-time distributed groupware. ACM Trans. Comput.-Human Interact. 6, 3, 243--281. Google ScholarGoogle Scholar
  14. Ignat, C. and Norrie, M. 2003. Customizable collaborative editor relying on treeOPT algorithm. In Proceedings of the European Conference of Computer-Supported Cooperative Work. 315--324. Google ScholarGoogle Scholar
  15. Iseminger, D. 2000. Automation. COM+ Developer's Reference Library, vol. 4. Microsoft Press, Redmond, WA. Google ScholarGoogle Scholar
  16. Knister, M. and Prakash, A. 1993. Issues in the design of a toolkit for supporting multiple group editors. J. Usenix Assoc. 6, 2, 135--166.Google ScholarGoogle Scholar
  17. Lantz, K. 1986. An experiment in integrating multimedia conferencing. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 267--275. Google ScholarGoogle Scholar
  18. Lauwers, J., Joseph, T. A., Lantz, K., and Romanow, A. L. 1990. Replicated architectures for shared window systems: A critique. In Proceedings of the ACM Conference on Organization Information Systems. 249--260. Google ScholarGoogle Scholar
  19. Lauwers, J. and Lantz, K. 1990. Collaboration awareness in support of collaboration transparency: Requirements for the next generation of shared window systems. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 303--311. Google ScholarGoogle Scholar
  20. Li, D. and Li, R. 2002. Transparent sharing and interoperation of heterogeneous single-user applications. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 246--255. Google ScholarGoogle Scholar
  21. Li, D. and Li, R. 2004. Preserving operation effects relation in group editors. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 457--466. Google ScholarGoogle Scholar
  22. Lu, J., Li, R., and Li, D. 2004. A state difference-based approach to sharing semi-heterogeneous single-user editors. In Proceedings of the 6th International Workshop on Collaborative Editing Systems, in conjunction with ACM CSCW.Google ScholarGoogle Scholar
  23. Olson, J., Olson, G., Strorrosten, M., and Carter, M. 1992. How a group-editor changes the character of a design meeting as well as its outcome. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 91--98. Google ScholarGoogle Scholar
  24. Palmer, C. and Cormack, G. 1998. Operation transforms for a distributed shared spreadsheet. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 69--78. Google ScholarGoogle Scholar
  25. Patterson, J., Day, M., and Kucan, J. 1996. Notification servers for synchronous groupware. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 122--129. Google ScholarGoogle Scholar
  26. Ressel, M., Nitsche-Ruhland, D., and Gunzenhäuser, 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 Scholar
  27. Rodham, K. and Olsen, D. 1994. Smart telepointers: Maintaining telepointer consistency in the presence of user interface customization. ACM Trans. Graph. 13, 3, 300--307. Google ScholarGoogle Scholar
  28. Roseman, M. and Greenberg, S. 1996. Building real-time groupware with groupkit, a groupware tookit. ACM Trans. Comput.-Human Interact. 3, 1, 66--106. Google ScholarGoogle Scholar
  29. Sarin, S. and Greif, I. 1985. Computer-Based real-time conferencing systems. IEEE Comput. 18, 10, 33--45. Google ScholarGoogle Scholar
  30. Shen, H. and Sun, C. 2002. A flexible notification framework for collaborative systems. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 77--86. Google ScholarGoogle Scholar
  31. Stefik, M., Bobrow, D., Foster, G., Lanning, S., and Tatar, D. 1987. WYSIWIS revised: Early experiences with multiuser interfaces. ACM Trans. Office Inform. Syst. 5, 2, 147--167. Google ScholarGoogle Scholar
  32. Sun, C. Undo any operation at any booktitle.Google ScholarGoogle Scholar
  33. Sun, C. 2002a. Optional and responsive fine-grain locking in Internet-based collaborative systems. IEEE Trans. Parallel Distrib. Syst. 13, 9, 994--1008. Google ScholarGoogle Scholar
  34. Sun, C. 2002b. Undo as concurrent inverse in group editors. ACM Trans. Comput.-Human Interact. 9, 4, 309--361. Google ScholarGoogle Scholar
  35. Sun, C. and Chen, D. 2002. Consistency maintenance in real-time collaborative graphics editing systems. ACM Trans. Comput.-Human Interact. 9, 1, 1--41. Google ScholarGoogle Scholar
  36. Sun, C. and Ellis, C. A. 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 Scholar
  37. 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.-Human Interact. 5, 1, 63--108. Google ScholarGoogle Scholar
  38. Sun, D. and Sun, C. 2006. Operation context and context-based operational transformation. In ACM Conference on Computer-Supported Cooperative Work. 279--288. Google ScholarGoogle Scholar
  39. 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 Scholar
  40. Xia, S., Sun, D., Sun, C., and Chen, D. 2005a. Collaborative object-grouping in graphics editing systems. In Proceedings of the IEEE Conference on Collaborative Computing: Networking, Applications and Worksharing.Google ScholarGoogle Scholar
  41. Xia, S., Sun, D., Sun, C., and Chen, D. 2005b. A collaborative table editing technique based on transparent adaptation. In Proceedings of the International Conference on Cooperative Information Systems. Lecture Notes in Computer Science 3760. Springer Verlag, New York. 576--592. Google ScholarGoogle Scholar
  42. Xia, S., Sun, D., Sun, C., and Chen, D. 2005c. Object-Associated telepointer for real-time collaborative document editing systems. In Proceedings of the IEEE Conference on Collaborative Computing: Networking, Applications and Worksharing.Google ScholarGoogle Scholar
  43. Xia, S., Sun, D., Sun, C., Chen, D., and Shen, H. 2004. Leveraging single-user applications for multi-user collaboration: The CoWord approach. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 162--171. Google ScholarGoogle Scholar

Index Terms

  1. Transparent adaptation of single-user applications for multi-user real-time collaboration

                        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