next up previous contents
Next: Traditional Approaches Up: Use Cases for DAQ Previous: Actors   Contents

Use Case Descriptions

Figure 53 gives an overview of the most important use cases in a distributed application control system. For finding a general architecture, we abstracted already away from concrete operations on programs and reduced them to control, configuration and information request commands. A detailed design document for an application control system would list all possible operations separately. An overview such as we present is adaptable to a broader spectrum of systems that are not only limited to data acquisition. Indeed we see that a system management tool for a distributed data acquisition system can be used in any kind of distributed system. The converse however is not true, as the requirements are normally not that demanding in other domains. So we see another advantage of not having hardcoded rules: if we encapsulate the implementation of a command in an object that can be provided to the system at run-time, an application steering framework can be tailored to fit the problem domain under investigation.

The following use cases are the ones that can be invoked by task capsules in order to perform functions on behalf of the user. Some will not be caused directly, but due to the implementation of special policies. An example is the distribution of a task capsule start. The user will invoke a start once. The task capsule that is responsible for implementing this policy will subsequently cause the invocation of system control operations on other nodes in the cluster. These will again trigger the activation of a local start task capsule.


\begin{Figure}
% latex2html id marker 1484
[H]
\begin{center}
\resizebox{14cm}...
...trol system in
a distributed data acquisition system.} \end{center}\end{Figure}

The requirements derived from these use cases can be summarised as follows: (i) The system must be configurable so that software modules (applications or system commands) can be added and removed at any given time. (ii) It must be possible to control and monitor applications at any time. (iii) The system must allow disconnected operations. This involves the timed execution of commands as well as the capability of reacting autonomously in erroneous situations. (iv) The system has to be scalable, both in terms of tasks running in the system and the number of participating cluster nodes. (v) In order to be independent of user interface technologies we also require the system to support a system independent interface.


next up previous contents
Next: Traditional Approaches Up: Use Cases for DAQ Previous: Actors   Contents
Johannes Gutleber
1999-10-29