WYSIWIS revised: early experiences with multiuser interfaces
ACM Transactions on Information Systems (TOIS)
MMConf: an infrastructure for building shared multimedia applications
CSCW '90 Proceedings of the 1990 ACM conference on Computer-supported cooperative work
Comparing the programming demands of single-user and multi-user applications
UIST '91 Proceedings of the 4th annual ACM symposium on User interface software and technology
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
DistView: support for building efficient collaborative applications using replicated objects
CSCW '94 Proceedings of the 1994 ACM conference on Computer supported cooperative work
The essential CORBA: systems integration using distributed objects
The essential CORBA: systems integration using distributed objects
Building real-time groupware with GroupKit, a groupware toolkit
ACM Transactions on Computer-Human Interaction (TOCHI)
Efficient distributed implementation of semi-replicated synchronous groupware
Proceedings of the 9th annual ACM symposium on User interface software and technology
Designing object-oriented synchronous groupware with COAST
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
Notification servers for synchronous groupware
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
Supporting multi-user, multi-applet workspaces in CBE
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
COM and DCOM: Microsoft's vision for distributed objects
COM and DCOM: Microsoft's vision for distributed objects
Java object-sharing in Habanero
Communications of the ACM
Concurrency Control and View Notification Algorithms for Collaborative Replicated Objects
IEEE Transactions on Computers
Using metalevel techniques in a flexible toolkit for CSCW applications
ACM Transactions on Computer-Human Interaction (TOCHI)
Operational transformation in real-time group editors: issues, algorithms, and achievements
CSCW '98 Proceedings of the 1998 ACM conference on Computer supported cooperative work
ACM Transactions on Computer-Human Interaction (TOCHI)
Distributed systems (3rd ed.): concepts and design
Distributed systems (3rd ed.): concepts and design
An experiment in integrated multimedia conferencing
CSCW '86 Proceedings of the 1986 ACM conference on Computer-supported cooperative work
Collaboration transparency in desktop teleconferencing environments
Collaboration transparency in desktop teleconferencing environments
Flexible collaboration transparency: supporting worker independence in replicated application-sharing systems
Leveraging single-user applications for multi-user collaboration: the coword approach
CSCW '04 Proceedings of the 2004 ACM conference on Computer supported cooperative work
Temporality in Medical Work: Time also Matters
Computer Supported Cooperative Work
CSCW '06 Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work
A lightweight approach to transparent sharing of familiar single-user editors
CSCW '06 Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work
Transparent adaptation of single-user applications for multi-user real-time collaboration
ACM Transactions on Computer-Human Interaction (TOCHI)
Maintaining constraints in collaborative graphic systems: the CoGSE approach
ECSCW'05 Proceedings of the ninth conference on European Conference on Computer Supported Cooperative Work
Leveraging single-user microsoft visio for multi-user real-time collaboration
CDVE'07 Proceedings of the 4th international conference on Cooperative design, visualization, and engineering
Enabling collaboration transparency with computational reflection
CRIWG'10 Proceedings of the 16th international conference on Collaboration and technology
TaKo: Providing transparent collaboration on single-user applications
Computer Languages, Systems and Structures
A constraint maintenance strategy and applications in real-time collaborative environments
CDVE'05 Proceedings of the Second international conference on Cooperative Design, Visualization, and Engineering
Hi-index | 0.00 |
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).