BPM & SOA - Prozesse sind keine Workflows

  • View
    3.573

  • Download
    4

  • Category

    Business

Preview:

DESCRIPTION

Vortrag von der W-Jax 2008, München

Citation preview

BPM & SOA

Bernds Teil

W-JAX

04.11.2008

bernd.ruecker@camunda.com

1. Fraktionen und Visionen

2. Aktueller Stand in der Praxis

3. Konkrete Perspektiven

BPM & SOAAgenda

Was ist BPM?

AblauforganisationBusiness Process

Reengineering - BPR

(Orga-) Geschäftsprozess-

Management - GPM

Human

Workflow Management

Serviceorientierte

Architekturen (SOA)

Dokumenten-Management –

Systeme – DMS (u.a.)Enterprise Appliation Integration –

EAI

Organisationslehre

bis 19901990 - 2000 ab 2000

ab 2004

ab 2000 ab 2005

Business Process Management - BPMBusiness

IT

Prozessautomatisierung

ab 2006

Begriffsproblem

Orga + IT = BPMBegriffsproblem

Organisationslehre

Informationstechnologie

Strategisches

Prozessmanagement Prozessmodellierung

Prozessanalyse Prozessoptimierung

Human Workflow

ManagementEAI/SOA

Steuerung /

Business RulesMonitoring/Reporting

Prozessorganisation

Business Process Management

Aktuelle AmbitionenDer BPM-Kreislauf

Prozess-

implementierung

Prozess-

entwurf

Prozess-

controlling

KVP

Prozess-

Strategie

Business

IT

Business

Der Traum der Magic BPM-SuiteDer BPM-Kreislauf

Modelling Monitoring

EAI / SOAHuman Workflow

Business

IT

Magic BPM-Suite

1. Fraktionen und Visionen

2. Aktueller Stand in der Praxis

3. Konkrete Perspektiven

BPM & SOAAgenda

Gemeinsame SpracheWas ist mit BPM heute schon erreichbar?

Konkreter Ansatz: BPMN + BPELGemeinsame Sprache

BPMN

BPEL

BPMN: Business Process Modeling Notation

BPD: Business Process Diagram

BPEL: Business Process Execution Language

• (B)PEL ist „nur“ eine Programmiersprache

• In der Praxis heute kein Roundtrip möglich

• BPEL-Rumpf ist nur rudimentär

• Fehlendes Metamodell in BPMN

• BPMN-BPEL-Mapping nicht standardisiert.

• Vergleich: MDA?

BPMN + BPELGemeinsame Sprache

BPMN

BPEL

BPMN + BPEL = gemeinsame Sprache?

• Human Task Management (BPEL4People) noch

neu

• BPEL ist blockorientiert

• Umfangreiches Know-How notwendig (BPEL, XML,

XML-Schema, XPath, XSLT, WSDL, WS-*, …)

• Skills fehlen in Projekten heute

• Tools sind notwendig

• XML-Programmiersprache, kein BPM

• Aber: Jeder redet darüber

Kritik BPELGemeinsame Sprache

• Bei Orchestrierung heterogener Services zu neuen

Services durchaus geeignet

• Bei Entwicklung „prozessorientierter“ Anwendung

vielleicht eher (noch?) nicht

Use Case BPELGemeinsame Sprache

Service AService B

Service C

BPEL

Prozess 1

BPEL

Prozess 2

Service D

Service E

XPDL – XML Process Definition LanguageGemeinsame Sprache

<Activity Id=“xxx" Name="plan part. production">

<Description>Make plan assuming OK to partial-

ship</Description>

<Implementation>

<Tool Id="Application_Repository_App4" Type="APPLICATION"/>

</Implementation>

<Performer>Participant_Repository_Par12</Performer>

<ExtendedAttributes>

<ExtendedAttribute Name="XOffset" Value="397"/>

<ExtendedAttribute Name="YOffset" Value="29"/>

<ExtendedAttribute Name="VariableToProcess_OUT"

Value="No_Of_Items_To_Produce"/>

<ExtendedAttribute Name="VariableToProcess_IN"

Value="Order_Quantity"/>

<ExtendedAttribute Name="VariableToProcess_IN"

Value="No_Of_Stocked_Items"/>

</ExtendedAttributes>

</Activity>

• WfMC-Standard, Aktuell Version 2.0

• Gerichteter Graph (Activities & Transitions)

• Extension-Points

• Systemanbindung durch „Application Repository“

• Verschiedene Tools können XPDL-Prozess unterschiedlich verarbeiten

• Verschiedene Implementierungen grafischer Editoren und Process Engines existieren

• Nur die Prozessstruktur ist portabel!

• XPDL fokussiert Austauschformat für Prozessdiagramme (evtl. für BPMN?)

XPDLGemeinsame Sprache

XPDL = gemeinsame Sprache?

JBoss jBPM jPDL (proprietär)Gemeinsame Sprache

• Pragmatische Workflowengine („Graph orientedprogramming“) incl. Human-Task-Management

• Java orientiert

• Kann in jeder Umgebung zum Einsatz kommen (einfache Java-Library), keine Speicher- oder Performance-Probleme

• Prozessdiagramm und „Prozesscode“ immer synchronisiert, da single-source.

• Prozessdiagramm begrenzt Fachanwendertauglich

• Kein Standard!

• jBPM 4: Process Virtual Machine wird mehrere Sprachen unterstützen, auch MDSD

jBPM – „Java oriented BPM“Gemeinsame Sprache

jPDL = gemeinsame Sprache?

Prozessorientierung in den Köpfen der UserGemeinsame Sprache

Andere proprietäre Ansätze…Gemeinsame Sprache

Bsp: Inubit IS, 2007

