28
Modellgetriebene Software-Entwicklung mit BPMN und SOA Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de [email protected] Version: 1.0 Modellgetriebene Software-Entwicklung mit BPMN und SOA Die modellgetriebene Softwareimplementierung (MDSD) betrieblicher Prozesse kombiniert die Qualitäts- und Wartbarkeitsvorteile von modellierter und generierter Software, wird aber oft ob ihrer Kosten und Durchführbarkeit diskutiert. Wenn dann im Rahmen eines modellgetriebenen Implementierungsansatzes aus fachlichen Prozessmodellen in BPMN verwertbare technische Artefakte für eine SOA-basierte Softwaregenerierung erstellt werden können, eröffnet sich ein ökonomisch sinnvoller Lösungsweg. Leider reichen die ursprünglichen Modellierungstechniken der Oracle BPA Suite für eine wirtschaftliche ausnutzbare Softwaregeneration nicht aus. Insbesondere die Themenfelder Userinterface und persistente Daten verschließen sich einer leichten Generierbarkeit aus den existierenden Modelltypen. Die Erweiterbarkeit der BPA-Suite und die enge Integration mit den Konzepten der Laufzeitarchitektur der Oracle SOA Suite 11g erlauben jedoch die erfolgreiche Erweiterung der MDSD mit BPMN und SOA © 2010 Orientation in Objects GmbH Basismodelle mit dem Ziel einer nahezu vollständigen Softwaregenerierung. Der Vortrag stellt in einem Projekt erprobten Modellierungskonzepte für Prozesse, Services, Daten und Benutzeroberflächen vor und berichtet über die Erfahrungen bei deren Umsetzung mit der Oracle SOA Suite 11g. 2

Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

  • Upload
    lythu

  • View
    233

  • Download
    6

Embed Size (px)

Citation preview

Page 1: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

1

Modellgetriebene Software-Entwicklung

mit BPMN und SOA

Orientation in Objects GmbH

Weinheimer Str. 6868309 Mannheim

[email protected]: 1.0

Modellgetriebene Software-Entwicklung mit BPMN und SOA

• Die modellgetriebene Softwareimplementierung (MDSD) betrieblicher Prozesse kombiniert die Qualitäts- und Wartbarkeitsvorteile von modellierter und generierter Software, wird aber oft ob ihrer Kosten und Durchführbarkeit diskutiert. Wenn dann im Rahmen eines modellgetriebenen Implementierungsansatzes aus fachlichen Prozessmodellen in BPMN verwertbare technische Artefakte für eine SOA-basierte Softwaregenerierung erstellt werden können, eröffnet sich ein ökonomisch sinnvoller Lösungsweg. Leider reichen die ursprünglichen Modellierungstechniken der Oracle BPA Suite für eine wirtschaftliche ausnutzbare Softwaregeneration nicht aus. Insbesondere die Themenfelder Userinterface und persistente Daten verschließen sich einer leichten Generierbarkeit aus den existierenden Modelltypen. Die Erweiterbarkeit der BPA-Suite und die enge Integration mit den Konzepten der Laufzeitarchitektur der Oracle SOA Suite 11g erlauben jedoch die erfolgreiche Erweiterung der

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

g j g gBasismodelle mit dem Ziel einer nahezu vollständigen Softwaregenerierung. Der Vortrag stellt in einem Projekt erprobten Modellierungskonzepte für Prozesse, Services, Daten und Benutzeroberflächen vor und berichtet über die Erfahrungen bei deren Umsetzung mit der Oracle SOA Suite 11g.

2

Page 2: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

2

Gliederung

• MDSD meets BPM Vision• Datenmodellierung• ServicemodelleServicemodelle• Human Task Modelle• Prozessmodellierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 3

Gliederung

• MDSD meets BPMN Vision• Datenmodellierung• ServicemodelleServicemodelle• Human Task Modelle• Prozessmodellierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 4

Page 3: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

3

ARIS MDA Approach

OMGModelling Layer Diagramm Syntaxelement

Conceptional(CIM)

Logical(PIM)

Functional Cluster

Application SystemType

VAD, EPCTechnical Terms

BPMNeERM

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Physical(PSM)

5

WSDL/XSDBPEL, WSDLXSD

Modellerstellung: Bottom-up MDSD SOA Approach

• Existing• XSD• WSDL

