Kleine Anleitung für das Zeichnen von BPMN

veröffentlicht in Consulting am 10. Apr. 2015 Tags: , , ,

BPMN (Business Process Modelling and Notation) ist eine grafische Spezifikationssprache für die Modellierung und Dokumentation von Geschäftsprozessen. Hier kann speziell die Abfolge von Prozessen (Workflows) und dem Nachrichtenaustausch zwischen verschiedenen Prozessen spezifiziert werden.

Um Prozesse darzustellen, wird ein Programm benötigt, mit dem Zeichnen und das Einfügen von Objekten möglich ist. Bei initOS benutzen wir draw.io. Darin sind alle erforderlichen Zeichen und Objekte verfügbar und die Handhabung ist selbsterklärend.
1 2 3

Beim Zeichnen von BPMN-Modellen existiert ein extrem großes Zeichenrepertoire. Dies wirkt anfangs ein wenig verwirrend. Im Allgemeinen wird aber nur eine Handvoll Zeichen benötigt, um einen schnörkellosen Prozess darzustellen.Die Zeichen und Symbole finden sich bei draw.io am linken Bildschirmrand.Zu Beginn ist es notwendig Pools und Lanes zu definieren.

Die Pools können als Teilnehmer eines Prozesses verstanden werden. Sie bilden den Rahmen für die einzelnen Prozesse. Durch einen Doppelklick auf den Pool kann die Beschriftung verändert werden.

4

 

Sind z.B mehrere Abteilungen an einem Prozess beteiligt, so werden im Pool die jeweiligen Lanes angelegt. Auch ihre Beschriftung kann durch einen Doppelklick verändert werden.
5Zu finden sind beide Objekte bei draw.io unter BPMN Allgemein. 

Fangen wir mit einem ganz einfachen Beispiel für eine Bestellung an:

6

 

Hier begegnen uns schon die ersten Symbole, die für einen Prozess wichtig sind.

 

7

Dies ist das Startereignis (General Start), mit dem ein normaler Prozessfluss durch eine nicht näher beschriebene Auslösebedingung begonnen wird.

 

8

Dies ist ein untypisiertes Endereignis (General End), welches ein normales Ende eines Prozesses markiert.

 

9

Unschwer zu erkennen ist das hier ein Task. Ohne ihn ist ein Prozess nicht vollständig, denn er repräsentiert die Aufgabe, die zu erledigen ist, um den Prozess fortzusetzen. Die Aufgabe muss klar und kurz definiert werden (Doppelklick auf das Symbol um die Schrift zu ändern).

 

10

Ist eine Aufgabe komplexer und würde die Lesbarkeit durch ihren Umfang beeinträchtigen, so wird sie als Sub-Prozess dargestellt.
Mit dem + wird symbolisiert, dass sich dieser Task in verschiedene Aufgaben aufgliedert.

 

11

 

Zugehörig muss ein expandierender Sub-Prozess angelegt werden.
Leider öffnet sich bei draw.io dieser, durch das Klicken auf das +, nicht. Deshalb muss der expandierende Sub-Prozess am besten unter den Geschäftsprozess gezeichnet werden. Danach wird dieser mit dem Sub-Prozess durch eine ungerichtete Assoziation (gestrichelte Linie) verbunden, um deutlich zu machen, dass der Geschäftsprozess die Ausformulierung des Sub-Prozesses ist.

 

12
Ein Sequenzfluss wird durch einen langezogenen Pfeil dargestellt. Er verbindet die Ereignisse miteinander.
Bei draw.io ist er in der linken Spalte zu finden, er kann aber auch per Mausklick einfügt werden.
Mittels fahren des Mauszeigers über ein Symbol können blaue Markierungen sichtbar gemacht werden. Durch anklicken und gedrückt halten der linken Maustaste, ist es möglich zwei Symbole miteinander automatisch zu verknüpfen, sodass diese, selbst wenn sie verschoben werden, eine sichtbare Beziehung zueinander aufweisen.
Durch dieses Verbinden erscheint der schwarze Pfeil.

 

13

Mithilfe des Reiters Format eröffnet sich die Möglichkeit den Pfeil nach seinen Wünschen zu verändern. Er muss lediglich markiert bleiben.

14
Neben dem schwarzen Pfeil wird auch häufig die gestrichelte Linie benötigt, auch Ungerichtete Assoziation genannt. Sie kann sowohl eine Zuordnung zu einem Datenobjekt, aber auch eine reine Informationsübergabe verdeutlichen.

 

Da ein Prozess auch Verzweigungen und Entscheidungen beinhaltet, ist es notwendig, dass Gateways definiert werden.Hierbei wird zwischen Verzweigung und Zusammenführung unterschieden.
Wie schon im zweiten Bild zu sehen, gibt es davon einige. Die Wichtigsten vier sind aber diese:

 

