2016-07-25 32 views
1

Ich modelliere einen Prozess für eine Firma. Dieser Prozess umfasst das Senden einer Nachricht an einen Client. Nun kann dieser Kunde entweder eine Antwort annehmen, ablehnen oder eine andere Aussage machen.Ist es erlaubt, von einem Fehlerereignis zurück zu gehen? - BPMN

Um dies zu fangen ich den Prozess wie so modelliert haben:

Loop on error

Ich bin nicht sicher, ob dies der richtige Weg der Modellierung ist. Es scheint jedoch der verständlichste Weg zu sein, aber da das Modellieren Teil meiner Bachelorarbeit ist, muss ich das richtig machen.

Vielen Dank für Ihre Antworten/Gedanken im Voraus!

Edit:

Remodeled process

Dieses Modell beseitigt so mit dem ungerechten Fehlerereignis und macht es, dass jedes Ergebnis eigenen Weg es hat:

Per Drux das Feedback, das ich das Modell wie so geändert haben . Dies sollte einfacher zu verstehen sein.

+0

Ich möchte auf eine Schwachstelle Ihres Modells hinweisen. Wenn der Client nicht antwortet, bleibt die Prozessinstanz für immer hängen. Sie sollten darüber nachdenken, diese Möglichkeit zu nutzen. – elnin0

Antwort

1

Ihr Modell sieht korrekt aus, aus einer BPM-Perspektive sieht es gut aus, was Ihre ursprüngliche Frage war. Von einer "Verstehen, was vor sich geht" Perspektive scheint es mir ein bisschen weg zu sein.

Zunächst einmal scheint es, als ob Sie eine menschliche Aktivität "Bestätigt Appointment" direkt nach dem Senden der Nachricht an den Client haben würde. Angesichts der Tatsache, dass der Kunde noch nicht geantwortet hat, fühlt sich das falsch an. Zweitens verwenden Sie ein Fehlerereignis für etwas, das ich nicht für einen Fehler halten würde - ein Benutzer, wie Sie sagen, kann 3 Wege antworten, so dass es falsch ist, einen Fehler für eine erwartete Antwort zu werfen.

Basierend auf Ihrer obigen Beschreibung würde ich dies modellieren, indem Sie auf ein Message Event warten, direkt nachdem Sie die Benachrichtigung an den Client gesendet haben. Dies wäre "Client Response" und dieses Zwischennachrichtsereignis würde dann zu einem Entscheidungs-Gateway gehen, das zu dem richtigen nächsten Schritt gehen würde, basierend darauf, wie der Kunde geantwortet hat - "Bestätigen", "Ablehnen", "Gegenvorschlag". Auf diese Weise gibt es während des Wartens auf die Kundenantwort keine Aktivität, die nicht für die Schwimmbahn "Aletha" ausgeführt werden sollte.

+0

Danke für Ihre Antwort! Und noch mehr Dank für Ihre Einsichten, da ich BPMN noch relativ neu bin, habe ich es nicht so betrachtet. Aber jetzt scheint es offensichtlicher, dass es nur multiple Optionen in diesem Fall ist, das Entscheidungs-Gateway wird offensichtlich benötigt ... Ich werde es umbauen und meine Frage aktualisieren. –

+0

Ich habe das Modell nach Ihrem Feedback geändert und es der Frage hinzugefügt. Danke noch einmal! –

+1

Das ist viel leichter zu verstehen. Ich denke, ich kann jetzt dem Flow folgen, ohne zu viel Kontext zu benötigen. – Drux