The Session Manager acts as the entry point to the Matisse distributed collaboratory. It provides a single login to the services provided by the Matisse system and customizes those services to the particular user. The Session Manager organizes and maintains records of system users, computational/experimental resources, and applications. At runtime, it creates "sessions" comprised of combinations of these elements to perform functional tasks. The Session Manager provides an integrated framework that ties together the various elements of the Matisse system and enables usage of them from any PC with Supernet connectivity.
The Session Manager consists of two components: the Session Manager User Interface (UI) and the Session Manager Server. These components are described in turn below:
The Session Manager is the only Matisse application that requires any form of installation (see Matisse Installation - expected availability June 2002). Successful installation results in the download of the Session Manager UI component. When executed, the UI contacts a well-known Session Manager Server (at matisse.cairn.net) and queries for a list of equivalent servers running on the network. The UI then presents the user with a dialog that prompts for a valid user id/password and enables the user to choose a specific server for the session. The choice of server is somewhat arbitrary; it simply enables a user to choose a particular server based on known network connectivity, if desired. Upon successful login, the main UI panel is launched.
The main UI panel presents the user with an application palette and access to portions of the Session Manager database. The application palette is customized to the access rights of the user based on the particular user id and the group to which that user id belongs. Each application in the palette is represented by a graphical icon, a unique application name, and a textual description. By double-clicking the palette entry, an instance of that application is started and a representation of the running application appears in a separate list box. Icons representing currently running applications may be "popped" forward or back and stopped. The UI also provides a toolbar containing icons that enable the user to view information about the server handling the current session, to view information about the current user, to log out or to exit the system.
The Session Manager Server runs on various hosts throughout Supernet and handles requests from the UI to start or stop applications or to provide information. Each instance of the Server is "federated" with all of the others, in that the Servers support the same external interface and provide equivalent information via that interface. The user does not interact directly with the Server.
The following subsections provide walk-throughs of three sample tasks for which users will employ the Session Manager: system login, application launch and password change.
In order to use the Matisse system, users must launch the Session Manager UI. Upon startup, the UI contacts the well-known Session Manager Server and presents the following dialog:
This dialog enables the user to choose a Session Manager Server from the drop-down list box and enter a user id/password. Clicking the "Login" button causes the user id and password to be sent to the server for authentication. Provided the authentication succeeds, the user is presented with the main UI panel (shown below) and login is complete.
After logging in, users will generally wish to start Matisse applications to perform experimental or analytical tasks. Upon successful login, the following panel is displayed:
The panel consists of an information bar, a tool bar, an application palette and a "running applications" listbox. In order to launch an application, the user can double-click an application in the palette or select the application and use the right-click drop-down menu. Using either method causes that application to be started. Generally, this causes the dynamic download of the UI for that application, the instantiation of required server processes and the linking together of the UI with the servers. This process is transparent to the user, who simply observes that the application UI appears and a representation of the application appears in the "running applications" listbox. The use of each application is described in its corresponding User Manual. An application should be stopped via the right-click drop-down menu of the icon in the "running applications" listbox, not via the "exit" feature of the individual application.
As a third example task, consider the process for changing a user's password. Clicking the "User" button in the toolbar of the main UI panel launches the "User Information" dialog:
This dialog displays information from the Session Manager database regarding the currently logged in user. At the bottom of this dialog is a button labeled "Chg Passwd". Clicking this button launches a popup dialog that prompts the user for the existing password and two copies of a new password. Providing the proper current password is entered and both copies of the new password are identical and pass authentication tests, the Session Manager database is updated with the new password.