Presented by - ilum:e informatik AG

Die Seite wird erstellt Dominik Thiel
 
WEITER LESEN
Presented by - ilum:e informatik AG
presented by
Presented by - ilum:e informatik AG
Networking and Exchange
9. Meetup         Users and Developers
     26.10.2021   Rhein-Main-Area
Presented by - ilum:e informatik AG
CAMUNDA USER GROUP RHEIN-MAIN

        https://www.meetup.com/de-DE/Camunda-User-Group-Rhein-Main
                             264 Mitglieder
                              9 Meetups

 Jörg Zentgraf
 Practice Lead
 SMART AUTOMATION            ilum:e informatik ag
 joerg.zentgraf@ilume.de     www.ilume.de
Presented by - ilum:e informatik AG
FRAGEN

Bitte alle Mikrofone zu Beginn muten

Falls ihr Fragen während der Präsentation habt, dann gerne in den Chat stellen. Wir
werden diese dann zum Schluss nochmal besprechen 
Presented by - ilum:e informatik AG
FEEDBACK

Bitte gebt uns gerne Feedback, damit wir
zukünftige Meetups besser gestalten können!

Link wird auch nochmals im Teams Messenger
angezeigt:

https://easy-
feedback.de/9Camundameetup/1375271/Bn401D

Unter den Teilnehmern verlosen wir wieder unser Camunda / ilum:e - Paket :)
Presented by - ilum:e informatik AG
NACHLESEN

Die Präsentation sowie YouTube Links könnt
ihr in den nächsten Tagen auf unserer
Camunda Usergroup Seite gerne nochmal
nachlesen/-sehen.

https://ilume.de/sma/camunda-usergroup-rhein-main
Presented by - ilum:e informatik AG
CAMUNDA ÜBERBLICK
Presented by - ilum:e informatik AG
CAMUNDA ÜBERBLICK

                    https://ilume.de/sma
Presented by - ilum:e informatik AG
VORTRAG

Patterns that are a recipe for disaster
Nele Uhlemann, Camunda Services GmbH
Presented by - ilum:e informatik AG
WIE GEHT ES WEITER?

• Weitersagen
• https://www.meetup.com/de-DE/Camunda-User-Group-Rhein-Main/
• Wiederkommen  voraussichtlich 01.02.2022
• Fragen, Anregungen, Wünsche?
presented by
Patterns that are a recipe for disaster
How not to use Camunda

Rhein-Main MeetUp, 26. Oktober 2021
Wer bin ich?

               Nele Lea Uhlemann
                 Developer Advocate
2
3
Lesbare Prozessmodelle
- oder wie man grüne Soße macht
Implizite Gateways
                     Wie oft füge ich Eier,
                     Senf, Essig und Öl
                     hinzu?

5
Lanes

6
Ohne Lanes

                                                           e h en   ?
                                                       n s
                                       t änd   igkeite
                                ie Z us
                           u n d
                   nn i chn
             ie ka
    Aber w

7
Message flows und zugeklappte Pools

8
Farben

9
Farben ???

-    Farben sind nicht immer eine gute Idee

-    Im offiziellen Standard von BPMN sind keine Farben vorgesehen

-    Nutzen von Farben:
     -   Eindeutigkeit
     -   Verständnis von der Bedeutung
     -   Konsistenz

10
BPMN und DMN   Das ist noch okay, aber
               man kann hier schon eine
               Entscheidungstabelle
               nutzen

11
BPMN und DMN

12
13
Snaking models

14
Snaking models

15
Snaking models
     Vorteile:
      - Spart Papier beim Ausdrucken -- > Safe Trees

      - Man kann es auf einer Powerpoint Slide sehen

      - Die Semantikfehler werden vor dem Manager versteckt

      - Sieht wichtig und gut auf Dashboards aus

      - Es fügt dem Model etwas mystisches hinzu

16
De-Snakeified Model

17
Wichtig:

     - Lesbare Prozessmodel sorgen für Transparenz
        - Einfacher in der Entwicklung zu verstehen
        - Einfacher mit Business zu kommunizieren

     - Konsistenz
        - Symbolset
        - Best Practice
        - Lockdown vom Camunda Modeler
        - Camunda Best Practices
        - Training …

