skip to main content
article
Free Access

The Rendezvous architecture and language for constructing multiuser applications

Published:01 June 1994Publication History
Skip Abstract Section

Abstract

When people have meetings or discussions, frequently they use conversational props: physical models, drawings, or other concrete representations of information used to enhance the exchange of information. If the participants are geographically separated, it is difficult to make effective use of props since each physical prop can only exist in one place. Computer applications that allow two or more users to simultaneously view and manipulate the same data can be used to augment human-to-human telecommunication. We have built the Rendezvous system is similar to many UIMSs or user interface toolkits in that it is intended to simplify the construction of graphical direct-manipulation interfaces. It goes beyond these systems by adding functionality to support the construction of multiuser applications. Based on experience with several large applications built with the Rendezvous system, we believe that it is useful for building conversational props and other computer-supported cooperative work (CSCW) applications. We present a list of required features of conversational props, some example applications built with the Rendezvous system, and a description of the Rendezvous system.

References

  1. BARTH, P.S. 1986. An object-oriented approach to graphical interfaces. ACM Trans. Graph. 5, 2, 142-172.]] Google ScholarGoogle Scholar
  2. BEAUDOUIN-LAFON, M., AND KARSENTY, A. 1992. Transparency and awareness in a real-time Groupware system. In Proceedings of UIST'92 (Monterey, Calif., Nov. 15-18). ACM, New York, 171-180.]] Google ScholarGoogle Scholar
  3. BORENSTEIN, N. S. 1990. Multimedia Applications Development with the Andrew Toolkit. Prentice-Hall, Englewood Cliffs, N.J.]] Google ScholarGoogle Scholar
  4. BRINCK, T. 1992. The Conversation Board. In Siggraph Video Rewew. Vol. 87. ACM, New York. From Video Proceedings of CSCW'92.]]Google ScholarGoogle Scholar
  5. BRINCK, T., AND GOMEZ, L.M. 1992. A collaborative medium for the support of conversational props. In Proceedings of CSCW'92 (Toronto, Ontario, Oct. 31-Nov. 4), 171-178.]] Google ScholarGoogle Scholar
  6. BRINCK, T., AND HmL, R.D. 1993. Building shared graphical editors using the Abstraction- Link-View architecture. In Proceedings of ECSCW'93, European Conference on Computer-Supported Cooperative Work (Milan, Italy, Sept.), Kluwer, Amsterdam, 311-324.]] Google ScholarGoogle Scholar
  7. CROWLEY, T., BAKER, E., FORSD~CK, H., Mn~xZZO, P., AND TOMHNSON, R. 1990. MMConf: An infrastructure for building shared applications. In Proceedings of CSCW'90 (Los Angeles, Calif., Oct. 7-10). 329-342.]] Google ScholarGoogle Scholar
  8. DANCE, J. R., GRANOR, T. E., HILL, R. D., HUDSON, S. E., MEADS, J., MYERS, B. A., AND SCHULERT, A. 1987. The run-time structure of UIMS-supported applications. Comput. Graph. 21, 2, 97-101.]] Google ScholarGoogle Scholar
  9. DEWAN, P., AND CHOUDHARY, R. 1992. A high-level and flexible framework for implementing multi-user user interfaces. ACM Trans. Inf. Syst. 10, 4, 345-380.]] Google ScholarGoogle Scholar
  10. FREEMAN-BENSON, B. N., MALONEY, J., AND BORNING, A. 1990. An incremental constraint solver. Commun. ACM 33, 1, 54-63.]] Google ScholarGoogle Scholar
  11. GRAHAM, T. C. N., AND URNES, T. 1992. Relational views as a model for automatic distributed implementation of multi-user applications. In Proceedings of CSCW'92 (Toronto, Ontario, Oct. 3l-Nov. 4). ACM, New York, 59-66.]] Google ScholarGoogle Scholar
  12. GREEN, M.A. 1985. Report on Dialogue specification tools. In User Interface Management Systems, G. Pfaff, Ed. Springer-Verlag, Berlin, 9-20.]]Google ScholarGoogle Scholar
  13. HARTSON, H.R. 1989. User-interface management control and communication. IEEE Softw. 6, 1, 62-70.]] Google ScholarGoogle Scholar
  14. HARTSON, H. R,, AND HIX, D. 1989. Human-computer interface development: Concepts and systems for its management. ACM Comput. Surv. 21, 1, 5-92.]] Google ScholarGoogle Scholar
  15. HASHIMOTO, O., AND MYERS, B. A. 1992. Graphical styles for building user interfaces by demonstration. In Proceedings of UIST'92 (Monterey, Calif., Nov. 15-18). ACM, New York, 117-124.]] Google ScholarGoogle Scholar
  16. HERRMANN, M., AND HILL, R. 1989. Abstraction and declarativeness in user interface deve}opment systems--The methodological basis of the composite object architecture. In Proceedings of the 11th World Computer Congress.]]Google ScholarGoogle Scholar
  17. HILL, R.D. 1993. The Rendezvous constraint maintenance system. In Proceedings of UIST'93 (Atlanta, Ga., Nov. 3-5). ACM, New York, 225-234.]] Google ScholarGoogle Scholar
  18. HILL, R. D. 1992. The Abstraction-Link-View paradigm: Using constraints to connect user interfaces to applications. In Proceedings of CHf'92 (Monterey, Calif., May 3-7). ACM, New York, 335-342]] Google ScholarGoogle Scholar
  19. HILL, R. D. 1986. Supporting concurrency, communication and synchronization in humancomputer interaction--The Sassafras UIMS. ACM Trans. Graphws 5, 3, 179-210.]] Google ScholarGoogle Scholar
  20. HILL, R. D., AND HERRMANN, M. 1989. The structure of tube--A tool for implementing advanced user interfaces. In Proceedings of EuroGraphics'89 (Hamburg, Germany, Sept. 4-8). North-Holland, Amsterdam, 15-25.]]Google ScholarGoogle Scholar
  21. HUDSON, S. E., AND MOHAMED, S.P. 1990. Interactive specification of flexible user interface displays. ACM Trans. Inf. Syst. 8, 3, 315 341.]] Google ScholarGoogle Scholar
  22. KAPLAN, S. M., TOLONE, W. J., BOGtA, D. P., AND BIGNOLI, C. 1992. Flexible, active support for collaborative work with ConversationBuilder. In Proceedings of CSCW'92 (Toronto, Ontario, Oct. 31-Nov. 4). ACM, New York, 378-385.]] Google ScholarGoogle Scholar
  23. KtCZALES, G., RIVIERES, J. D., AND BOBROW, D.G. 1991. The Art of the Metaobject Protocol. The MIT Press, Cambridge, Mass.]] Google ScholarGoogle Scholar
  24. KaASNER, G. E., AND POPE, S.T. 1988. A cookbook for using the Model-View-Controller user interface paradigm in Smalltalk-80. J. Obj. Orient. Program. 1, 3, 26-49.]] Google ScholarGoogle Scholar
  25. LINTON, M., VLISSIDES, J. M., AND CALDER, P.R. 1989. Composing user interfaces with Inter- Views. IEEE Comput. 22, 2, 8-22.]] Google ScholarGoogle Scholar
  26. MmLER, D. S., SMITH, J. G., AND MULLER, M. J. 1992. TelePICTIVE: Computer-supported collaborative GUI design for designers with diverse expertise. In Proceedings of UIST'92 (Monterey, Calif., Nov. 15-18). ACM, New York, 151-160]] Google ScholarGoogle Scholar
  27. MYERS, B.A. 1991. Graphical techniques in a spreadsheet for specifying user interfaces. In Proceedings of CHI'91 (New Orleans, La., Apr. 27-May 2). 243 249.]] Google ScholarGoogle Scholar
  28. MYERS, B.A. 1990. A new model for handling input. ACM Trans. Inf. Syst. 8, 3, 289-320.]] Google ScholarGoogle Scholar
  29. MYERS, B. A., GIUSE, D. A., DANNENBERG, R. B., VANDER ZANDEN, B., KOSBIE, D. S., PERVIN, E., MICKISH, A., AND MARCHAL, P. 1990. Garnet: Comprehensive support for graphical, highly interactive user interfaces. IEEE Comput. 23, 11, 71-85.]] Google ScholarGoogle Scholar
  30. MYERS, B. A., VANDER ZANDEN, B., AND DANNENBERG, R.B. 1989. Creating graphical interactive application objects by demonstration. In Proceedings of UIST'89 (Williamsburg, Va., Nov. 13-15). ACM, New York, 95-104.]] Google ScholarGoogle Scholar
  31. NEWMAN-WOLFE, R. E., WEBR, M. L., AND MONTES, M. 1992. Implicit locking in the Ensemble concurrent object-oriented graphics editor. In Proceedings of CSCW'92 (Toronto, Ontario, Oct. 31-Nov. 4). ACM, New York, 265-272.]] Google ScholarGoogle Scholar
  32. NYE, A., AND O'REILLY, T. 1990. X Toolkit Intrinsics Programming' Manual. 2nd ed. O'Reilly & Associates, Inc., Sebastopol, Calif.]] Google ScholarGoogle Scholar
  33. OUSTERHOUT, J.K. 1990. Tch An embeddable command language. In Proceedings of the 1990 Winter USENIX Conference. USENIX Assoc., Berkeley, Calif.]]Google ScholarGoogle Scholar
  34. ROHALL, S. L., PATTERSON, J. F., AND HILL, R. D. 1992. Go Fish! A multi-user game in the Rendezvous system. In SfGGRAPH V~deo Review. Vol. 76. ACM, New York.]]Google ScholarGoogle Scholar
  35. ROSEMAN, M., AND GREENBERG, S. 1992. GroupKit: A Groupware toolkit for building real-time conferencing applications. In Proceedings of CSCW'92 (Toronto, Ontario, Oct. 31-Nov. 4). ACM, New Yorl% 43-$0.]] Google ScholarGoogle Scholar
  36. SANNELLA, M. 1992. The SkyBlue constraint solver. Tech. Rep. 92-07-02, Dept. of Computer Science and Engineering, Univ. of Washington, Seattle, Wash.]]Google ScholarGoogle Scholar
  37. SANNELLA, M., FREEMAN-BENSON, B., MALONEY, J., AND BORNING, A. 1993. Multi-way versus one-way constraints in user interfaces: Experience with the DeltaBlue algorithm. Sofiw. Pract. Exp. 23, 5, 529-566.]] Google ScholarGoogle Scholar
  38. SCHEIFLER, a. W., GETTYS, J., AND NEWMAN, R. 1988. X Window System. Digital Press, Bedford, Mass.]]Google ScholarGoogle Scholar
  39. SMITH, R. B., O'SHEA, T., O'MALLEY, C., SCANLON, E., AND TAYLOR, J. 1989. Preliminary experiments with a distributed, multi-media, problem solving environment. In Proceedings of the 1989 European Conference on Computer-Supported Cooperative Work.]]Google ScholarGoogle Scholar
  40. STEELE, G. 1990. Common Lisp: The Language. 2nd ed. Digital Press, Bedford, Mass.]] Google ScholarGoogle Scholar
  41. SZE~LY, P., AND MYERS, B.A. 1988. A user interface toolkit based on graphical objects and constraints. Sigplan Not. 23, 11, 36-45. OOPSLA'88 Conference Proceedings, Sept. 25-30, 1988, San Diego, Calif.]] Google ScholarGoogle Scholar
  42. THOMAS, J. J., AND H~LI~, G. 1983. Graphical input interaction technique workshop summary. Comput. Graph, 17, 1, 5-30.]] Google ScholarGoogle Scholar
  43. VANDER ZANDEN, B., MYERS, B. h., GUISE, D., AND SZEKELY, P. 1994. Integrating pointer variables into one-way constraint models. ACM Trans. Comput. Human Interaction 1, 2.]] Google ScholarGoogle Scholar
  44. VANDER ZANDEN, B., MYERS, B. A., GUISE, D., AND SZEKELY, P. 1991. The importance of pointer variables in constraint models. In Proceedings of UIST'91 (Hilton Head, S.C., Nov. 11-13). 155-164.]] Google ScholarGoogle Scholar

