Download AJA Phase I 2000
Transcript
- 133 - Common Facilities Application Agents user agent system agent SAL SAL service service SAL SAL service SAL Object Request Broker (ORB) SAL SAL SAL SAL WF Service Repository CSCW Component KB DM Strategy Service System Agents Abb. 2: Der logische Klient und die darin verwendeten Klassen von Agenten Der Logische Klient ist zunächst eine sogenannte Peer-to-Peer-Architektur /12/: Auf der Implementierungsebene sind alle Agenten gleichwertig, und jeder kann jeden anderen damit beauftragen, Dienstleistungen zu erbringen. Dies ist eine sehr flexible ”soziale” Struktur. Andererseits setzt die Vergabe einer Dienstleistung voraus, daß ihr Einsatz sinnvoll ist, ihre Schnittstellenbeschreibung berücksichtigt wird, die entsprechenden Eingabeobjekte bereitgestellt werden und die Ergebnisobjekte auch genutzt werden können. Damit in einem solchen Agentensystem die angebotenen Dienstleistungen voll genutzt werden können, müßte jeder Agent mit den Dienstleistungen der anderen Agenten vertraut sein. Wenn das System wächst, würde der Wartungsaufwand quadratisch mitwachsen. Um einem Kollaps zu entgehen, ist ein Grundprinzip des Logischen Klienten die Unterscheidung zwischen Systemdiensten und normalen Diensten: Normale Dienste kennen bloß die Dienstleistungen der Systemdienste, und Systemdienste sind nicht abhängig von den Dienstleistungen der normalen Dienste. Das logische Bindeglied zwischen diesen beiden Welten ist der Strategie-Service, der die Dienstleistungsbeschreibungen der normalen Dienste verarbeiten kann und Dienstleistungen vermittelt. Das praktische Bindeglied zwischen diesen Welten ist der Workflow-Service, der im Laufe eines Workflows verschiedene Dienstleistungen anspricht und koordiniert. Bisher steht jedoch kein generischer Strategie-Service zur Verfügung, der diese Aufgabe allgemein erfüllen kann. Im KFÜ sind die möglichen Workflows bekannt und wurden daher händisch erstellt. Normale Dienste dürfen und müssen die Dienstleistungen der anderen normalen Dienste nicht kennen. Dafür tritt an die Stelle des Wissens von anderen Dienstleistungen im System nun das Wissen um Workflows. Wenn ein normaler Dienst zur Erbringung seiner Dienstleistung Hilfe braucht, gibt er einen Workflow in Auftrag. Er muß wissen, ob es im KFÜ einen passenden Workflow gibt und welche Schnittstellenbeschreibung dieser hat.