Your SlideShare is downloading. ×
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
881
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
26
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Agiles BPM – Wo geht die Reise hin?Agiles BPM – Wo geht die Reise hin? Bernd Rücker, camunda services GmbH
  • 2. This are receycled slides, sorry! But check out the screencast ofBut check out the screencast of Jakobs presentation in Potsdam: http://www.bpm-guide.de/2010/10/15/bpmn-2010/
  • 3. Your Business camunda Business Consulting Camunda is a small BPM consulting companyCamunda is a small BPM consulting company • BPM • BPMN • Agile • BRM Your Process Application Your Process Application Your Process Application camunda IT Consulting
  • 4. Aktuelle TrendsAktuelle Trends 09/2009 Quelle: BPM-Netzwerk.de x2 07/2010 x1,6
  • 5. Über 80 Neukunden in zwei JahrenÜber 80 Neukunden in zwei Jahren
  • 6. Prozessmodelle für verschiedenste Zwecke und RollenProzessmodelle für verschiedenste Zwecke und Rollen ISO-Zertifizierung Mindestanforderungen Für Risiko-Management (MARisk) Organisationshandbuch Workflow Management Serviceorientierte Architekturen (SOA) Schriftlich fixierte Ordnung Prozessanalyse und -verbesserung Automatisierung Anforderungs- management
  • 7. Bereitstellung von DSL-Anschlüssen Aus- und Umbau des Mobilfunknetzes Regulierung von Schäden (Kfz, Hausrat etc.) Vertrieb von Darlehen Vertrieb von Medikamenten Exemplarische Themen und ProzesseExemplarische Themen und Prozesse Logistische Abwicklung von Waren und Fertigungserzeugnissen Prüf- und Genehmigungsverfahren (ÖD) Rechnungseingangsbearbeitung Angebotserstellung und -nachverfolgung … und die Klassiker: Reisen, Urlaub, Fortbildung, Helpdesk etc.
  • 8. Leben und leben lassen…Leben und leben lassen… We value… • Developer-Friendliness over Zero Coding • Smart Communication over Single-Source-Models • Composite Architectures over one-stop-shops • Open Source over Out-of-the-Box
  • 9. camunda BPMN-Framework
  • 10. Der logisch-abstrakte AblaufDer logisch-abstrakte Ablauf Branche: Verlagswesen Tool: Signavio Process Editor
  • 11. Der physisch-konkrete AblaufDer physisch-konkrete Ablauf Branche: Verlagswesen Tool: Signavio Process Editor
  • 12. Kerngedanke #1: Brüche nach oben verlagern Ebene 2 Operatives Prozessmodell Ebene 1 Strategisches Prozessmodell Prozesslandschaft Inhalt: Prozess im Überblick Ziel: Schnelles Verständnis Inhalt: Operative Abläufe Ziel: Arbeits- und UmsetzungsgrundlageFachlich (Business) Ebene 3a Technisches Prozessmodell Ebene 3b IT-Spezifikation Ebene 4b Implementierung Inhalt: Technische Details Ziel: Umsetzung (Business) Technisch (IT) Mit Process Engine Ohne Process Engine
  • 13. Business vs. IT? It‘s NOT that simple!Business vs. IT? It‘s NOT that simple! Project Lead •Manages the project •Creates/Manages typical project documents •Represents user •Knows the solution‘s •Creates Process Models •Links Process Models with other Requirements •Knows BPMN Best (in Business) •Creates Technical Processes etc. •Plays the main part in process solution development •Knows BPMN best (in IT) •Defines Guidelines •Is expert in certain aspect (e.g. GUI) •Supports Process Engineer if needed •Creates services / components used in process by plain development Business IT Domain Expert Process Analyst Process Engineer Developer Architect •Knows the solution‘s purpose best •Can answer any question about functionality •Defines Guidelines •Is somehow useful :-)
  • 14. Next Slides are based on BPMN 2.0 by ExampleNext Slides are based on BPMN 2.0 by Example BPMN 2.0 by Example http://www.omg.org/cgi-bin/doc?dtc/10-06-02 Activiti Showcase http://www.bpm-guide.de/activiti/
  • 15. This is directly executable BPMN 2.0This is directly executable BPMN 2.0
  • 16. Some Details depend on your BPM platformSome Details depend on your BPM platform
  • 17. <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <definitions id="oryx_c6b54c98-e3e8-44aa-8745-1f092b3150b6" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.omg.org/bpmn20" xmlns="http://schema.omg.org/spec/BPMN/2.0" xmlns:bpmndi="http://bpmndi.org"> <process isClosed="false" processType="executable" id="oryx_45eeff22-1e3f-4543-be07-084ea7cfd0b7"> <laneSet name="Process Engine" id="Process Engine"> <lane name="1st level support" id="1st level support_1"> <flowElementRef>Handle Problem [ID: ${issueID}]: ${issueTitle}_2</flowElementRef> <flowElementRef>Is issue resolved?_2</flowElementRef> <flowElementRef>issue reported_2</flowElementRef> <flowElementRef>Send an email back to the Call Center Agent_2</flowElementRef> <flowElementRef>ticket closed_2</flowElementRef> <flowElementRef>Send a confirmation email back to the Call Center Agent_2</flowElementRef> <flowElementRef>Set the issue classifciation_2</flowElementRef> </lane> <lane name="2snd level support" id="2snd level support_1"> <flowElementRef>Task Finished_2</flowElementRef> <flowElementRef>Edit Ticket from Level 1 [ID: ${issueID}]: ${issueTitle}_2</flowElementRef> <flowElementRef>Is issue now resolved?_2</flowElementRef> <flowElementRef>Insert issue into product backlog_2</flowElementRef> </lane> </laneSet> <userTask implementation="webService" completionQuantity="1" startQuantity="1" isForCompensation="false" name="Handle Problem [ID: ${issueID}]: ${issueTitle}" id="Handle Problem [ID: ${issueID}]: ${issueTitle}_2"/> <exclusiveGateway gatewayDirection="Diverging" name="Is issue resolved?" id="Is issue resolved?_2"/> <startEvent isInterrupting="true" name="issue reported" id="issue reported_2"> <messageEventDefinition/> </startEvent> <sendTask implementation="webService" completionQuantity="1" startQuantity="1" isForCompensation="false" name="Send an email back to the Call Center Agent" id="Send an email back to the Call Center Agent_2"/> <endEvent name="ticket closed" id="ticket closed_2"/> <sendTask implementation="webService" completionQuantity="1" startQuantity="1" isForCompensation="false" name="Send a confirmation email back to the Call Center Agent" id="Send a confirmation email back to the Call Center Agent_2"/> The corresponding BPMN 2.0 - XMLThe corresponding BPMN 2.0 - XML id="Send a confirmation email back to the Call Center Agent_2"/> <scriptTask scriptLanguage="" completionQuantity="1" startQuantity="1" isForCompensation="false" name="Set the issue classifciation" id="Set the issue classifciation_2"> <script></script> </scriptTask> <message isInitiating="true" name="Task Finished" id="Task Finished_2"/> <userTask implementation="webService" completionQuantity="1" startQuantity="1" isForCompensation="false" name="Edit Ticket from Level 1 [ID: ${issueID}]: ${issueTitle}" id="Edit Ticket from Level 1 [ID: ${issueID}]: ${issueTitle}_2"/> <exclusiveGateway gatewayDirection="Diverging" name="Is issue now resolved?" id="Is issue now resolved?_2"/> <sendTask implementation="webService" completionQuantity="1" startQuantity="1" isForCompensation="false" name="Insert issue into product backlog" id="Insert issue into product backlog_2"/> <sequenceFlow targetRef="Is issue now resolved?_2" sourceRef="Edit Ticket from Level 1 [ID: ${issueID}]: ${issueTitle}_2" name="" id="SequenceFlow_6"/> <sequenceFlow targetRef="ticket closed_2" sourceRef="Send an email back to the Call Center Agent_2" name="" id="SequenceFlow_5"/> <sequenceFlow targetRef="Send a confirmation email back to the Call Center Agent_2" sourceRef="issue reported_2" name="" id="SequenceFlow_3"/> <sequenceFlow targetRef="Handle Problem [ID: ${issueID}]: ${issueTitle}_2" sourceRef="Send a confirmation email back to the Call Center Agent_2" name="" id="SequenceFlow_7"/> <sequenceFlow targetRef="Set the issue classifciation_2" sourceRef="Handle Problem [ID: ${issueID}]: ${issueTitle}_2" name="" id="SequenceFlow_9"/> <sequenceFlow targetRef="Is issue resolved?_2" sourceRef="Set the issue classifciation_2" name="" id="SequenceFlow"/> <sequenceFlow targetRef="Send an email back to the Call Center Agent_2" sourceRef="Insert issue into product backlog_2" name="" id="SequenceFlow_4"/> <sequenceFlow targetRef="Send an email back to the Call Center Agent_2" sourceRef="Is issue resolved?_2" name="" id="SequenceFlow_10"> <conditionExpression xsi:type="tFormalExpression" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">${issueResolved}</conditionExpression> </sequenceFlow> <sequenceFlow targetRef="Edit Ticket from Level 1 [ID: ${issueID}]: ${issueTitle}_2" sourceRef="Is issue resolved?_2" name="" id="SequenceFlow_8"> <conditionExpression xsi:type="tFormalExpression" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">${!issueResolved}</conditionExpression> </sequenceFlow> <sequenceFlow targetRef="Insert issue into product backlog_2" sourceRef="Is issue now resolved?_2" name="" id="SequenceFlow_1"> <conditionExpression xsi:type="tFormalExpression" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">${!issueResolved}</conditionExpression> </sequenceFlow> <sequenceFlow targetRef="Send an email back to the Call Center Agent_2" sourceRef="Is issue now resolved?_2" name="" id="SequenceFlow_2"> <conditionExpression xsi:type="tFormalExpression" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">${issueResolved}</conditionExpression> </sequenceFlow> </process> </definitions>
  • 18. Business-IT-Alignment with executable models?Business-IT-Alignment with executable models? And what are those But there are parts of the process (that concern me) missing! Yes but those parts won‘t be executed by the engine. I cannot Here‘s your to-be- process, ready to deploy. Could you please approve? Huh, looks complicated! Where is the part that‘s my business? Ehm, it‘s here. And there. And over there. Well somehow, half of that is somone else‘s todo. And some steps and decisions are completely automated. Ah, F*** Y**! Inconti-what!? This is just your coding again, and not my process! I won‘t approve this. Yes but we need those steps. Otherwise we will get data inconsistencies in the process context. And what are those steps for then? Nobody specified them! the engine. I cannot model them, they‘d break the technical flow. Call Center Agent IT
  • 19. This what the Call Center Agent is really interested inThis what the Call Center Agent is really interested in • What do I have to do? • Who is the one I must interact with? • How do I work with the system? • What are my concerns?
  • 20. The User and the Solution collaborateThe User and the Solution collaborate
  • 21. It‘s all about collaboration!It‘s all about collaboration! Process Engine Process participants Domain Expert Process Engineer Engine Process Analyst Domain Expert Domain Expert Domain Expert
  • 22. Kerngedanke #2: Verschiedene Sichten auf Ebene 2 Process Participant Process Analyst Process EngineerBetrachter „Wie muss ich arbeiten?“ „Wie wird gearbeitet?“ „Was macht die Engine?“ Zentrale Frage Eigene Orchestrierung Gesamte Kollaboration Orchestrierung der Process Engine Sicht Ebene 2: Operatives Prozessmodell
  • 23. Kundenbeispiel: ReisemanagementKundenbeispiel: Reisemanagement Branche: Schwerindustrie Tool: SAP Netweaver CE 7.2
  • 24. Kundenbeispiel: StromzählerwartungKundenbeispiel: Stromzählerwartung Branche: Energieversorger Tool: inubit BPM-Suite
  • 25. Tool-Unterstützung am Beispiel SignavioTool-Unterstützung am Beispiel Signavio
  • 26. Tool-Unterstützung am Beispiel SignavioTool-Unterstützung am Beispiel Signavio
  • 27. IT-Projekt vs. Prozess-ProjektIT-Projekt vs. Prozess-Projekt
  • 28. Activiti (Open Source BPM Platform), an european projectActiviti (Open Source BPM Platform), an european project
  • 29. Activiti CycleCycleCycleCycle (Contributed by Camunda)Activiti CycleCycleCycleCycle (Contributed by Camunda)
  • 30. Example: Forward EngineeringExample: Forward Engineering Beispiele: • Maven Multi-Module-Project erzeugen • Prozess zur Ausführbarkeit validieren
  • 31. Example: Conventions or ValidationsExample: Conventions or Validations
  • 32. Also der „Glue“ zwischen Ebene 2 und 3Also der „Glue“ zwischen Ebene 2 und 3 Signavio / Activiti Modeler / Oryx JBoss jBPM / Activiti / Bonita Activiti CycleBusiness-IT-Glue
  • 33. Der Prozess im Zentrum der AnforderungenDer Prozess im Zentrum der Anforderungen GUI Daten Prozess Regeln Tests Funktio- nalität NFRs
  • 34. Bsp: Prozessmodell mit JIRA koppelnBsp: Prozessmodell mit JIRA koppeln
  • 35. Hands-on-Collaboration: BPMN-Diagrams in JIRAHands-on-Collaboration: BPMN-Diagrams in JIRA
  • 36. Alternative: Use casesAlternative: Use cases
  • 37. But where is the process?But where is the process?
  • 38. Den Entwicklungsfortschritt visualisierenDen Entwicklungsfortschritt visualisieren
  • 39. Agile!Agile!
  • 40. Wir machen uns Gedanken – Sie auch?Wir machen uns Gedanken – Sie auch? I wish… I like… I want…I hate… I think… I need… I ask…I mean… I … I suck… BPM-Netzwerk.de Test.BPMN.info BPMB.de camunda.com
  • 41. Let‘s skip the peak and the trough!Let‘s skip the peak and the trough! As-Is To-Be
  • 42. Vielen Dank für Ihre Aufmerksamkeit!Vielen Dank für Ihre Aufmerksamkeit!
  • 43. Vielen Dank!Vielen Dank! camunda services GmbH Zossener Str. 55-58 10961 Berlin Telefon: +49 30 664 0409-00 Telefax: +49 30 664 0409-29 Email: info@camunda.com www.bpm-guide.de Der Praxis-Blog zu BPM: @camunda.com Geschäftsführer Bernd Rücker bernd.ruecker Fachgruppe IT-PM Stuttgart, 29.10.2010

×