Für Version 4 der Lotus-Plattform

Onestone erweitert Notes 4 um fehlende Workflow-Funktionen

25.10.1996

Eine Begriffsverwirrung zwischen Workgroup und Workflow ist möglicherweise dafür verantwortlich, daß man Lotus Notes für besonders geeignet zur Entwicklung von Workflow-Anwendungen hält. Dabei bietet es kaum Möglichkeiten, zwischen Aktivitäten und Prozessen zu differenzieren. Dies kann man recht einfach an den beiden mitgelieferten Workflow-Anwendungen sehen. Das ist zum einen der "Review Cycle" in der Document Library und zum anderen die Datenbankvorlage für Genehmigungsabläufe.

Prozeßmodellierung von Notes ist umständlich

Beide Anwendungen erzeugen einfache Prozesse, die entweder parallel oder seriell ablaufen. Die Prozeßsteuerung geschieht allein durch Codefragmente, die in zahlreichen Schaltflächen hinterlegt sind. Es gibt keinerlei Trennung zwischen den eigentlichen Aufgaben, etwa der Überarbeitung und Genehmigung der Dokumente und dem Prozeßablauf. Will man den Prozeßablauf ändern, dann ist ein detailliertes Verständnis des gesamten Programms erforderlich, das ähnlich wie bei Microsofts "Visual Basic" auf viele Ereignisse verteilt ist.

Es fehlt an einer geeigneten, abstrakten Modellierung des Prozeßablaufs, in die man Aktivitäten einhängen könnte. Dabei ist Notes 4 mit der Programmiersprache "Lotusscript" schon wesentlich besser für die Anwendungsentwicklung geeignet als die Version 3, die mit einer Makrosprache geschlagen war, deren Wurzeln auf das glücklose "Lotus Symphony" zurückreicht. Aber auch eine Basic-ähnliche Programmiersprache, die alles in kleine Codefragmente zersplittert, scheint nicht ideal für die Modellierung von Geschäftsabläufen und die Formulierung komplizierter Routing-Entscheidungen. Die erhöhte Flexibilität, die solche Anwendungen bringen soll, bleibt dabei auf der Strecke.

Onestone nutzt bereits die Fähigkeiten von Notes 4

Es gibt eine ganze Reihe von Drittanbietern, die diesem Manko abhelfen wollen. Die Paderborner Onestone ist allerdings einer der ersten, der die Fähigkeiten von Notes 4 weitgehend nutzt. Auf den Vorgängerversionen ist es daher nicht einsetzbar.

Onestone Prozessware besteht im wesentlichen aus zwei Produkten: einem grafischen "Prozess-Designer" und der "Prozess-Engine". Mit Hilfe des Designers kann man Prozeßabläufe modellieren, ohne über Programmierkenntnisse zu verfügen. Damit wird die Prozeßmodellierung denjenigen in den Fachabteilungen zugänglich gemacht, die die Geschäftsprozesse tatsächlich kennen. Das Programm speichert diese Prozeßabläufe in Notes-Datenbanken, die von der Prozess-Engine interpretiert werden.

In die Prozeßabläufe bindet der Designer vorhandene Notes-Bausteine, etwa Formulare und Agenten, ein. Die Zuordnung von Lese- und Schreibrechten erfolgt auf der Basis der in Notes vorhandenen Benutzerverwaltung. Typisch für Workflow-Anwendungen ist, daß sich diese Rechte im Arbeitsablauf ständig ändern. Die Engine evaluiert diese Rechte deshalb bei jedem Prozeßschritt und kann sie bis auf Dokumentebene herunter ständig dynamisch anpassen. Grafische Beschreibung und Dokumentation der Prozesse entsprechen stets dem aktuellen Stand der Systemeinstellung, da der grafische Prozess-Designer lediglich das Front-end zur direkten Konfiguration der Laufzeitkomponente ist. Der Abgleich zwischen Vorgabe und Definition in einem etwaigen vorgeschalteten externen Werkzeug zur Geschäftsprozeßmodellierung und der Umsetzung im laufenden System entfällt.

Prozessware unterstützt sowohl benutzerkontrollierte als auch automatisierte, im Hintergrund (auf dem Server) ablaufende Prozeßschritte. Als automatisierte Aktivitäten lassen sich selbstentwickelte Lotusscript-Agenten einbinden, Mails an externe Systeme verschicken, oder Programme auf dem Server starten.