Technical Data

• Business Model• BPMN

„Share Blueprint“ • SCA-

Composite• BPEL

Technical

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Import Implementation

6

Page 4: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

4

Modellerstellung: Top-down MDSD SOA Approach

Eigenentwicklung

• Business Model• VAD/EPC• eERM, Access

Diagram, …

DatamodelGeneration • Generated

• XSD• WSDL

Consolidation

• Manually linkedartefacts fromBusiness Model

• BPMN

„Share Blueprint“ • SCA-Composite

• BPEL

Technical

g g

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Consolidation Implementation

7

ImplementierungAnalyse

Top Down Analysis vs. Bottom Up Implementation

Processes Data/Services

UserinterfacesScreen Design

Screen Navigation

VAC EPC BPMN

UserinterfacesSDL

XAML/XAP SNL

XSD WSDL

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Data/ServicesTechnical Services eERM

Processes

BPEL

8

Page 5: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

5

Oracle BPA Suite 11g Oracle SOA Suite 11g

Oracle BPA Suite Übersicht

Business Process Architect JDeveloperp

ShareBlueprint Deploy

Import

Manage

Plugin

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 9

BusinessProcess

Repository

WeblogicServer

Refresh fromBPA Server

Oracle SOA Suite Laufzeitarchitektur

Oracle Weblogic Server

Oracle Service Bus

SCA Runtime

ServiceMediator

BPELEngine

WorklistApplication

JEE Web EJB 3

ADF EJBService

Rules Engine

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 10

BPELProcess

Notifications

Messaging JAX WS

JTA JPA

JDBCJNDI

Page 6: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

6

Laufzeitschichten der Anwendung

• GUI-LevelBrowser

DomainService 2

DomainService 1

ProcessService

Data AccessData Access Data AccessData Access

e.g. Invoice service

e.g. Order process

• Process-LevelBPEL-Engine

• Domain-LevelJEE Server

• Data Access Level

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Data AccessService 1

Data AccessService 2

e.g. Customer e.g. Invoice

• Data Access-LevelOracle Mediator, JDBC, …

• Persistence-LevelRDBMS

Development Vision

ARIS Artefakte & GenerateProcess XSD WSDL SNL

1. Prozessmodell – Blue Print

2. Datentyp als XML Schema

SDL

JDev

2233

44 3 Szenarien (Screen Navigation)• ADF > JDeveloper• Cocoon > Eclipse• Silverlight > Visual Studio

55

Schema3. Servicedefinition als

WSDL4. Technische

Implementierung in JDeveloper

5. Navigationscontroller6. Defintion der ScreensScreen Application

6611

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Build & Deployment Approach

Rules77

7. Business Rules8. Build & Deployment

Sc ee pp cat oSilverlight

(SDL > XAML)

12

88

Page 7: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

7

Gliederung

• MDSD meets BPMN Vision• Datenmodellierung• ServicemodelleServicemodelle• Human Task Modelle• Prozessmodellierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 13

Mögliche Generierungspunkte für Datenobjekte

Business ObjectDO

DomainService 2

DomainService 1

ProcessService

Data AccessData Access Data AccessData Access

e.g. findInvoicesByCustomer(..)

DO XSD

DO

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Data AccessService 1 Service 2

e.g. findCustomerByUID(..) e.g. findInvoicesByCustomerUID(..)

Java-Klassen Konverter

DO

Page 8: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

8

XSD Generierung

XSDEntity type

D attribute (ERM) ERM domain

Address Address

Generierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 15

D attribute (ERM)

D attribute (ERM)

D attribute (ERM)

ERM domain

ERM domain

ERM domain

XSD import

Order

OrderItems

XSD import

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 16

«xsdComplexType»http://www.globalcompany.com/ns/order::OrderInfoType«xsdElement» OrderDate: date[0..1]«xsdElement» OrderPrice: decimal[0..1]«xsdElement» OrderStatus: string[0..1]«xsdElement» OrderComments: string[0..1]«xsdElement» ApprovalRequired: boolean[0..1]

Tagged Values:maxOccurs = 1minOccurs = 1modelGroup = sequence

«xsdComplexType»http://www.globalcompany.com/ns/order::ItemType«xsdElement» ProductName: string[0..1]«xsdElement» itemType: string[0..1]«xsdElement» partnum: string[0..1]«xsdElement» price: decimal[0..1]«xsdElement» Quantity: decimal[0..1]

