Distributed Tool Flow Manager
written by Francis Chan
Introduction
One of the visions of a distributed design environment was the ability
to pool together as many tools as possible and enable any user to leverage
the networked resources. There is a lot of room for innovation and
creativity in such an environment as users can choose best-of-breed applications
easily and at a low cost .
The Distributed Tool Flow Manager is a Java-based application
that allows users to flexibly choose network tools, design workflow and
configure servers to meet application-specific needs. This capability
is of great value, especially to CAD applications and processes.
At the system level, the Distributed Tool Flow Manager ties together
the whole WELD environment by utilizing many pieces of the network infrastructure
developed. These include:
-
Java Client Package, Client-Server Communication Protocol,
Client-Database Communication Protocol – Enables any Java/browser
client to access the network tools and services.
-
Proxy – Enables any browser client to access network resources.
-
Registry Service – Provides network clients with information on
the availability of network resources.
-
Server Wrapper – Enables any new or legacy tool to connect to the
WELD system by allowing network clients to communicate with and invoke
the tool.
-
Data Manger – Provides network storage for client.
Technical Description
-
Networked tools that are encapsulated by the Server Wrapper register
with the Registry Service to inform potential users of its availability,
network location and other information, such as parameter types.
-
When a client invokes the Distributed Tool Flow Manager, a command
is sent to the registry to query the tools that are available. The
response from the registry (available tools) is then used to dynamically
configure the menu bar entries of the tool flow manager.
-
A user can then pick any of the tools (such as application servers, translation
tools, database entries, etc.) to be part of a flow.
-
The tool will be represented as an object on the tool panel. The
user can then "connect" the tools chosen and complete a flow.
-
When the user "executes" the flow, the tool flow manager automatically
traverses the graph and configures the tools (according to user input parameters)
so that the actual network flow can be carried out and executed by the
tool flow manager or a backend workflow server.
-
During the flow, the tool flow manager continuously queries the servers
and updates the tool panel so as to allow users to visually track progress,
including intermediate results and failure information of the flow.
Demo Application and Documentation
The Distributed Tool Flow Manager Java applet and its general usage
documentation can be found at:
http://yoyodyne.eecs.berkeley.edu/workflow/
Modified: June 19, 1997
Feedback: (fchan@eecs.berkeley.edu)