15
Das Exclusive Gateway
Meistens sind es Ja/Nein Fragen, die mit diesem Gateway dargestellt werden.
Das bedeutet, der Fluss wird abhängig von Verzweigungsbedingung genau einer ausgehenden Kante geleitet. Bei der Zusammenführung wird nur auf eine der eingehenden Kanten gewartet, um fortzufahren.

 

16
Das Parallel Gateway
Vereinfacht beschrieben ist es das UND Gateway. Es wird eingesetzt, wenn mehrere Verzweigungen gleichzeitig von Nöten sind, um den Fluss fortzusetzen. Die Verzweigung wartet bei diesem Gateway auf alle ausgehenden Kanten. Bei der Zusammenführung wird auf alle eingehenden Kanten gewartet, bevor der ausgehende Sequenzfluss aktiviert wird.

 

17

Inklusive Gateway
Es lässt sich besser mit ODER Gateway beschreiben. Bei einer Verzweigung werden eine oder mehrere Wege abhängig von den Verzweigungsbedingungen eingeschlagen.
Bei einer Zusammenführung gilt dasselbe wie bei dem Parallel Gateway.

 

18
Das Komplexe Gateway
Es wird benutzt, wenn die anderen Gateways nicht auf den angestrebten Ausdruck des Prozesses passen. Die Bedingungen für den Ablauf müssen klar definiert und dargestellt werden.

 

Abgesehen vom Start und Ende gibt es noch andere Ereignisse, die darstellen werden können und die einen Prozessablauf bildlich vereinfachen.

 