Tagged Values:maxOccurs = 1minOccurs = 1modelGroup = sequence

Page 9: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

9

XML / Java Binding durch JAXB

Klasse Schema1 1

JAXB* **

1 1

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 17

Objekte Dokumente DokumenteObjekte 1 1Objekte Dokumente

JAXB Anwendungsszenario

SchemabasierteKlassen

und InterfacesBindingXML

Compile Time

AnwendungObjekte

gCompilerSchema

Runtime

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 18

XMLDokumente

JAXBAPImarshal

unmarshal

Page 10: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

10

Vision der Integration: Generierung der Persistenz aus kanonischem Modell

Legacy ModelUML

ARISBPA Suite - UML

ProprietaryFormat

Pd-entity.xml

Entity.xml

ARIS ExtensionGenerierung

Entity.xsdXSLT

Transformation

ERM VB-ScriptGenerierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

JPA

EJB 3.x Hibernate

.Net SDOEJB 2.0

IstVision

EJB 3.x …

Problem: Data Service Silos innerhalb der SOA

• Geschäftsobjekte überspannen mehrere Silos• Modellierte Geschäftsobjekte, die real nicht existieren• Performance bei Relationen zwischen ObjektenPerformance bei Relationen zwischen Objekten• Analyse für Generierung oft nicht detailliert genug

ESB

Adapter Adapter Adapter Adapter Adapter Adapter Adapter

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Andere Services Beschaffung Logistik

Page 11: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

11

Gliederung

• MDSD meets BPMN Vision• Datenmodellierung• ServicemodelleServicemodelle• Human Task Modelle• Prozessmodellierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 21

Mögliche Generierungspunkte für Services

Software Service

DomainService 2

DomainService 1

ProcessService

Data AccessData Access Data AccessData Access

e.g. Invoice service

e.g. Order process

WSDL

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Data AccessService 1

Data AccessService 2

Service- & Client-Impl.

Page 12: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

12

MDA Approach for SOA

CIM

Business ServiceMap

Batch_Information IS function

PIM

CBusiness Service

Model

Software ServiceService

BusinessService Business

service

Batch_Information

Businessservice

Batch_Information

IS function

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 23

PSM

WSDL/XSD

read

Example: WSDL-Generierung aus Access Diagramm

Validate Credit

CreditService

CreditService

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 24

Page 13: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

13

Web Service Architektur

Service Endpoint Definition (WSDL)Service Endpoint Definition (WSDL)

request / response

import publish

Web ServiceClient

Web ServiceClient

Web ServiceEndpoint

Web ServiceEndpoint

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 25

SOAPSOAPHTTPHTTP

artifacts artifacts

Web Service Generierung „Contract Driven“

Service Endpoint Definition (WSDL)Service Endpoint Definition (WSDL)

Code Generator

JAX-WS

Code Generator

JAX-WS

Service Service

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 26

ImplementierungImplementierung

Client

Proxy

Servlet Engine

Proxy

Page 14: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

14

Deployment eines Web Service in JEE 5

Oracle Weblogic Server

JEE Web EJB 3

@WebServiceClass BookService

BookWeb Application

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 27

JAX WS

WSDL 2 Java

WSDL Java

wsdl:definitions Package@targetNamespace Package

wsdl:portType Interface @WebService

wsdl:operation Methode @WebMethod

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 28

wsdl:fault Exception @WebFault

Page 15: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

15

WSDL 2 Java - Client

WSDL Java

wsdl:serviceErbt von javax.xml.ws.ServiceServicename ist Klassenname@WebServiceClient

wsdl:port "Proxy" getPortname()@WebEndpoint

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 29

Beispiel Schichtenbildung von Services und Prozessen

BPEL EngineBeschaffunfgs-PService

Bestandsprüfungs-PService

Oracle Service Bus

BANF-PService

Buchungs-PService

EJB 3.x Container (WLS)ManageBANF DServiceManageBANF-DService

Oracle Service Bus

Bestellungs-DService

Legacy Container

ContainerRMIService

MaterialDB

BANF-BService

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Externe Services

ProductService Warenhaus

ContainerService CalendarServiceCalendarService

BANF BService

Bestellung BServiceBestellung-BService

Entität 1 Entität 2

