next up previous
Next: About this document Up: Session-Message- and Previous: CAIS: Interleaving Session-

VisTool: Editable, Piped, Collaborative Views

VisTool [] is an application for automating the process of scheduling external speakers to a department. It associates with each visitor information about the title, time, room, and abstract of the talk, the schedule of meetings with the members of the department. Users can create views of this database by inputting queries or patterns specifying the information of interest. Like databases, these views can be cascaded or ``piped'', that is, new user views may be derived from other views. For instance, we can derive from a view showing all programming language talks a new view showing only those programming language talks scheduled on Mondays. Unlike database views, however, these views are editable in that updates made to them are reflected in the views/databases they are derived from. These updates also cause related objects to be modified. In particular, scheduling meeting between the visitors and department members automatically result in corresponding updates to the private calendars of the latter. Moreover, users concurrently modifying the same object are implicitly put together in a joint session wherein they can detect conflicts and, as in a RTCAL session, negotiate a non conflicting meeting times. In addition to editable views, VisTool also provides shell commands to modify and visualize the database and the views displaying it. For instance, the a user can execute the command:

setvis -dates  "Mon/2/3/97" Sproull
to set the dates on which visitor Sproull would be visiting the department. All views displaying this data are updated immediately. Finally, a user can interactively associate a programmer-defined operations on a view such as AddAppointment or DeleteAppointment with handlers (shell scripts) that are automatically invoked when the operation is executed. These handlers, typically, use mail or xmessage to send a notification message to the users and take as arguments the parameters of the operation. Thus, end-users can augment the functionality provided by the application programmers.

Like CAIS, this application was implemented using Suite and and is composed of several communicating distributed objects. In particular, it has a separate object for each visitor, view, and private calendar, and keeps these objects consistent.



next up previous
Next: About this document Up: Session-Message- and Previous: CAIS: Interleaving Session-



Prasun Dewan
Tue Jan 28 17:46:09 EST 1997