iteratec: vom dokument zum workflow

Post on 26-Jul-2015

149 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Vom Dokument zum Workflow Camunda Community Meeting am 09. Juni 2015

Michael Karas Lars Orta

Swiss Life Deutschland iteratec GmbH

2/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Ausgangslage

3/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Aktuell

4/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Posteingang und Vorgangsbearbeitung

5/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

• Ausgangslage: Scannen nach Sachbearbeitung

• Integration in bestehendes IBM FileNet P8 System

• Strukturierung und Homogenisierung von Arbeitsabläufen

• Verarbeitung von internen Dokumenten

Herausforderungen

6/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Layout Aufgabenliste

7/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Layout Vorgangsbearbeitung

8/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Korrelation von eingehenden Dokumenten

• Exakte Zuordnung eines Dokuments zu einem laufendem Vorgang

– Barcode auf Rückantwortschreiben

– Vorgangsnummer als Dokumentmetadatum

• Heuristik

– Wenn keine Vorgangsnummer vorhanden, dann Zuordnung

auf Basis der Einzelvertragsnummer.

• Manuelle Benutzerinteraktionen

9/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Arbeiten mit Dokumenten in Vorgängen

Dokument 1

Dokument 2

Dokument 3

Dokument 4

Funktion Beispiel

Dokument in neuen Vorgang

verschieben

Dokument gehört nicht zum

Vorgang.

z.B. falsche Zuordnung durch

Korrelationsregeln

Dokument in neuen Vorgang

kopieren

Dokument enthält mehrere

Vorgänge, die eine getrennte

Bearbeitung erfordern.

z.B. Multi-GeVo

Dokument in bestehenden

Vorgang verschieben

Dokument gehört zu einem anderen

bestehenden Vorgang.

z.B. Korrektur falsch zugeordneter

Dokumente

Dokument in bestehenden

Vorgang kopieren

Dokument enthält Informationen zu

mehreren laufenden Vorgängen

Hinweis: Es wird nur mit Dokument-Referenzen gearbeitet.

10/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Dokumente verschieben

1. Dokument in bestehenden

Vorgang verschieben

2. Dokument in bestehenden

Vorgang verschieben und

eigenen Vorgang beenden

(Spezialfall von Variante 1)

3. Dokument in neuen Vorgang

verschieben

Vorgang 1 / D1, D2 Vorgang 1 / D1

Vorgang 2 / D2

Vorgang 1 / D1

Vorgang 2 / D1, D2 Vorgang 2 / D2

Vorgang 1 / D1, D2 Vorgang 1 / D2

Vorgang 2 / D1, D3, D4 Vorgang 2 / D3, D4

11/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Vorgang 1 / D1, D2 Vorgang 1 / D1, D2

Vorgang 2 / D2

Dokumente kopieren

1. Dokument in bestehenden

Vorgang kopieren

2. Dokument in neuen

Vorgang kopieren

Vorgang 1 / D1, D2 Vorgang 1 / D1, D2

Vorgang 2 / D2, D3, D4 Vorgang 2 / D3, D4

12/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Vorgangskorrelation in BPMN

13/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Testscopes

http://docs.camunda.org/latest/guides/user-guide/#testing

14/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

bpmn-assert

• Community Extension

– https://github.com/camunda/camunda-bpm-assert

• Assertions

– for process instances: isActive, isEnded, isNotEnded, isStarted, …

– for tasks: isAssignedTo, isNotAssigned, hasCandidateGroup, hasDefinitionKey, hasDescription,

hasDueDate, hasId, hasName

– …

• Helper

– Claiming / Unclaiming tasks

– Completing tasks

– Sending messages

– …

15/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Beispiel

assertThat(processInstance)

.isStarted()

.task()

.hasDefinitionKey("edit")

.hasCandidateGroup(

"SB-Personal")

.isNotAssigned();

16/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Testfälle Vorgangskorrelation

1. Korrelation nicht möglich sowie ohne neue Zuordnung

2. Korrelation nicht möglich mit einer neuen Zuordnung

3. Korrelation möglich dann Korrelation Nicht Erfolgreich

4. Korrelation möglich dann Korrelation Erfolgreich

17/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Testfall 1 „korrelationNichtMoeglich_ohneNeueZuordnung“

18/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Testfall 3 „korrelationMoeglich_dann_KorrelationNichtErfolgreich“

19/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Testfall 4 „korrelationMoeglich_dann_KorrelationErfolgreich“

20/25 | Camunda Community Meeting | Vom Dokument zum Workflow | 09.06.2015

Code und Demo

• Umsetzung Testfälle für „Scope 2“

• Nutzung von camunda-bpm-assert

• Arquillian Variante

– http://arquillian.org/

– Shrinkwrap zur Erstellung des WAR

– Automatisiertes Deployment auf laufender Jboss Instanz

– Starten mittels JUnit

– Ausführung der Testfälle auf dem Server

• Mockito Variante

– http://mockito.org/

– Mock und Helper Klassen von Camunda: ProcessEngineRule, Deployment und Mocks

– Starten mittels JUnit

– Lokale Ausführung der Testfälle

Lars Orta

+49 89 614551 – 0

Lars.Orta@iteratec.de

iteratec GmbH

Inselkammerstrasse 4

82008 München-Unterhaching

Michael Karas

+49 89 38109 – 0

Michael.Karas@swisslife.de

Swiss Life AG, Niederlassung für Deutschland

Zeppelinstraße 1

85748 Garching b. München

Vielen Dank für Ihre

Aufmerksamkeit

top related