Beschaffung DB

30

Page 16: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

16

Gliederung

• MDSD meets BPMN Vision• Datenmodellierung• ServicemodelleServicemodelle• Human Task Modelle• Prozessmodellierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 31

Mögliche Generierungspunkte für das UI

Screen Screen Navigation

DomainService 2

DomainService 1

ProcessService

Data AccessData Access Data AccessData Access

SDL SNL

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Data AccessService 1

Data AccessService 2

XAML

Page 17: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

17

JEE

Anbindung der Oracle Worklist /Verarbeitung von Human Tasks

Oracle PMBPEL

Process UIWebframework

Task completeAssign task

DomainServices

APIAPI

Silverlight

APIAPI

DomainWorklist

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Worklist Services

HumanTasks

Human Task Clients als Mini-Applikation

• Silverlight XAPs als Mini-Applikation– Bearbeitung eines einzelnen Human Task

• Wiederverwendung als ZielSil li ht A li ti

g– Screens in verschiedenen HTs– Mini-Applikationen als HTs

• Schwierigkeiten– Granularität der Screens

Silverlight Web

Silverlight ApplicationScreen 1

Screen 2

Screen 3

miniapp.xap

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Navigation ControllerNavigation 1.snl

web-application.war

ServiceFacade

DService 1 DService 2services.ear

Page 18: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

18

Generierung von Screens und Navigationen

• Ziel: Modelle in ARIS um Screens und Navigationen zu generieren– Spezifische Modelltypen für UI und Navigation– Templates im Modell (Suche, Eingabe, Master-Detail, ...)p ( g )

• Screen Design– Generierung nach SDL (Screen Definition Language)– Spezifikation einzelner Screens– Transformation nach XAML möglich (XSLT)

• Screen Navigation– Generierung nach SNL (Screen Navigation Language)– Spezifikation von Screen Flows für einen einzelnen Human Task

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Spezifikation von Screen Flows für einen einzelnen Human Task– Verarbeitung über Framework oder Service möglich

• Beides sind eigene, proprietäre Formate– Sollten nicht direkt an potentielle Zielplattform (Silverlight) binden

Beispielmodell Screen

• Screen Model– Container– Komponenten– Binding auf DO

• View Objects als eERM (spezielles Mappingmodell)

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 36

Page 19: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

19

Schwierigkeiten in Bezug auf die Screenmodelle

• Screen Metamodell war initial technisch unterspezifiziert– Fehlende Data-Mappings– Screen Behaviour

• Metamodell im Projektverlauf angereichert um– Data Mapping

Abbildungsinformation des View Object auf das kanonische Modell in ARIS

– ActionsModellierung von Servicecalls im UI (z.B. in Tabellen)

• Sperrige und relativ starre UI durch Templates

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

– Vorteil für Generierung– Nachteil für Endbenutzer– Begrenzte Mächtigkeit der SDL

37

Beispielmodell Screen Navigation

• Technisch unterspezifiziert• Wurden angereichert um:

– “Start” Navigation

• Pfadmöglichkeiten im Netzerfordern zustandsbehaftetenController / Serviceg

– “End” Navigation • Transitionen nur über hier

sichtbare Controls

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 38

Page 20: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

20

Gliederung

• MDSD meets BPMN Vision• Datenmodellierung• ServicemodelleServicemodelle• Human Task Modelle• Prozessmodellierung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 39

Mögliche Generierungspunkte für Prozesse

BPMN

DomainService 2

DomainService 1

ProcessService

Data AccessData Access Data AccessData Access

e.g. Order process

BPEL

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

Data AccessService 1

Data AccessService 2

Page 21: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

21

Beispiel Process Map Beschaffung

BestellungBestellungSAPBestellanfrage

Reklamation

Bestellung Wareneingang

SAP

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 41

Löschung

Bestands-kontrolle

AbgelaufenerWarenausgangBeschaffung

Anwendungsgebiete BPMN vs. BPEL

Business AnalystBPMN

AutomatedBusiness Process IT Expert

BPEL

Enterprise Dialog Control Logic

Project PlanKPI/SLA

ProcessLogic

ProcessLogic BPEL

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 42

DomainLogical

CompositionFacade

Domain Object

Core Business

Object

Core Business

LogicPOJO

Page 22: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

22

Oracle SOA Suite Development-Architektur für BPEL

