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.
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- Chung, G., Jeffay, K., and Abdel-Wahab, H. 1993. Accommodating latecomers in shared window systems. IEEE Comput. 26, 1, 72--74. Google Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- Ellis, C. A., Gibbs, S. J., and Rein, G. L. 1991. Groupware: Some issues and experiences. Commun. ACM 34, 1, 39--58. Google Scholar
- Engelbart, D. 1975. NLS teleconferencing features: The journal, and shared-screen telephoning. In Proceedings of the IEEE Fall COMPCON. 173--176.Google Scholar
- Forsdick, H. 1985. Explorations in real-time multimedia conferencing. In Proceedings of the 2nd International Symposium on Computer Message Systems. 299--315.Google Scholar
- Garfinkel, D., Welti, B., and Yip, T. 1994. HP SharedX: A tool for real-time collaboration. HP J. 45, 2, 23--36.Google Scholar
- 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 Scholar
- 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 Scholar
- Iseminger, D. 2000. Automation. COM+ Developer's Reference Library, vol. 4. Microsoft Press, Redmond, WA. Google Scholar
- 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 Scholar
- Lantz, K. 1986. An experiment in integrating multimedia conferencing. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. 267--275. Google Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- Sarin, S. and Greif, I. 1985. Computer-Based real-time conferencing systems. IEEE Comput. 18, 10, 33--45. Google Scholar
- 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 Scholar
- 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 Scholar
- Sun, C. Undo any operation at any booktitle.Google Scholar
- Sun, C. 2002a. Optional and responsive fine-grain locking in Internet-based collaborative systems. IEEE Trans. Parallel Distrib. Syst. 13, 9, 994--1008. Google Scholar
- Sun, C. 2002b. Undo as concurrent inverse in group editors. ACM Trans. Comput.-Human Interact. 9, 4, 309--361. Google Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- Sun, D. and Sun, C. 2006. Operation context and context-based operational transformation. In ACM Conference on Computer-Supported Cooperative Work. 279--288. Google Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
Index Terms
- Transparent adaptation of single-user applications for multi-user real-time collaboration
Recommendations
Leveraging single-user applications for multi-user collaboration: the coword approach
CSCW '04: Proceedings of the 2004 ACM conference on Computer supported cooperative workSingle-user interactive computer applications are pervasive in our daily lives and work. Leveraging single-user applications for multi-user collaboration has the potential to significantly increase the availability and improve the usability of ...
Reusing single-user applications to create collaborative multi-member applications
In contrast to single-user applications, most collaborative multi-member applications have been developed as vehicles for investigating various research issues, and even existing commercial collaborative multi-member applications have not widely ...
Flexible collaboration transparency: supporting worker independence in replicated application-sharing systems
This article presents a critique of conventional collaboration transparency systems, also called “application-sharing” systems, which provide the real-time shared use of legacy single-user applications. We find that conventional collaboration ...
Comments