Grundsätzlich sind drei Kategorien von Ereignissen zu unterscheiden. Das Startereignis ist immer durch einen einfachen Kreis gekennzeichnet (wie schon beim General Start aufgezeigt, das Zwischenereignis besitzt immer einen doppelten Kreis und das Endereignis immer einen fett gedruckten Kreis (sichtbar beim General End).

 

19

Ein Prozess kann demnach auf verschiedene Arten starten und enden, wie z.B. mit einer Nachricht.

 

20
Am häufigsten beim Prozesszeichnen wird das Nachrichten Zwischenereignis verwendet.
Mit ihm wird deutlich gemacht, dass erst eine Nachricht versendet oder empfangen werden muss, um einen Sequenzfluss fortzusetzen. Dieses Symbol kann einfach in die Mitte eines schwarzen Pfeils gesetzt werden.

 

21
Ebenso wichtig ist das Zeitsymbol. Es kann ein Startereignis sein, dann wird ein Prozess zu einer bestimmten Zeit gestartet. Es kann aber auch im Laufe eines Prozesses benötigt werden. Wenn z.B. ein bestimmtes Datum eingehalten werden muss, damit die Sequenz weiter laufen kann, oder die nächste Aufgabe erst ab einer bestimmten Uhrzeit in Angriff genommen werden soll.
Wichtig ist es hier eine Annotation (Erklärung folgt) mit einer genauen Beschreibung der Zeitumstände anzufertigen.
Zum besseren Verständnis der Darstellungen können mithilfe von sogenannten Artefakten Informationen und Bedingungen in die Grafik einfügt werden.

 

22
Am einfachsten und anschaulichsten können Randbemerkungen durch Annotationen dargestellt werden.
Sie werden dann mit dem Symbol verbunden, auf das sich die Anmerkungen beziehen. In die Annotationen kann so viel geschrieben werden, wie benötigt wird.
Zur besseren Übersicht sollten die Gateway-Fragen, die sich stellen, hiermit deutlich gemacht werden.

 

23

Auch in Datenobjekten können Informationen, wie z.B. Dokumente, E-Mails, Briefe oder Datensätze aufgeschrieben werden, um zu verdeutlichen, auf was sich die jeweilige Aufgabe bezieht.

 

24

Dies ist ein Datenspeicher, auf den derjenige, der den Prozess liest, zugreifen kann. Hiermit können Datenbanken, aber auch Aktenschränke veranschaulicht werden.

 

Ist ein Prozess erst einmal fertig, sollte das Abspeichern nicht vergessen werden. Dazu wird oben in der Leiste auf “Datei“ geklickt, danach auf “Herunterladen als“. Damit öffnen sich verschiedene Speicherarten, unter denen ausgewählt werden kann. Am gebräuchlichsten wird eine Datei unter Draw.io Plain (.xml), unter Portable Network Graphics (.png) oder unter JPEG File Interchange Format (.jpg) abgespeichert. Wir brauchen vor allem eine Draw.io Plain (.xml), aber auch eine Portable Network Graphics (.png) und eine JPEG File Interchange Format (.jpg).

 

Wie schon beschrieben, gibt es viele verschiedene Symbole und Wege um einen Prozess darzustellen. Dies hier ist nur eine Beschreibung der “Standardsymbole“, um einen einfachen Prozess grafisch veranschaulichen zu können.

Ich wünsche viel Erfolg beim Zeichnen.

(Quelle bei allen Bildern www.draw.io)

Über Lisa Redeker

Durch ihr Studium der Kulturwissenschaften mit dem Hauptfach Germanistik, ist Lisa Redeker versiert im Verfassen und Bearbeiten von Texten.
Als Teamassistentin unterstützt sie initOS im Bereich Backoffice.

Besuch auf dem eCommerce Camp 2015!

veröffentlicht in Communication,Software Engineering am 17. Mrz. 2015 Tags: , , ,

logo_400x400

In diesem Jahr hat es mich das erste Mal auf das eCommerce Camp nach Jena verschlagen. Dies ist ein Barcamp, das heißt, hier werden die Vorträge nicht von der Organisation geplant, sondern jeder kann kommen und über ein beliebiges Thema reden. Bei der Session Planung wird zu Beginn abgestimmt, ob andere Teilnehmer etwas über das Thema hören möchten.

Dem Namen des Camps entsprechend ging es in diesem Jahr um eCommerce. Die unterschiedlichen Akteure, wie Shop-Betreiber, Hoster, Shop-Hersteller, diverse Agenturen und andere interessierte Teilnehmer, sorgten für ein spannendes Event. Zu den verschiedenen Sessions gab es eine große Vielzahl von Vorträgen. Vertreten waren Entwickler und Integratoren von Magento, OXID, Shopware, SPHERE.IO, Spryker und PrestaShop. Dennis Heidmann von Intershop hielt einen interessanten Vortrag über die Migration von OXID in Intershop.

Ich war mit zwei Sessions vertreten. Die erste Session “Kann ERP auch Shop? Odoo v8 – ein neuer Ansatz” hatte ich im Vorfeld schon vorbereitet. In dieser bin ich besonders auf die Funktionen des website_sale Moduls von Odoo eingegangen. Bei diesem Modul handelt es sich um ein Shop-Frontend. Ich habe dargestellt, wie man im B2B-Handel neue Wege gehen kann, welche mit einem klassischen Shop-System oder einem traditionellen CRM schwer umsetzbar wären. Meine Präsentation könnt ihr euch hier ansehen.

In der zweiten Session habe ich Odoo als ERP-System für eCommerce vorgestellt. In einer Live-Demo habe ich von unseren Erfahrungen mit Odoo berichtet. Dabei habe ich gezeigt, wie Odoo genutzt werden kann, um die Probleme und Herausforderung eines Online-Händlers im Bereich Order-Abwicklung, Finanzsteuerung und Controlling zu lösen. Des Weiteren bin ich darauf eingegangen, wie wir von initOS Projekte so umsetzen, dass unsere Kunden auch für die nächsten Wachstumsstufen bereit sind. Ich freue mich, dass die Sessions bei den Zuhörern sehr gut angekommen sind.

Loben möchte ich die familiäre Atmosphäre sowie das gute Essen. Ich werde meinen Kollegen ausführlich vom Camp berichten und bin mir sicher, dass ich im nächsten Jahr mit kollegialer Verstärkung dabei sein werde.

Über Markus Schneider

Als Analytiker und Informatiker ist Markus Schneider Experte für Shop- und ERP-Systeme. Dabei setzt er sein fundiertes Wissen insbesondere im Bereich der Open Source Software ein und kann verschiedene
Anwendungssysteme, z.B. Oxid eSales, OTRS, und Solr Suche, darin integrieren. Auch mit der Onlineshopsoftware Magento kennt sich Herr Schneider bestens aus. Zudem greift er auf gesammelte Erfahrungen unterschiedlicher Systeme wie Sage, SAP und speziell OpenERP / Odoo zurück.

Odoo Community News 2015.01

veröffentlicht in Consulting,Software Engineering am 20. Jan. 2015 Tags: ,

Auch im neuen Jahr möchten wir Euch mit den Neuigkeiten von Odoo und OpenERP auf dem Laufenden halten.

Odoo Community Association News

Die Continues Intergration „Runbot“ der Odoo Community ist jetzt verfügbar. Hier wird jegliche Änderung an OCB und allen Odoo Modulen automatisch getestet. Damit stehen jetzt neben der CI von travis-ci.org zwei parallele Testumgebungen zur Verfügung.
Das neue Projekt der OCA ist die connector telephony. Hier werden nicht nur Module für den Odoo Asterisk connector gesammelt, sondern alle Anpassungen für eine einfache Integration mit verschiedenen Telefonanlagen.

Odoo – deutsche Lokalisierung

Zusammen mit anderen deutschen Partnern arbeiten wir an der deutschen Lokalisierung von Odoo und verwalten zusätzliche Module hierfür unter dem Schirm der OCA. Wer mehr Informationen darüber erhalten möchte, wie sich die OCA die deutsche Lokalisierung vorstellt, für den wurde hier eine Präsentation erstellt. In dieser wird sehr anschaulich erklärt, wie die OCA aufgebaut ist, welche Ziele und Konzepte realisiert werden, wie die Mitarbeit funktioniert und welche Richtlinien dabei zu beachten sind.
Die Repositories der Modulentwicklung für die deutsche OCA Lokalisierung kann man unter diesem Link einsehen.

Odoo v8

Bei Odoo v8 gibt es allerhand Neues zu entdecken. So wurde das connector_odbc Modul entwickelt, um beliebige Datenbanken aber auch Datenquellen, die das ODBC Interface unterstützen, in Odoo zu integrieren, um den Datenim- und export zu ermöglichen.
Neu ist auch eine Vielzahl von POS Modulen, die bei der Anpassung von Kassensystemen behilflich sind. Sie ermöglichen die Verfügbarkeit verschiedener Features von Version 8 auch in Version 7, sowie die Versionsunterstützung von Kreditkartenlesern oder LCD-Displays.

Ein weiteres außerordentlich nützliches Modul ist vertical-community, bei dem man ganz einfach eine Community Plattform bei Odoo bauen kann. Hier werden hilfreiche Apps und Module gebündelt, um grundlegende Bedürfnisse von Non-Profit-Organisationen zu managen. Es eignet sich demnach hervorragend fürs Crowdfunding und Coworking. Die Währung (e-Wallet) ist hierbei vollständig in den finanziellen Teil von Odoo integriert.

Odoo ist für eine komplexe Businessanwendung, im Vergleich zu vielen anderen Systemen, schon sehr übersichtlich aufgebaut und legt großen Wert auf die einfache Bedienung. Dennoch wünscht sich der ein oder andere Nutzer bei manchen Formularen einen schnelleren Zugriff auf eine Hilfe zu bekommen, bei der er das Wissen, z.B. von einer Anwendungsschulung, nachschlagen kann. Dafür gibt es jetzt das Modul “Help online”, durch das ermöglicht wird, die Hilfe direkt bei den Funktionen von Odoo zu integrieren.

OpenERP v7

Auch in OpenERP v7 hat sich so einiges getan, von dem wir Euch berichten möchten.
Wer viel mit Gantt Chart arbeitet, den wird es freuen, dass es ein neues Modul gibt, welches eine verbesserte Gantt Chart-Darstellung und -Benutzung erlaubt. Dies könnt Ihr unter diesem Link einsehen.
Eine andere Neuerung ist, dass nun auch das Modul für den Barcode mit Webkit in OpenERP v7 verwendbar ist. Denn bisher konnte man dieses Modul nur im Standard bei Odoo v8 im qweb benutzen. Hier nochmal der Link zu diesem Modul.

Modul_parent_dependecies ist ein interessantes kleines Modul, das Euch das Leben mit den Updates vereinfachen soll. Hiermit kann man einfacher sehen, welche Module mit dem Update auch geupdatet werden. Ihr behaltet mit diesem Modul den Überblick.
Beim Development Mode Modul handelt es sich um Live- und Testsysteme. Dies ist ein Modul, das beim Einstellen von Datenbanken für den Test- und Entwicklungsmodus hilfreich ist.

OpenMRP

Auch zu den Neuerungen bei OpenMRP sei kurz etwas gesagt. Die Neuheit hier ist eine OpenERP Modul-Sammlung für die Abbildung eines produzierenden Betriebs. Veröffentlicht wurde der Code hier.

Zum Schluss möchten wir Euch noch eine neue Plattform vorstellen, auf der man jetzt alle Apps finden kann. Sie nennt sich Odoo Apps und ist sehr übersichtlich gestaltet worden. Neu an ihr ist vor allem, dass der Support für Githup Repositories integriert ist.

Über Markus Schneider

Als Analytiker und Informatiker ist Markus Schneider Experte für Shop- und ERP-Systeme. Dabei setzt er sein fundiertes Wissen insbesondere im Bereich der Open Source Software ein und kann verschiedene
Anwendungssysteme, z.B. Oxid eSales, OTRS, und Solr Suche, darin integrieren. Auch mit der Onlineshopsoftware Magento kennt sich Herr Schneider bestens aus. Zudem greift er auf gesammelte Erfahrungen unterschiedlicher Systeme wie Sage, SAP und speziell OpenERP / Odoo zurück.

Nächste Seite »