The COVISA module suite is a set of modules that extends IRIS Explorer for collaborative working. The modules function in just the same way as all other IRIS Explorer modules, being launched from the Librarian and connected into maps. This system gives the advantages of collaborative visualization without re-learning the visualization. Described are the components of the COVISA collaborative system and additional example collaborative modules.
This part of the COVISA collaborative system is responsible for:
coordinating the joining and leaving of participants;
the connection and launching of collaboratively aware modules;
routing data between group members.
The default mode of operation is referred to as ‘Store and Forward’. In this mode, a copy of the last data object for each group is kept as it is passed through the server. When collaborators join late or make a module reconnect (after being disconnected), they are automatically given a copy of the current shared object for each group. This mode can be started up by typing the command
COVISAServerin a shell window.
The second mode of operation is referred to as ‘Pass’. In this mode data is simply distributed to collaborators as it is received, no copy being held at the server. This mode is more efficient if large amounts of data is being held, and suits certain styles of conferencing. When a collaborator joins late, one of the current collaborators must cause their sharing modules to fire so that the latecomer receives the current data set. This mode is accessed by typing the command
COVISAServer -nsaf
in a shell window.
Help is available by typing
COVISAServer -help
in a shell window.
The COVISA Server uses the COVISA_CENTRAL_PORT environment variable to set the port number it will use (see Q.1).
This is the MServer module which is used to make a connection to the COVISA Server, and hence join the collaborative session. The widgets that can be seen are as follows:
The name of the machine where the COVISA Server is running. This is pre-set by the IRIS Explorer system (using the COVISA_CENTRAL_MACHINE environment variable (see Q.1).
The port number used by the COVISA Server. This is pre-set by the IRIS Explorer system (using the COVISA_CENTRAL_PORT environment variable (see Q.1).
When collaborators join a session, their name appears in the Conference List text slot. This name comes from the UserName widget, which is pre-set using the USERNAME environment variable.
This menu is used to toggle the MServer module's connection mode between On-The-Fly mode (see Chapter 4, "On-The-Fly Collaboration") where collaborative maps are dynamically created by the collaborators, or Application mode (see Chapter 5, "End User Applications") where previously constructed maps are used with IRIS Explorer in application mode. The menu is only visible on the maximised control panel.
Once information has been entered in 1, 2 and 3 above, the Start button is used to make the module attempt to connect. If connection is successful, then the module control panel's appearance changes to that of Figure 2-2.
When the user is connected to a collaborative session this list box contains the names of all the currently shared modules within the session. Before any connection is made there are no shared objects.
After connection to the session, the MServer module changes appearance to show the following information:
The Group Join/Find List widget appears with the list of all currently shared modules. It is currently empty indicating no modules are being shared. When a collaborative module is launched and initiated with the session its Group Number and module type appear in the list. The format used is the Group Number followed by the module type e.g. ‘3 MShareParam’. Clicking on groups in this widget causes one of three actions depending on the current state of that module within the user's environment:
if the user has a member of that group, and it is connected, then its control panel is maximised; this is called the find action.
if the user has a member of that group, but it is currently disconnected, then the module is reconnected; this is part of the join action.
if, for some reason, the user does not have a member of that group, then an appropriate module is launched and connected to the session. This is also the join action.
Connection of other COVISA modules can only occur after the successful connection of the MServer module.
The MAdvisor module (see Figure 2-5) should be launched once the MServer module has connected to the collaborative session. It is used to:
aid collaborative map building
aid collaborators who may be less experienced IRIS Explorer users
help late joiners to a session catch up by sending them the current state of the map
It uses Skm (IRIS Explorer's scripting language) to construct map elements in the Map Editor of other collaborators. It can do as little as launch a named module, or as much as construct an exact copy of an entire map. The labeled buttons perform the following functions:
The Skm function to be applied using the text in the typein (2).
The text required to fulfil the Skm command as chosen by the menu (1). For example, the Skm command start just needs the name of a module entered into the typein box.
The Skm action to apply to the (set of) module(s) highlighted in the Map Editor. This can be to copy the entire map, overlay the parameters of the highlighted module(s) onto their counterparts in the other Map Editors, etc.
Pressing this button applies the Skm action chosen by the menu (3) to the currently highlighted (set of) module(s).
This is a list of usernames of all the current collaborators in the session (except yourself). In addition it has the default option of All. Selecting a username from this list enables the targeting of the generated Skm commands.
This button is used to connect the module to the collaborative session and is only visible while the module is unconnected. Since the module connects automatically after launch this button is generally not visible.
In addition to the basic data sharing and collaboration control modules, some example collaborative modules (including source code) are also available in this release.