|
ABSTRACT
We describe problems associated with accessing data resources external to the application, which we term externalities, in replicated synchronous collaborative applications. Accessing externalities such as files, databases, network connections, environment variables, and the system clock is not as straightforward in replicated collaborative software as in single-user applications or centralized collaborative systems. We describe ad hoc solutions that add to development cost and complexity because the developer must program different behavior for different replicas.We introduce a novel general approach to accessing externalities uniformly in a replicated collaborative system. The approach uses a semireplicated architecture where the actual externality resides at a single location and is accessed via replicated proxies. This approach allows developers of replicated synchronous groupware to 1) use similar externality access mechanisms as in traditional single-user applications, and 2) program all replicas to execute the same behavior. We describe a general design for proxied access to read-only, write-only, and read-write externalities and discuss the tradeoffs of this semireplicated approach over full, literal replication and the class of applications to which this approach can be successfully applied. We also describe details of a prototype implementation of this approach within a replicated collaboration-transparency system, called Flexible JAMM (Java Applets Made Multiuser).
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
R. Burridge. (2000) Java shared data toolkit user guide. Sun Microsysterns, Inc., Tech. Rep. {Online}. Available: http://java.sun.com/products/j ava-media/j sdt/.
|
 |
4
|
|
| |
5
|
|
 |
6
|
Terrence Crowley , Paul Milazzo , Ellie Baker , Harry Forsdick , Raymond Tomlinson, MMConf: an infrastructure for building shared multimedia applications, Proceedings of the 1990 ACM conference on Computer-supported cooperative work, p.329-342, October 07-10, 1990, Los Angeles, California, United States
[doi> 10.1145/99332.99365]
|
| |
7
|
R Dewan, "Architectures for collaborative applications," in Computer- Supported Cooperative Work, Trends in Software Series, M. Beaudouin- Lafon, Ed. New York: Wiley, 1999, ch. 7, pp. 169-193.
|
 |
8
|
|
| |
9
|
|
 |
10
|
T. C. Nicholas Graham , Tore Urnes , Roy Nejabi, Efficient distributed implementation of semi-replicated synchronous groupware, Proceedings of the 9th annual ACM symposium on User interface software and technology, p.1-10, November 06-08, 1996, Seattle, Washington, United States
[doi> 10.1145/237091.237092]
|
| |
11
|
S. Greenberg and M. Roseman, "Groupware toolkits for synchronous work," in Computer-Supported Cooperative Work, Trends in Software Series, M. Beaudouin-Lafon, Ed. New York: Wiley, 1999, ch. 6, pp. 135-168.
|
| |
12
|
|
 |
13
|
|
| |
14
|
|
 |
15
|
Jang Ho Lee , Atul Prakash , Trent Jaeger , Gwobaw Wu, Supporting multi-user, multi-applet workspaces in CBE, Proceedings of the 1996 ACM conference on Computer supported cooperative work, p.344-353, November 16-20, 1996, Boston, Massachusetts, United States
[doi> 10.1145/240080.240326]
|
| |
16
|
|
 |
17
|
John F. Patterson , Mark Day , Jakov Kucan, Notification servers for synchronous groupware, Proceedings of the 1996 ACM conference on Computer supported cooperative work, p.122-129, November 16-20, 1996, Boston, Massachusetts, United States
[doi> 10.1145/240080.240232]
|
 |
18
|
|
 |
19
|
|
| |
20
|
|
 |
21
|
|
 |
22
|
Christian Schuckmann , Lutz Kirchner , Jan Schümmer , Jörg M. Haake, Designing object-oriented synchronous groupware with COAST, Proceedings of the 1996 ACM conference on Computer supported cooperative work, p.30-38, November 16-20, 1996, Boston, Massachusetts, United States
[doi> 10.1145/240080.240186]
|
| |
23
|
|
 |
24
|
|
| |
25
|
|
 |
26
|
Chengzheng Sun , Clarence Ellis, Operational transformation in real-time group editors: issues, algorithms, and achievements, Proceedings of the 1998 ACM conference on Computer supported cooperative work, p.59-68, November 14-18, 1998, Seattle, Washington, United States
[doi> 10.1145/289444.289469]
|
| |
27
|
A. Wollrath, R. Riggs, and J. Waldo, "A distributed object model for the Java system," Comput. Syst, vol. 9, no. 4, pp. 265-290, 1996.
|
CITED BY 6
|
|
Steven Xia , David Sun , Chengzheng Sun , David Chen , Haifeng Shen, Leveraging single-user applications for multi-user collaboration: the coword approach, Proceedings of the 2004 ACM conference on Computer supported cooperative work, November 06-10, 2004, Chicago, Illinois, USA
|
|
|
|
|
|
|
|
|
Sasa Junuzovic , Prasun Dewan, Response times in N-user replicated, centralized, and proximity-based hybrid collaboration architectures, Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work, November 04-08, 2006, Banff, Alberta, Canada
|
|
|
Chengzheng Sun , Steven Xia , David Sun , David Chen , Haifeng Shen , Wentong Cai, Transparent adaptation of single-user applications for multi-user real-time collaboration, ACM Transactions on Computer-Human Interaction (TOCHI), v.13 n.4, p.531-582, December 2006
|
|
|
Kai Lin , David Chen , Chengzheng Sun , Geoff Dromey, Maintaining constraints in collaborative graphic systems: the CoGSE approach, Proceedings of the ninth conference on European Conference on Computer Supported Cooperative Work, p.185-204, September 18-22, 2005, Paris, France
|
|