Einmal definierte Prozesse sind dabei nicht starr wie in einer Behörde, in der Akten von einem Ausgangskörbchen in das Eingangskörbchen des Nachfolgers weitergeleitet werden. Auch zur Laufzeit erlaubt die Engine Ausnahmeregelungen. Ad hoc kann von den vorgegebenen Prozeßschritten abgewichen werden, etwa um noch einen Kollegen hinzuzuziehen. Damit Vorgänge nicht irgendwo hängenbleiben, greift eine eingebaute Terminüberwachung, die bei noch nicht bearbeiteten Aktivitäten warnt.

Bestandteil der Notes-basierten Runtime-Engine ist eine Organisationverzeichnis-Datenbank. Darin können alle Elemente der Aufbauorganisation verwaltet werden, wie beispielsweise die Personen, deren Rollen, Arbeitsgruppen und Abteilungen. Darüber hinaus können komplexe Beziehungen innerhalb der Organisation allgemeingültig formuliert werden, wie "der Leiter der Abteilung des Vorgangsinitiators".

Bei Abwesenheit von Mitarbeitern kommt ein Stellvertreter-Management zum Zuge, das Vorgänge automatisch an vorher designierte Vertreter weiterleitet. In allen nicht-trivialen Prozessen werden zudem in der Regel nicht einzelne Dokumente, sondern stets ganze Vorgangsmappen von zusammengehörigen Dokumenten weitergegeben.

Da die Workflow-Prozesse von der Engine interpretiert werden, ist Prozessware sehr flexibel. Auch die Änderung von Prozessen führt nicht zu einer Unterbrechung bereits gestarteter Vorgänge. Diese laufen nach den vorher gültigen Regeln weiter, während die neu generierten Prozesse dem neuen Ablauf folgen.

Bereits vorhandene Abläufe kann man im Designer wiederverwenden. Er unterstützt eine Unterteilung in Teilprozesse und die Aggregation größerer Vorgänge aus solchen Teilprozessen. Änderungen an letzteren setzen sich in allen höher aggregierten Prozessen fort.

Auch die technische Realisierung ist sehr frei zu gestalten. So wird man in der Regel Prozesse in einer einzelnen Notes-Datenbank abwickeln. Wenn eine Anwendung auf mehrere Datenbanken zurückgreift, etwa wenn zwei getrennte Unternehmen an einem Prozeß beteiligt sind, dann nutzt Prozessware sogenannte "Mail-In"-Datenbanken, die Notes bereitstellt. Das ist wesentlich flexibler als die Verwendung persönlicher Mail-Datenbanken. Diese Lösung vermeidet darüber hinaus die Replikation von Datenbanken zwischen verteilten Standorten oder Organisationen.

Die Prozess-Engine basiert komplett auf Notes-Technologie. Sie residiert als Lotusscript in einer Notes-Datenbank. Damit ist sie unmittelbar auf allen Betriebssystemen, die Notes unterstützen, ablauffähig, sei es auf einem kleinen NT Server oder auf einer großen RS/6000 SP2.

Durch die Beschränkung auf Notes-Technologien profitiert Prozessware auch sonst von der Erweiterung der Notes-Fähigkeiten. Der Domino-Server etwa, ein Web-Server für das Internet auf Basis von Notes, eröffnet damit beinahe automatisch Geschäftsprozesse auch dem Internet. Man denke hier an einen Kunden, der über das Internet einen Auftrag erteilt, der intern einen Bestellvorgang unter Lotus Notes startet.

Der Prozess-Designer ist bis auf den Notes-Datenbankzugriff eine eigenständige Anwendung. Onestone favorisiert hier Windows in all seinen Spielarten. Die Portierung auf andere Plattformen wurde aber bereits beim Entwurf berücksichtigt. Das grafische Front-end des Designers bedient sich der C++-Klassenbibliothek "Starview" des Hamburger Unternehmens Star Division. Dies erleichtert eine Portierung auf verschiedene Betriebssysteme, da die Anpassung im wesentlichen durch die systemspezifische Klassenbibliothek erfolgt.

Weitere Informationen zu Prozessware finden sich im Internet unter http://www.onestone.de.

*Volker Weber arbeitet als freier Journalist in Darmstadt..