18
Der Teufel steckt im Detail
Error handling: Was kann schon alles schief gehen?

20
Error handling: Was kann schon alles schief gehen?

21
Error handling: Was kann schon alles schief gehen?

22
Error handling: Was kann schon alles schief gehen?

23
Error handling: Was kann schon alles schief gehen?

24
Error handling: What could go wrong?
                   Vorteile:
                    - Bringt Business Analysts zum Weinen :(
                    - Kein anderer außer der Modellierer bekommt die
                      Credits fürs Error Handling
                    - Verhindert Spionage
                    - Fehler Ereignisse sehen gut und wichtig aus
                    - Fügt dem Model etwas künstlerisches hinzu

                       Andere Ideen?

25
Error handling: Bessere Ideen

                            - Kann durch Cockpit übernommen
                              werden

                            - Gateways können genutzt werden

                            - Kann die Engine übernehmen

                            - Feuer: Wir arbeiten noch dran. Vielleicht
                              mit dem 7.17 Release

26
Kenne den Scope

     Vorteile:
      -   mehr Modellierung für alle Abteilungen!
      -   Keine Wiederverwendbarkeit
      -   Lang laufende Prozesse
      -   Alles an einem Ort

27
Knowing your scope

28
False friends (wenn man die Symbole nicht richtig
kennt...)

29
… aber in der Ausführung funktioniert es!

30
Implementieren
Technische Details
We have a problem…

32
We have a problem…

33
Vorteile
     -   Macht Business Analysts glücklich
     -   … bis in Produktion was schief geht
     -   Versteckt den gesamten Code
     -   Viele Antwortmöglichkeiten auf die Frage: “Was macht dieser
         Task eigentlich”

34
Ausmodelieren von Logik

35
Benutzen von Listeners
     -    Technische Details verstecken
     -    Das Model verkleinern
     -    Es soll nur User Tasks geben                               Schlechte Gründe

     -    Das Model soll nicht verändert werden, wenn es von der
          Fachabteilung kommt

                           -   Benachrichtigung beim Starten eines User Tasks
                           -   Datentransfer für einen Servicetask
         Gute Gründe       -   Aktion, wenn User task beendet ist
                           -   Kleines Skript um zu loggen

36
Async before/ after

37
What happens here?

                     Würde dieser Code im JUnit
                     Test für den oben
                     abgebildeten User Task
                     durchlaufen

38
Asynchronous continuations

Vorteile
 - hört sich wichtig an
 - hört sich so an als wenn wir das gebrauchen
 - wir sind 100% sicher, dass wir den State in unserer DB haben

39
Nutzen von async:

-    Verstehen von Transaktionen/ Wait states in Camunda Platform und
     den BPMN Symbolen

-    Frag dich: Wozu brauche ich das async?

-    Nutze Modeler Plugins um die gesetzten Transaktionen sichtbar zu
     machen

40
Inline Script

Ich brauch doch nur eine schnelle Berechnung.

            …und dann fängt das Skript an zu wachsen…

41
Service Task Implementierung

-    bevorzuge Delegate Expressions vor Java Classes

-    Benutze External Task für parallele und long running Aufgaben

42
The story of using Connectors for implementing a Service
Task
-    Ich will einen REST Call machen
-    Connector hört sich richtig an
-    Dokumentation lesen?
     -   Nee, Ich weiß, dass Connectoren das
         richtige sein müssen
-    Während der Implementierung… warte
     mal:
     -   Warum bekomme ich keinen Fehler bei
         einer schlechten Response (400, 500)?
     -   Wie behandele ich solche schlechten
         Antworten?
     -   Wie komme ich an die Daten von der
         Antwort?
     -   Performance
43   -   HELP!!!!
Produktion Konfiguration

-    Demo, Demo ist vielleicht nicht der
     beste Nutzer für die Produktion

-    H2 Datenbank

-    Sichere die REST API

-    2 Notes of Camunda (nicht nur eine)

44
Sie können auch lesen