Projekt


Der BPMN Creator ist ein innovatives Tool zur Unterstützung von Teams bei der kollaborativen Modellierung von Geschäftsprozessen.





Die Modellierung der Geschäftsprozesse wird dabei signifikant vereinfacht: Ihr modelliert am Whiteboard gemeinsam mit euren Kollegen/Kunden*innen den Geschäftsprozess. Wenn der Prozess fertig modelliert ist, nehmt ihr ein Foto des Prozesses mit eurem Tablet auf und importiert es in den BPMN Creator. Anschließend interpretiert der BPMN Creator das Bild und optimiert das generierte Modell, bevor es z. B. in den SAP Solution Manager hochgeladen wird.



Auftraggeber


vostura

ist ein Unternehmen, welches professionell bei der Einführung, dem Betrieb und der Weiterentwicklung der SAP-Lösungen unterstützt.
Der BPMN Creator ist eine der selbst entwickelten SAP-Lösungen.





Team

Studentinnen der HTW Berlin: Rada, Verena, Dilek, Isabell, Elsa, Melda (auf dem Bild von links nach rechts)


Prof. Dr.-Ing. Jörn Freiheit

Rolle: Projektbetreuer

Er hat immer ein offenes Ohr, selbst als unser Fernrohr erfror. Auch wenn es nicht mehr weiter ging, blieb er der Lösungsking.

HTW Berlin

Rada

Rolle: Entwicklerin

Sie ist eine Teamplayerin. Sie sucht nach optimalen Lösungen und probiert sie aus.

LinkedIn

Verena

Rolle: PO & Entwicklerin

Sie ist sehr loyal. Sie weiß genau, wo der nächste Schnipsel Code zu finden ist.

LinkedIn

Isabell

Rolle: Entwicklerin

Sie hat immer eine Lösung parat. Zögert nicht, sich neuen Aufgaben zu stellen.

LinkedIn

Dilek

Rolle: SM & Entwicklerin

Sie ist schnell und achtet auf Details. Sie ist sehr kreativ und trägt zur Umsetzung bei.

LinkedIn

Melda

Rolle: Entwicklerin

Sie ist ein gelassener Mensch. Sie hat ein klasse Gespühr nach etwas brauchbarem.

LinkedIn


Projektergebnisse


Produktvision: Die Anwendung sollte weitere BPMN-Elemente erkennen können: z.B. Subprozesse, Blackbox Pools sowie weitere Eventtypen. Zudem sollte die intern mit Python entwickelte Handschrifterkennung im Backend (Java) etabliert und die Erkennung der Gateways optimiert werden. Außerdem sollte der BPMN Creator PowerPoint Dokumente importieren und bearbeiten können.

Hier findest du die Herausforderungen und Technologien, die wir in diesem Projekt erarbeitet und genutzt haben.