Oracle Weblogic Server

Oracle Service BusSCA Runtime

ServiceMediator

BPELEngine

Notifications

Worklist

JEE Web EJB 3

ADF EJBService

Rules-Engine

Messaging JAX WS

JTA JPA

JDBCJNDI

BPEL

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 43

JDBCJNDIJDeveloper

BPEL Designer

Modeling problems in the process area

• Problematic Requirements in EPC– EPC enthält Requirements als Freitext – manchmal funktionale Requirements die nicht zu BPMN transformiert q

wurden • Not printable• no automatic reporting• Not searchable

• Konsistente Modellierung des BO Zugriffs• Ungenaue Korrelation von Payloads, Prozessvariablen und

Serviceparametern

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 44

Page 23: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

23

Beispielprozess: Wareneingang

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 45

Example: Referenzierung eines Service in BPMN über ein Function Allocation Diagram

Rezeptierungsvorschriftchecken...

RezeptService isRezeptAvailableRequestVO

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 46

IsRezeptAvailableVO

Page 24: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

24

Wareneingang: Hot Spot Komplexität

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 47

WareneingangHot spot detail 1

Scanner

Typ derAnlieferungbestimmen

Bestellcode lesbar

Scan Bestellungscodeyes

Liefercodescannen

Barcode of Abpackung vorhanden

Abpackungscode scannen

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 48

Liefercode lesbar

Lieferpapiere vorhanden)

ManuelleEingabe desLiefercodes

Page 25: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

25

WareneingangLess complex

Typ der yesypAnlieferungbestimmen

Bestellcode lesbar

Scan Bestellungscodeyes

Liefercode lesbar

Lieferpapiere vorhanden)

ManuelleEingabe desLiefercodes

Liefercodescannen Anlieferung

aufnehmen

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 49

WareneingangLösung: BPMN variante

AnlieferungB t ll

gaufnehmen

Anlieferungaufnehmen

BestellungLieferungPrüfung

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 50

PRO barcode is readable/available

Enter PRO Number

PRO barcode is not readable/available but PRO number exists

yesno

shipping documents/parcel barcode is available

shipping documents/parcel barcode is not available

Choose book-in typeof receipt of goods

Scan procurementorder barcode

yes

Scan shippingdocuments/parcel

barcode

yes

Anlieferungaufnehmen

Page 26: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

26

Fazit

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH 51

Mehr von OIO zum Thema

• Schulung: SOA – Service orientierte Architekturen– http://www.oio.de/seminar/entscheider/soa-schulung.htm

• Schulung: Modellierung von Geschäftsprozessen mit BPMN– http://www.oio.de/seminar/methodik-prozess-management-soft-

skills/training-business-process-kurs-modeling-bpmn-schulung.htm

• Schulung: Einführung in BPEL– http://www.oio.de/seminar/xml/kurs-ws-bpel-schulung-bpel-seminar-

ode-training.htm

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

g

• Schulung: UML2 für MDSD– http://www.oio.de/seminar/methodik-prozess-management-soft-

skills/training-uml-kurs-mdsd-schulung.htm

52

Page 27: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

27

Mehr von OIO zum Thema

• Schulung: Einführung in die openArchitectureWare (OAW)– http://www.oio.de/seminar/entscheider/soa-schulung.htm

• Schulung: Überblick MDSD mit Open Source– http://www.oio.de/mda-mdsd-schulung.htm

• Beratung zu Modellgetriebener Softwareentwicklung– http://www.oio.de/beratung-consulting/mda-mdsd-model-driven-

software/

MDSD mit BPMN und SOA© 2010 Orientation in Objects GmbH

• Beratung zu SOA / Web Services– http://www.oio.de/beratung-consulting/software-integration/soa-web-

services/index.htm

53

? ??? ?

???

Fragen ?

Orientation in Objects GmbH

Weinheimer Str. 6868309 Mannheim

[email protected]

??

Page 28: Modellgetriebene Software-Entwicklung mit BPMN und SOA · PDF file• MDSD meets BPM Vision • Datenmodellierung ... Oracle BPA Suite 11g Oracle SOA Suite 11g Oracle BPA Suite Übersicht

28

Vielen Dank für ihre Aufmerksamkeit !

Orientation in Objects GmbH

Weinheimer Str. 6868309 Mannheim

[email protected]