Coupling the user interfaces of a multiuser program
- 1 March 1995
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer-Human Interaction
- Vol. 2 (1) , 1-39
- https://doi.org/10.1145/200968.200969
Abstract
We have developed a new model for coupling the user interfaces of a multiuser program. It is based on an interaction model and a user interface framework that allow users and programmers, respectively, to view applications as editors of data. It consists of a semantics model, a specification model, and an implementation model for coupling. The semantics model determines (1) which properties of interaction entities created for a user are shared with corresponding interaction entities created for other users and (2) when changes made by a user to a property of an interaction entity are communicated to other users sharing it. It divides the properties of an interaction entity into multiple coupling sets and allows users to share different coupling sets independently. It supports several criteria for choosing when a change made by a user to a shared property is communicated to other users. These criteria include how structurally complete the change is, how correct it is, and the time at which it was made. The specification model determines how users specify the desired semantics of coupling. It associates interaction entities with inheritable coupling attributes, allows multiple users to specify values of these attributes, and does a runtime matching of the coupling attributes specified by different users to derive the coupling among their user interfaces. The implementation model determines how multiuser programs implement user-customizable coupling. It divides the task of implementing the coupling between system-provided modules and application programs. The modules support automatically a predefined semantics and specification model that can be extended by the programs. We have implemented the coupling model as part of a system called Suite. This paper describes and motivates the model using the concrete example of Suite, discusses how aspects of it can be implemented in other systems, compares it with related work, discusses its shortcomings, and suggests directions for future work.Keywords
This publication has 17 references indexed in Scilit:
- SuiteSound: a system for distributed collaborative multimediaIEEE Transactions on Knowledge and Data Engineering, 1993
- A high-level and flexible framework for implementing multiuser user interfacesACM Transactions on Information Systems, 1992
- Concurrency control in advanced database applicationsACM Computing Surveys, 1991
- An inheritance model for supporting flexible displays of data structuresSoftware: Practice and Experience, 1991
- Groupware: some issues and experiencesCommunications of the ACM, 1991
- A tour of suite user interface softwarePublished by Association for Computing Machinery (ACM) ,1990
- Exploiting virtual synchrony in distributed systemsACM SIGOPS Operating Systems Review, 1987
- WYSIWIS revised: early experiences with multiuser interfacesACM Transactions on Information Systems, 1987
- Beyond the chalkboard: computer support for collaboration and problem solving in meetingsCommunications of the ACM, 1987
- Rcs — a system for version controlSoftware: Practice and Experience, 1985