Ein kleiner Prozess zur Erstellung eines Angebots, der als einführendes Beispiel für die Verwendung von Bonita dient. Er wird im Buch in Kapitel 2 ausführlich erläutert.
Download
Voraussetzungen
Bonita BPM Community Edition, Version 6.x installiert. In der Regel sollten alle Versionen ab 6.1 funktionieren.
Verwendete Features von Bonita
- Sequenzfluss, Start- und Endereignis, Benutzer- und Service-Task, Formular zum Starten eines Prozesses, Formulare für Benutzer-Tasks, exklusiver Gateway, Default-Sequenzfluss
- In Formularen: Schaltflächen mit Aktionen, Eingabevalidierungen
- Dynamische Labels und Taskbeschreibungen im Portal
- Groovy-Skript-Konnektor
- E-Mail-Konnektor
Anleitung
Man kann auch erst einmal die Punkte 4 bis 8 weglassen. Der Prozess funktioniert genauso, nur werden am Ende keine automatischen E-Mails versandt.
- Datei downloaden und abspeichern.
- In Bonita Studio „Importieren“ wählen, Eingabeformat „Bonita 6.x“
- Im Menü „Organisation“ den Punkt „Veröffentlichen“ wählen, die Organisation „BPMSOrga“ selektieren, „Weiter“ anklicken, unter Benutzername „admin“ eintragen und mit der Schaltfläche „Veröffentlichen“ abschließen.
- Falls Sie wollen, dass aus dem Prozess heraus E-Mails versandt werden können, muss ein E-Mail-Konto eingetragen werden (z. B. ein Googlemail-Konto). Hierzu im Prozess „Angebot versenden“ selektieren, dann im rechten unteren Fenster im Register „Allgemein“ den Punkt „Konnektoren“ wählen.
- Den Konnektor „Email Angebot — email (1.0.0.) — ON_FINISH“ selektieren und „Bearbeiten“ wählen.
- In dem Dialog, der nun geöffnet wird, mit „Weiter“ zur zweiten Seite wechseln. Hier müssen die Daten eines E-Mail-Kontos eingetragen werden. Als Beispiel sind die Daten eines Googlemail-Kontos eingetragen. Falls Sie auch ein Googlemail-Konto verwenden, müssen lediglich unter „Authentifizierung“ Benutzername und Passwort eingetragen werden (Vorsicht: Das Passwort wird im Klartext gespeichert, siehe unten).
Hinweis: Bei Verwendung eines Googlemail-Kontos muss man sich vorher mit dem betreffenden Konto bei Googlemail einloggen und bei „Konto“ unter „Sicherheit“ den „Zugriff für weniger sichere Apps“ aktivieren. - Auf der nächsten Seite unter „Von“ Ihren Absender-Namen eintragen und mit „Fertigstellen“ abschließen.
- Für den Task „Absage versenden“ die Punkte 4 bis 7 wiederholen.
- Im Modell in den Pool „Angebot erstellen“ klicken und in der Menüleiste das Symbol „Ausführen“ wählen.
- Es öffnet sich der Browser zur Durchführung des Prozesses, es ist die Benutzerin mit dem Benutzernamen „lauer“ eingeloggt. Formular ausfüllen und mit „OK“ absenden. Rechts oben „Bonita BPM Portal wählen. Anschließend abmelden (rechts oben im Drop Down-Menü beim Benutzernamen).
- Mit dem Benutzernamen „tumm“ und dem Passwort „bpm“ einloggen. In der Aufgabenliste die Aufgabe „Angebot ausarbeiten für …“ wählen und auf „Machen Sie es“ klicken. Einen Angebotstext einfügen und mit „OK“ abschließen.
- Abmelden und wieder mit dem Benutzernamen „lauer“ und dem Passwort „bpm“ einloggen.
- Auf diese Weise kann man den Prozess gemäß dem modellierten Ablauf weiter abarbeiten, bis schließlich ein Angebot oder eine Absage versandt wird. Dabei wird automatisch eine E-Mail an die in Schritt 10 eingegebene E-Mail-Adresse verschickt.
- Soll der Prozess erneut durchgeführt werden, so kann die Benutzerin „Lauer“ unter „Apps“ den Prozess „Angebot erstellen“ auswählen und mit „Start“ eine neue Angebotsbearbeitung beginnen.
Wird einmal ein Task nicht gleich in der Taskliste angezeigt, so kann man die Anzeige über den Button mit dem kreisförmigen Pfeil (unter dem Suchfeld) aktualisieren.
Hinweise und Erläuterungen
Organisation und Rollen: Mit dem Import des Prozesses wird zugleich auch die verwendete Organisationsstruktur importiert. In Bonita ist immer nur eine Organisationsstruktur zugleich aktiv. Alle Prozesse, die auf dem Server gleichzeitig zur Verfügung stehen sollen, müssen daher dieselbe Organisationsstruktur verwenden. Die im Buch genutzten Prozesse benutzen alle dieselbe Organisationsstruktur „BPMSOrga“. Sie braucht dann nicht mehr neu importiert zu werden, weshalb die .bos-Dateien der anderen Prozesse keine Organisationsstrukturen enthalten. Die gesamte Organisationsstruktur „BPMSOrga“ ist hier genauer beschrieben.
Damit die Organisationsstruktur auf dem Server verfügbar ist, muss sie zunächst veröffentlicht werden. Dabei wird ein Benutzer angegeben, der automatisch angemeldet wird, wenn man den Server startet und das Portal öffnet (über das Symbol „Portal“). In der obigen Anleitung ist dies der Benutzer „admin“. Startet man das Portal hingegen über „Ausführen“ mit einem bestimmten Prozess, so ist der zunächst angemeldete Benutzer in der Konfiguration des Prozesses festgelegt, im vorliegenden Fall die Benutzerin „lauer“. Ist das Prozessmodell geöffnet und im Vordergrund, so erreicht man die Konfiguration des Prozesses über das Symbol „Konfigurieren“. Dort trägt man den automatisch anzumeldenden Benutzer unter „Authentifizierung“ ein.
Da für die Beispiele des Buchs die eigene Organisationsstruktur „BPMSOrga“ verwendet wird und nicht die mitgelieferte Beispielorganisation „ACME“, kann man die von Bonita bereitgestellten Beispielprozesse, wie z. B. Help Desk oder Procurement, nicht zugleich mit den hier verfügbaren Prozessen nutzen (es sei denn, man passt die Prozesskonfiguration entsprechend an die andere Organisationsstruktur an). Vor der Nutzung der Bonita-Beispielprozesse muss man daher zunächst wieder die ACME-Organisation veröffentlichen (Standardbenutzer walter.bates).
Ausführen, Server, Portal: Startet man „Ausführen“ in Bonita Studio, so wird zunächst geprüft, ob der integrierte Server, d. h. die eigentliche Process Engine, schon läuft. Falls nicht, wird er gestartet. Anschließend wird der Prozess auf den Server hochgeladen und sofort ausgeführt. Hierbei startet Bonita das erste Formular zunächst in einer Webanwendung, die – anders als das eigentliche Portal – keine Taskliste u. ä. enthält. In einer solchen Webanwendung kann ein Benutzer den Prozess soweit durchführen, bis zu einem anderen Benutzer gewechselt werden muss. So könnte man z. B. einem Kunden eine solche Anwendung zur Erfassung eines Auftrags bereitstellen. Da der Kunde an keinen anderen Prozessen beteiligt ist, benötigt er keine Taskliste. Soll der Benutzer gewechselt werden, muss in das Bonita Portal gewechselt werden.
Bei dem integrierten Server handelt es sich um einen reinen Testserver. Der Prozess-Start direkt aus dem Prozessmodell heraus dient dem einfachen Testen im Rahmen der Entwicklung. Das Deployen eines Prozesses auf einen produktiven Server funktioniert anders. Hier wird aus dem Bonita Studio heraus zunächst ein ausführbares „Business Archiv“ (mit der Endung „.bar“) erzeugt. Dieses wird anschließend im Portal von einem Administrator installiert. Gestartet wird der Prozess dann ebenfalls im Portal, von einem Benutzer mit der entsprechenden Rolle. Natürlich stehen diese Möglichkeiten auch auf dem Testserver zur Verfügung.
Für den integrierten Testserver gibt es noch zwei interessante Einstellungen, die in Bonita Studio unter „Voreinstellungen >> Datenbank“ erreichbar sind. Dort gibt es eine Option „Datenbank beim Beenden bereinigen“. Ist diese Option ausgewählt, so werden sämtliche Prozesse beim Beenden des Bonita Studio vom Server gelöscht. Dies hat den Vorteil, dass man nach jedem Start ein leeres System hat und keine störenden Testprozesse und -instanzen vom letzten Mal vorhanden sind. Bei einem produktiven Server wäre dieses Verhalten natürlich nicht gewünscht. Ein produktiver Server wird normalerweise nicht heruntergefahren. Ist dies aber dennoch einmal der Fall, so sollen die Prozesse und die laufenden Prozessinstanzen nach dem Hochfahren weiterhin zur Verfügung stehen. Während der Entwicklung kann es aber ganz nützlich sein, jeden Tag ein aufgeräumtes System zu haben. Die zweite Option „Aktive Organisation beim Start veröffentlichen“ sorgt dafür, dass man die Organisationsstruktur nicht jeden Tag erneut manuell veröffentlichen muss.
Unsichere Verwaltung der E-Mail-Passwörter: Das im E-Mail-Konnektor eingegebene Passwort wird in Bonita leider im Klartext gespeichert, was sehr unsicher ist. Falls man sein eigenes privates oder dienstliches E-Mail-Konto einträgt, sollte sichergestellt sein, dass der betreffende Prozess nicht weitergegeben wird. Exportiert man seinen Prozess und gibt die .bos-Datei an andere weiter, können diese nicht nur mit Hilfe dieses Prozesses Mails über das eingetragene Konto versenden, sondern auch das Passwort im Klartext einsehen. Da die Passwörter unter Umständen an mehreren Stellen in verschiedenen Konnektoren eingetragen sind (neben E-Mail-Konnektoren betrifft dies z. B. auch Konnektoren für den Datenbankzugriff), vergisst oder übersieht man unter Umständen, dass ein Prozess, den man jemand anderem weitergeben möchte, das betreffende Passwort enthält.
Sicherer ist es daher, speziell für Testzwecke ein gesondertes E-Mail-Konto bei einem beliebigen Anbieter kostenloser E-Mail-Konten einzurichten.
Benutzer: Die folgenden Benutzer sind Verkäufer: „lauer“, „kiefer“ und „kowalski“. Der Benutzer „tumm“ ist Technischer Vertriebsmitarbeiter. Zudem gib es noch einen Benutzer „admin“, der alle Rollen einnehmen kann. Loggt man sich mit diesem Benutzer ein, so kann man den gesamten Prozess durchspielen ohne sich mehrfach aus- und wieder einloggen zu müssen.
Das Passwort für alle Benutzer lautet „bpm“.
Möchte man den Prozess mit verschiedenen Benutzern durchspielen und sich dennoch das mehrfache Ein- und Ausloggen sparen, so kann man mehrere Browser verwenden, in denen jeweils ein Benutzer angemeldet ist und bleibt. Das funktioniert allerdings nicht, indem man lediglich mehrere Fenster desselben Browser öffnet. Wechselt man dann nämlich den Benutzer in einem Browserfenster, so wirkt sich dies auch auf die anderen Browserfenster aus.
Eine Möglichkeit besteht darin, unterschiedliche Browser zu verwenden (z. B. Chrome und Firefox). In manchen Browsern gibt es zudem die Möglichkeit, explizit Browsersitzungen für unterschiedliche Benutzer zu öffnen. So kann man z. B. in Chrome unter „Einstellungen“ neue Nutzer hinzufügen. Anschließend kann man in jedem Chrome-Fenster links oben über das Benutzer-Symbol einen anderen Nutzer auswählen. Nun kann in jedem Fenster auch in Bonita ein anderer Benutzer eingeloggt sein, und man braucht beim Wechsel zu einem anderen Akteur im Prozess nur das Fenster zu wechseln.
Fehlersuche: Funktioniert bei der Ausführung etwas nicht wie beschrieben, so kann einem oftmals das Protokoll der Process Engine Hinweise geben. Man kann es unter „Hilfe >> Protokoll der Bonita BPM Engine“ öffnen. Die Eintragungen sind oftmals recht lang und schwer durchschaubar. Am besten scrollt man solange nach unten, bis man den ersten Eintrag findet, der sich vom eingetragenen Zeitpunkt her auf das gerade aufgetretene Problem bezieht. Oft findet man in den ersten Zeilen einen Hinweis auf die Ursache des Problems. Verwendet man z. B. im vorliegenden Prozess im E-Mail-Konnektor ein ungültiges Passwort, findet man in der zweiten Zeile des betreffenden Protokoll-Eintrags den Konnektor, bei dem das Problem aufgetreten ist („connectorDefinitionName = Email Absage“), und in der fünften Zeile die eigentliche Fehlermeldung („javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not accepted.“).
Nicht immer findet man auf diese Weise einen wirklich nützlichen Hinweis, doch ist es meist einen Versuch wert.