Publication statistics

Pub. period:1991-1995
Pub. count:6
Number of co-authors:2


Number of publications with 3 favourite co-authors:

HongHai Shen:
Prasun Dewan:



Productive colleagues

Rajiv Choudhary's 3 most productive colleagues in number of publications:

Prasun Dewan:38
HongHai Shen:4

Upcoming Courses

go to course
Human-Computer Interaction
84% booked. Starts in 11 days
go to course
User Experience: The Beginner's Guide
83% booked. Starts in 12 days

Featured chapter

Marc Hassenzahl explains the fascinating concept of User Experience and Experience Design. Commentaries by Don Norman, Eric Reiss, Mark Blythe, and Whitney Hess

User Experience and Experience Design !


Our Latest Books

The Social Design of Technical Systems: Building technologies for communities. 2nd Edition
by Brian Whitworth and Adnan Ahmad
start reading
Gamification at Work: Designing Engaging Business Software
by Janaki Mythily Kumar and Mario Herger
start reading
The Social Design of Technical Systems: Building technologies for communities
by Brian Whitworth and Adnan Ahmad
start reading
The Encyclopedia of Human-Computer Interaction, 2nd Ed.
by Mads Soegaard and Rikke Friis Dam
start reading

Rajiv Choudhary


Publications by Rajiv Choudhary (bibliography)

 what's this?
Edit | Del

Choudhary, Rajiv and Dewan, Prasun (1995): A General Multi-User Undo/Redo Model. In: Marmolin, Hans, Sundblad, Yngve and Schmidt, Kjeld (eds.) ECSCW 95 - Proceedings of the Fourth European Conference on Computer-Supported Cooperative Work 11-15 September, 1995, Stockholm, Sweden. pp. 231-246.

A general multi-user undo/redo model must satisfy several requirements. It must be compatible with an existing single-user undo/redo model, give individual users autonomy in executing undo/redo commands, support undo/redo of remote commands and the remote effects of local commands, be independent of the coupling, multicast, and concurrency control model, and allow undo/redo of arbitrary commands. We have developed a multi-user undo/redo model for meeting these requirements. The model constructs the command history of a particular user by including all local commands and those remote commands whose results were made visible to that user. It allows a user to undo/redo corresponding commands in the command histories of all users of a program. Moreover, it allows a user to undo/redo both symmetric user-interface commands and asymmetric collaboration commands. We have implemented the model in a collaboration system called Suite. In this paper, we motivate, describe, and illustrate these requirements and our model.

© All rights reserved Choudhary and Dewan and/or Kluwer Academic Publishers

Edit | Del

Dewan, Prasun and Choudhary, Rajiv (1995): Coupling the User Interfaces of a Multiuser Program. In ACM Transactions on Computer-Human Interaction, 2 (1) pp. 1-39. Available online

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.

© All rights reserved Dewan and Choudhary and/or ACM Press

Edit | Del

Dewan, Prasun, Choudhary, Rajiv and Shen, HongHai (1994): An Editing-Based Characterization of the Design Space of Collaborative Applications. In Journal of Organizational Computing, 4 (3) pp. 219-239.

The design space of collaborative applications is characterized using the notion of generalized multiuser editing. Generalized multiuser editing allows users to view interactive applications as editors of data structures. It offers several collaboration functions, which allow users to collaboratively edit application data structures. These functions include coupling, concurrency control, access control, and multiuser undo. Coupling allows the users to share editing changes, access control and concurrency control prevent them from making unauthorized and inconsistent changes, respectively, and multiuser undo allows them collaboratively to undo or redo changes. These functions must be performed flexibly to accommodate different applications, users, phases of collaboration, and bandwidths of the communication links. In this paper, we define and motivate the notion of generalized multiuser editing and describe some of the issues, approaches, tradeoffs, principles, and requirements related to the design of the functions offered by it.

© All rights reserved Dewan et al. and/or Ablex Publishing

Edit | Del

Dewan, Prasun and Choudhary, Rajiv (1992): A High-Level and Flexible Framework for Implementing Multiuser User Interfaces. In ACM Transactions on Information Systems, 10 (4) pp. 345-380. Available online

We have developed a high-level and flexible framework for supporting the construction of multiuser user interfaces. The framework is based on a generalized editing interaction model, which allows users to view programs as active data that can be concurrently edited by multiple users. It consists of several novel components including a refinement of both the Seeheim UIMS architecture and the distributed graphics architecture that explicitly addresses multiuser interaction; the abstractions of shared active variables and interaction variables, which allow users and applications to exchange information; a set of default collaboration rules designed to keep the collaboration-awareness low in multiuser programs; and a small but powerful set of primitives for overriding these rules. The framework allows users to be dynamically added and removed from a multiuser session, different users to use different user interfaces to interact with an application, the modules interacting with a particular user to execute on the local workstation, and programmers to incrementally trade automation for flexibility. We have implemented the framework as part of a system called Suite. This paper motivates, describes, and illustrates the framework using the concrete example of Suite, discusses how it can be implemented in others kinds of systems, compares it with related work, discusses its shortcomings, and suggests directions for future work.

© All rights reserved Dewan and Choudhary and/or ACM Press

Edit | Del

Dewan, Prasun and Choudhary, Rajiv (1991): Flexible User Interface Coupling in a Collaborative System. In: Robertson, Scott P., Olson, Gary M. and Olson, Judith S. (eds.) Proceedings of the ACM CHI 91 Human Factors in Computing Systems Conference April 28 - June 5, 1991, New Orleans, Louisiana. pp. 41-48. Available online

An important issue in collaborative systems is the kind of sharing or coupling among the various windows displaying a shared workspace. We have developed a flexible coupling model that allows users to control several aspects of the coupling among shared windows including which values in these windows are coupled, when changes to these values are broadcast and received, how "correct" a value must be before it is broadcast or received, which users see the same view of a value, and whether a user can specify coupling parameters for other users. In this paper, we argue that a collaborative system must support flexible coupling, identify some of the issues in the design of systems supporting flexible coupling, describe and illustrate our approach to flexible coupling, and present conclusions and directions for future work.

© All rights reserved Dewan and Choudhary and/or ACM Press

Edit | Del

Dewan, Prasun and Choudhary, Rajiv (1991): Primitives for Programming Multi-User Interfaces. In: Rhyne, James R. (ed.) Proceedings of the 4th annual ACM symposium on User interface software and technology Hilton Head, South Carolina, United States, 1991, Hilton Head, South Carolina, United States. pp. 69-78. Available online

We have designed a set of primitives for programming multi-user interfaces by extending a set of existing high-level primitives for programming single-user interfaces. These primitives support both collaboration-transparent and collaboration-aware multi-user programs and allow existing single-user programs to be incrementally changed to corresponding multi-user programs. The collaboration-aware primitives include primitives for tailoring the input and output to a user, authenticating users, executing code in a user's environment and querying and setting properties of it, and tailoring the user interface coupling. We have identified several application-independent user groups that arise in a collaborative setting and allow the original single-user calls to be targeted at these groups. In addition, we provide primitives for defining application-specific groups. Our preliminary experience with these primitives shows that they can be used to easily implement collaborative tasks of a wide range of applications including message systems, multi-user editors, computer conferencing systems, and coordination systems. In this paper, we motivate, describe, and illustrate these primitives, discuss how primitives similar to them can be offered by a variety of user interface tools, and point out future directions for work.

© All rights reserved Dewan and Choudhary and/or ACM Press

Add publication
Show list on your website

Join our community and advance:




Join our community!

Page Information

Page maintainer: The Editorial Team