Abstract
Groupware systems are computer-based systems that support two or more users engaged in a common task, and that provide an interface to a shared environment. These systems frequently require fine-granularity sharing of data and fast response times. This paper distinguishes real-time groupware systems from other multi-user systems and discusses their concurrency control requirements. An algorithm for concurrency control in real-time groupware systems is then presented. The advantages of this algorithm are its simplicity of use and its responsiveness: users can operate directly on the data without obtaining locks. The algorithm must know some semantics of the operations. However the algorithm's overall structure is independent of the semantic information, allowing the algorithm to be adapted to many situations. An example application of the algorithm to group text editing is given, along with a sketch of its proof of correctness in this particular case. We note that the behavior desired in many of these systems is non-serializable.
- Banc85 Bancilhon, G., Kim, W., and Korth, H.F. A Model of CAD Transactions, Proc. Intl. Cony. on Very Large Data Bases, pp. 25-33, 1985.Google Scholar
- Bern87 Bernstein, P., Goodman, N., and Hadzilacos, V. Concurrency Control and Recovery in Database Systems, Addison-Wesley, 1987. Google ScholarDigital Library
- Cohe88 Cohen, M., Fish, R., Kraut, R., and Leland, M. Quilt: A Collaborative Tool for Cooperative Writing, Proc. ACM SIGOIS Conf., pp. 30-37, 1988. Google ScholarDigital Library
- CSCW86 Proceedings of the Conference on Computer-Supported Cooperative Work (Austin, Tex., Dec. 3-5). ACM, New York, 1986.Google Scholar
- CSCW88 Proceedings of the Conference on Computer-Supported Cooperative Work (Portland, Or., Sept. 23-25). ACM, New York, 1988.Google Scholar
- Elli88a Ellis, C.A., Gibbs, S.J., and Rein, G. Design and Use of a Group Editor, Rep. STP-263-88, MCC Software Technology Program, Austin, Tex., 1988.Google Scholar
- Elli88b Ellis, C.A., Gibbs, S.J., and Rein, G. Groupware, Rep. STP-414-88, MCC Software Technology Program, Austin, Tex., 1988.Google Scholar
- Elli89 Ellis, C.A., Rein, G.L., and Jarvenpaa, S.L. Nick Experimentation: Some Selected Results, Hawaii Int. Conf. on System Sciences, 1989.Google Scholar
- Grie86 Grief, I., Seliger, R., and Weihl, W. Atomic Data Abstractions in a Distributed Collaborative Editing System, Proceedings of the 13th Annual Symposium on Principles of Programming Languages, pp. 160-172, 1986. Google ScholarDigital Library
- Grud88 Grudin, J. Why CSCW Applications Fail: Problems in the Design and Evaluation of Organizational Interfaces, Proc. CSCW'88, 1988. Google ScholarDigital Library
- Lamp78 Lamport, L. Time, Clocks, and the Ordering of Events in a Distributed System, CACM 21(7), pp. 558-565, 1987. Google ScholarDigital Library
- Lant86 Lantz, K.A. An Experiment in Integrated Multimedia Conferencing, Proc. Conf. on Computer-Supported Cooperative Work, pp. 267-275, 1986. Google ScholarDigital Library
- Lewi88 Lewis, B. and Hodges, J. Shared Books: Collaborative Publication Management for an Office Information System, Proc. ACM SIGOIS Conf., pp. 197-204, 1988. Google ScholarDigital Library
- Sari85 Sarin, S. and Grief, I. Computer-Based Real-Time Conferences, Computer, 18(10), pp. 33-45, 1985. Google ScholarDigital Library
- Stef87 Stefik, M., Foster, G., Bobrow, D.G., Kahn, K., Lanning, S., and Suchman, L. Beyond the Chalkboard: Computer Support for Collaboration and Problem Solving in Meetings, CACM 30(1), pp. 32-47, 1987. Google ScholarDigital Library
Index Terms
- Concurrency control in groupware systems
Recommendations
Concurrency control in groupware systems
SIGMOD '89: Proceedings of the 1989 ACM SIGMOD international conference on Management of dataGroupware systems are computer-based systems that support two or more users engaged in a common task, and that provide an interface to a shared environment. These systems frequently require fine-granularity sharing of data and fast response times. This ...
Semantics-based concurrency control: beyond commutativity
The concurrency of transactions executing on atomic data types can be enhanced through the use of semantic information about operations defined on these types. Hitherto, commutativity of operations has been exploited to provide enchanced concurrency ...
Comments