Herausforderungen

  • pptx-Slider ins JPEG konventieren
  • Handschrifterkennung - Alternative zu Google Tesseract
  • Erkennen der (neuen) BPMN Elemente
  • Magic Number und Zoom-Faktor

  • Technologien

  • Git, Trello, IntelliJ
  • Java, Javascript
  • Maven, OpenCV
  • Python, Jupyter Notebook
  • DeepLearning4J, Keras, Tensorflow




  • PowerPoint Dokumente


    US : Als Kunde möchte ich Powerpoint Dokumente im BPMN Creator hochladen, um die Möglichkeit zu haben, BPMN Modelle in PowerPoint modellieren zu können.

    Es besteht die Möglichkeit, in Präsentationen erstellte Geschäftsprozessmodelle hochzuladen. Neben jpeg/jpg werden daher auch ppt/pptx Formate für den Dokumentenupload akzeptiert. Die Präsentation wird zunächst mit Hilfe der groupdocs API vom ppt/pptx Format in eine jpeg/jpg Datei konvertiert, danach durchläuft die konvertierte Datei genau die gleichen Schritte wie beim Upload einer jpeg/jpg Datei.


    Canyon at Nigh

    pptx wird zu JPEG konvetiert


    pptx wurde zu JPEG konvetiert


    Das Bild wird gecropped

    Handschrifterkennung


    US : Als Kunde möchte ich, dass der BPMN Creator eine Handschrifterkennung ohne Google Tesseract durchführen kann, um meine Daten nicht an Google weitergeben zu müssen.

    Zurzeit wird die Handschrifterkennung innerhalb der Webanwendung mit Hilfe von Tesseract OCR gelöst. Beim Hochladen einer Datei wird diese zur Handschrifterkennung an Google gesendet. Für viele Unternehmen stellt dies ein Compliance- und Datenschutzproblem dar. Daher wird Tesseract OCR durch eine eigene Lösung ersetzt.

    Die unabhängig von der Webanwendung implementierte Handschrifterkennung kann nun die Handschrift zuverlässig erkennen und korrigieren. Sie wurde mithilfe von Keras OCR in der Programmiersprache Python entwickelt.


    Canyon at Nigh

    Handschrift mit Hilfe von KerasOCR erkennen

    Canyon at Nigh

    Wörter in eine Liste speichern

    Canyon at Nigh

    Wörter bearbeiten/h5>

    Erkennung der handgezeichneten Gateways und neuen Elemente


    US : Als Kunde möchte ich, dass der BPMN Creator unabhängig von magnetischen Elementen Gateways erkennen kann, um keine Magneten mitliefern zu müssen.

    US : Als Kunde möchte ich, dass der BPMN Creator den Subprozess als Element erkennt, um die Anzahl der detektierbaren BPMN Elemente zu erweitern.

    US : Als Kunde möchte ich, dass der BPMN Creator Blackbox Pools als Element erkennt, um die Anzahl der detektierbaren BPMN-Elemente zu erweitern.

    Gatewayerkennung:

    Gateways werden in der BPMN-Notation als Rauten mit einem Symbol "+" und "X" dargestellt. Im Ausgangscode des BPMN-Creators werden nur perfekt gezeichnete Gateways sehr gut erkannt, was nur mit mitgelieferten Magnetschablonen gewährleistet werden kann. Aufgrund des erhöhten Aufwands, der durch die Erstellung und den Versand der Magnetschablonen entsteht, ist es von Bedeutung, die Webanwendung so zu verbessern, dass auch handgezeichnete Gateways erkannt werden können.

    OpenCV: Die erste Idee, welche es ermöglichen soll, handgezeichnete Gateways zu erkennen, ist die Harris Corner Detection. Dies kann mithilfe von OpenCV umgesetzt werden.

  • Harris Corner Detection: Der erste Schritt ist die Kantenerkennung, wobei Kanten nach bestimmten Kriterien gefiltert werden. Im zweiten Schritt werden die gefundenen Ecken nach bestimmten Kriterien gefiltert. Die Ergebnisse dieser beiden Schritte werden dann in einem dritten Schritt miteinander kombiniert, um die handgezeichneten Gateways zu finden.

  • Google Tesseract: Sobald die gefundenen Gateways erkannt werden, sollten sie nach den verschiedenen Gatewaytypen gefiltert werden. Es ist somit essentiell, dass erkannt werden kann, ob es sich bei dem gefundenen Gateway um ein xAND-Gateway („+“-Symbol) oder ein xOR-Gateway („x“-Symbol) handelt. “Tesseract-OCR” oder eine eigene Lösung zur Handschrifterkennung können dabei helfen.
  • Machine Learning: Um eine zuverlässige Erkennung und Lokalisierung von Gateways und sogar anderen BPMN-Elementen zu ermöglichen, ist Machine Learning eine weitere Option. Als erstes wird ein Bildklassifizierungsmodell trainiert, welches helfen soll, die Gateways von den weiteren Elementen zu unterscheiden. Daraufhin folgt das Trainieren eines Objekterkennungsmodells, welches auf der Bildklassifizierung aufbaut. Die Objekterkennung dient dazu, die Gateways in den Bildern zu lokalisieren.

    Subprozesserkennung:

    Subprozesse werden in der BPMN-Notation als Rechteck mit Text dargestellt, an dessen unteren Kante und innerhalb des Elements sich ein weiteres Rechteck mit einem „+“ befindet.

    In der Ausgangsversion der Webanwendung werden Rechtecke zuverlässig erkannt. Nutzt man diese vorhandene Funktion, sucht man alle Rechtecke im Geschäftsprozess und schaut daraufhin, ob sich in dem Rechteck noch ein weiteres Rechteck befindet. Um sicherzustellen, dass es sich tatsächlich um einen Subprozess handelt, wird geprüft, ob die Höhe bei Y der unteren Kante des größeren Rechtecks mit der Höhe bei Y der unteren Kante des kleineren Rechtecks übereinstimmt. Somit ist YRechteck1 == YRechteck2 und kann als Subprozess übernommen werden.

    Blackboxerkennung:

    Blackboxes sind geschlossene Pools, die einen nicht sichtbaren Geschäftsprozess darstellen. Sie werden als großes Rechteck außerhalb des zu modellierenden Prozesses abgebildet. Bereits in der Ausgangsversion werden Rechtecke zuverlässig erkannt. Ist ein erkanntes Rechteck, ein Drittel größer als die anderen gefundenen Rechtecke, handelt es sich um eine Blackbox.



    Position ermitteln


    Gateways erkennen

    Magic Number


    US : Als Kunde möchte ich keine Magic Numbers mehr im Code haben, um keine technischen Schwierigkeiten mehr zu haben, Bilder unterschiedlicher Größe zu importieren.

    Im Ausgangscode des BPMN Creators sind mehrere Magic Numbers enthalten. Beim Hochladen eines Bildes mit einer großen Anzahl von Elementen erscheinen die Elemente auf dem Bild kleiner als auf einem Bild mit wenigen Elementen. Bei den Magic Numbers wird jedoch davon ausgegangen, dass alle Elemente ungefähr gleich groß sind. Dies führt in der Anwendung dazu, dass bei Bildern mit einer unterschiedlichen Anzahl von BPMN-Elementen viele Elemente von der Anwendung nicht erkannt werden.

    Es wird ein Preprocessing durchgeführt, bei dem zunächst der durchschnittliche Radius eines Kreises bestimmt und mit dem Radius des tatsächlichen Kreises verglichen wird. Infolgedessen wird ein Zoom-Faktor berechnet, um die Größenverhältnisse der verschiedenen Geschäftsprozessmodelle ausgleichen zu können.



    Originalbild

    Canyon at Nigh

    Fehlerhaft umgewandeltes Bild