Ach ja: GP-Modellierung mit UML?Gemeinsame Sprache

Shared Metadata-RepositoryVisionen

Prozesslandkarte Prozessdiagramm Dokumentation

Execution

Prozessmodell

Regeln

Parameter

„Zero Code“-AnsätzeVisionen

BPMN

Process

Engine

Ansätze

• Anforderungsmanagement +

• Executable Model (z.B. BPMN)

– Generierung von Software (MDSD) o

– Generierung von Workflow (BPEL) -

– Direkte Ausführung (executable BPMN) -

• Verknüpfung fachlicher & technischer Modelle +

Aber: Vieles ist Gegenstand aktueller Forschung

Vom Prozess zum WorkflowWas ist heute schon erreichbar?

• Weit weg von Magic Process Engine oder

Prozessimplementierung durch Business Analyst

• Aber wiederverwendbare Business Process

Engines bieten

– Basis-Dienste: Persistenz, Prozess-Versionierung,

Logging, Timeouts, …

– Zusätzliche Funktionalität wie Analyse (BAM) oder

Simulation (BPS)

– Technisches Monitoring

• Vorfertigungsgrad hoch für

– Human Tasks: Generische Tasklisten & Formulareditoren

– Service-Orchestrierung & Konnektoren

Ist das alles hilfreich?Status Quo / Praxisansätze

EJB-Container (oder Tomcat oder Java SE)

Session

Bean

JCA JMSEJB

WS

WS

EJB-Container

JMS, …EJB

.NET Human

Task

Mgmnt

WS WS WS

WS

Ein Wort zur TechnikBPM: Die IT-Seite

Java

jBPM (jPDL)

BPEL-Server

Human

Task

Mgmnt

• Verständnis für IT-BPM reift prinzipiell heran

• Problematische Grundhaltungen:

– „Ich will nicht wissen, wie die IT es macht, ich will wissen,

dass sie es macht“

– „Das wird mir jetzt zu technisch“

– „Prozessmodellierung ist Fleißarbeit“

– „Hauptsache, der Betrachter versteht das Prozessmodell“

• Einige Erkenntnisse sind noch nicht angekommen

(z.B. Problematik der Verfeinerung von

Prozessmodellen)

• Aber: Die Bereitschaft zur Veränderung ist mehr und

mehr vorhanden

Status quo im BusinessAktueller Stand in der Praxis

1. Fraktionen und Visionen

2. Aktueller Stand in der Praxis

3. Konkrete Perspektiven

BPM & SOAAgenda

Service ≠ Service ≠ ServiceDas eigentliche Problem

In Anlehnung an:

Prof. Dr. Robert Winter, Institut für Wirtschaftsinformatik, Universität St. Gallen

SOPA: SOA* auf Prozessebene

SOIA: SOA auf Integrationsebene

SOSA: SOA auf Software-Ebene

1-2 Jahre

3-6 Monate

6-10 Jahre

*SOA = Serviceorientierte Architekturen

Strategie

Organisation

Software

Infrastruktur

Integration Task

Zuweisung

Service

Aufruf

Task

Zuweisung

IT

Process Engine

Es entstehen neue BerufsbilderPerspektiven

Sp

ea

ke

r

Thema

festlegenBrainstorming

Fließtext

erarbeiten

2 Stunden

Management Development

Process Analyst Process Engineer

Aktuelle Problemstellung• Ausfälle im Prozessbetrieb (Stillstände etc.)

• Fachliche Prozessbetreuer müssen in BPEL modellieren

• Schlechte fachliche Unterstützung des Prozessbetriebs

• Fachliches Prozessmanagement völlig entkoppelt von IT-BPM

Lösungsansätze• Aufsetzen sauberer technischer Architektur

• Einführung eines einheitlichen Modellierungsframeworks für die

fachlich-technische Kommunikation

• Verbesserung der SLA-Überwachung (z.B. Push statt Pull)

• Definition von Rollen und Gremien für die fachlich-technische

Zusammenarbeit (z.B. BPM-Board)

Ganzheitliches BPM in der PraxisAktuelle Projekterfahrung

FALSCHER ANSATZ• Krampfhaft versuchen, technische Workflows aus fachlichen

Prozessmodellen zu generieren

• Standards als „heilige Sandale“

RICHTIGER ANSATZ Neue BPM-Methoden (und ggf. Tools) zur Kommunikation

zwischen Business und IT nutzen.

Punktuelle Anpassungen durch Business ermöglichen (speziell:

Business Rules)

Fachliche Prozessmonitoring- und Reportingfunktionen

aufsetzen und durch das Business konfigurierbar machen

Step-by-Step statt Big Bang

Eigene Kompetenz aufbauen (Coachings, Open Source BPM)

Wie kommen wir mit BPM kurzfristig weiter?Perspektiven

• Kommerzielle Lösung beschaffen

– Pro: Out-of-the-box (?)

– Contra: Große Investition, Abhängigkeit, Risiko

• Auf Open Source entwickeln

– Pro: Klein beginnen, eigenes Know-How aufbauen

– Contra: Entwicklungsressourcen benötigt

• SaaS-Lösung nutzen

– Pro: Grow-as-you-need, schnell und günstig

– Contra: Vertrauen notwendig

Ein Muss: Die BPM-SuitePerspektiven

Es gilt: A fool with a tool is still a fool

Fragen & Antworten

camunda services GmbH

info@camunda.com

www.camunda.com

Unsere Themen

• Ganzheitliches BPM

• Prozessautomatisierung

• SOA, BPEL, XPDL, JBoss SOA Platform (jBPM, Drools, ESB)

• BPMN

• BPM-Toolauswahl

Unsere Leistungen

• Beratung

• Seminare

• Process Hosting

Recommended