Index Terms

  1. The Rendezvous architecture and language for constructing multiuser applications

                Recommendations

                Reviews

                William Thomas Hunt

                Programming interfaces for geographically distributed meetings and other multiuser applications requires addressing other human issues besides managing the display and reacting to user input. Some of these issues are providing customized and replicated views, allowing for public and private information, and handling floor control. The Rendezvous system is one of the few tools that provides direct support for these issues. After motivating the research by discussing conversational props, such as paper documents and whiteboards, the paper addresses these issues through working applications. The bulk of the paper methodically describes the architecture and object model of Rendezvous. Distinctive features include a centralized architecture that can be distributed; an Abstraction-Link-View (ALV) paradigm; a link-based constraint system that allows multiple constraints on variables and indirect references; and a multiple inheritance object system that allows the composition of new complex objects from simpler components. The paper finishes with a good comparison to similar systems and a fair-minded summary of the positive and difficult aspects of Rendezvous. Although the comparison between the ALV and model-view-controller architectures is excellent, I would like to see a larger discussion on the prototype-instance model. I would also prefer less coverage of the tic-tac-toe example and more of the useful ConversationBoard. This paper is well written, easy to follow, and amply illustrated. I would recommend it highly to anyone planning to build a multiuser application or anyone interested in user interface development environments (user interface management systems).

                Dario A. Giuse

                Rendezvous is an object-oriented system that supports the construction of multiuser graphical applications in which people at different sites interact with the same set of objects to communicate with other participants. This paper describes the architecture of the Rendezvous system (despite the title, the language itself is not discussed). The paper is roughly divided into three parts. The first part is a good introduction to general concepts in multiuser interaction. It uses a tic-tac-toe example (implemented in Rendezvous) to illustrate the main points. The second part describes the architecture of the system and introduces the key ideas, including the use of a single model with multiple views that can be manipulated independently, and the use of constraints to maintain consistency between model and views. The third part compares the system to other systems and presents some of its specific strengths and weaknesses. The three parts are each well organized, but the transitions are abrupt and the paper feels somewhat like three separate papers. Perhaps my biggest criticism is that the authors try to cover too much material. While the first part is well suited to a general audience, the remainder is extremely specialized and assumes previous knowledge. While experts will recognize that this is an important, well-designed system, less sophisticated readers may get lost in a large number of concepts presented in rapid succession.

                Access critical reviews of Computing literature here

                Become a reviewer for Computing Reviews.

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in

                Full Access

                • Published in

                  cover image ACM Transactions on Computer-Human Interaction
                  ACM Transactions on Computer-Human Interaction  Volume 1, Issue 2
                  June 1994
                  133 pages
                  ISSN:1073-0516
                  EISSN:1557-7325
                  DOI:10.1145/180171
                  Issue’s Table of Contents

                  Copyright © 1994 ACM

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 1 June 1994
                  Published in tochi Volume 1, Issue 2

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • article

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader