MDSD meets BPMN - Eldorado für Analytiker?



Ähnliche Dokumente
Modellgetriebene Software-Entwicklung mit BPMN und SOA

Modellgetriebene Software-Entwicklung mit BPMN und SOA

Modellgetriebene Software-Entwicklung mit BPMN und SOA

<Insert Picture Here> Oracle Business Process Analysis Suite. Gert Schüßler Principal Sales Consultant

Auszug aus JAX-WS Folien

Enterprise Application Integration Erfahrungen aus der Praxis

Überblick Produkte. ORACLE AS 10g R3 JAVA Programming. (5 Tage)

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München,

OERA OpenEdge Reference Architecture. Mike Fechner PUG Infotag 19. Mai 05 Frankfurt

Erfahrungsbericht. Donatas Valys Client Architect SOA. Bildquelle: KUKA Roboter GmbH. DOAG2012 Arbeiten am Enterprise SOA-Fließband D.

PRODATIS CONSULTING AG. Folie 1

Architecture Blueprints

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

Struts 2 Das Imperium schlägt zurück?

Last- und Stresstest mit the Grinder 3

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke J.M.Joller 1

Prozessautomatisierung Vom Geschäftsprozess zum IT-Prozess Benjamin Brunner SOA Architect OPITZ CONSULTING Bad Homburg GmbH

BPA Suite und SOA - vom fachlichen Prozessmodell zur Anwendung. Bernhard Fischer-Wasels Leitender Systemberater

Verteilte Systeme: Übung 4

Gemeinsam mehr erreichen.

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire

Dr. Jens Hündling Senior Sales Consultant. DOAG Apps 2011 Berlin, 05. Mai 2011

SEA. Modellgetriebene Softwareentwicklung in der BA

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart

Aus EAI wird SOA: Integration mit Forms und ADF. pdv TAS. Torsten von Osten, Sven Tissot pdv Technische Automation + Systeme GmbH Hamburg

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sommersemester Michael Theis, Lehrbeauftragter 1

Generierung von Serviceverträgen auf Basis objektorientierter ereignisgesteuerter Prozessketten

Bachelorarbeit. Modellierung interaktiver Web Service Workflows. Thema: Benjamin Koch. von

UML Modellierung und Model Driven Architecture (MDA) für Java mittels Rational Software Architect (RSA)

Erster Einblick in die BPM Suite 11g - Live

Metadata Service Respository (MDS) - Sehen, lernen, verstehen!

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, Java Forum Stuttgart 2007

Ein Vergleich zwischen SCA,JBI und WCF. Marcello Volpi

Empfehlungen für erfolgreiche ADF-Projekte. Volker Linz Oracle Deutschland B.V. & Co. KG

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Model Driven Development im Überblick

Design mit CASE-Tools

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung

5. Übung zur Vorlesung Service-orientierte Architekturen

Semantic Web Services

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit

ORACLE Business Components for Java (BC4J) Marco Grawunder

Vortrag von: Ilias Agorakis & Robert Roginer

Web Services Monitoring

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel

WebService in Java SE und EE

Sind Prozessmanagement-Systeme auch für eingebettete Systeme einsetzbar?

Workflow, Business Process Management, 4.Teil

POIS-Praktikum Prozessimplementierung, RosettaNet PIPs 3A

Model Driven SOA. < J Springer. Anwendungsorientierte Methodik und Vorgehen in der Praxis. Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann

Geschäftsprozessimplementierung mit BPMN, ADF und WebCenter

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen

Model-Driven Development in Scrum-Projekten

Model Driven Architecture (MDA)

Konfiguration und Deployment einer hochverfügbaren ADF Anwendung

OWB 10.2 Experts im Einsatz: Automatisierung von Designschritten bei der Bayer Healthcare AG. Referent: Lutz Bauer, Senior Systemberater, MT AG

DOAG SIG Day. E-Business Suite und SOA: Was ist heute schon möglich? Thomas Karle PROMATIS software GmbH. Frankfurt 26. April 2007

Organisation und Systeme SOA: Erstellung von Templates für WebService Consumer und Provider in Java

INNOVATOR im Entwicklungsprozess

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava

Wiederholung: Beginn

Vorgehensmodell. Vorgehensmodell für die Prozessautomatisierung mit der Oracle BPM Suite 11g

Die Integration von Requirements Management, Software Configuration Management und Change Management mit der MKS Integrity Suite 2006

APEX und Workflows: Spaghetticode oder Integration. Sven Böttcher. Consultant, Apps Associates GmbH

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand

Die MID ModellierungsMethodik M³ ein Baukasten für Produktlinien. Andreas Ditze, MDD & PL 2009, Leipzig,

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

SAP NetWeaver Gateway. 2013

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Jo Weilbach, Mario Herger SAP xapps - Architektur und Entwicklung mit dem Composite Application Framework. Galileo Press

The core problem implementing BPEL based systems: Engineering Gap between Business- and Technical --Implementation!

Weblogic Server: Administration für Umsteiger

Prozessunterstützung durch BPR-, BPM- und Workflow-Systeme

Luca Piras SharePoint Specialist it-function software GmbH

Java Web Services Metadata JSR-181

Modellgetriebene Service-Entwicklung

Komplexe dokumentenbasierte Prozesse mit Oracle Technologien umsetzen

Björn Heinemann Leiter Entwicklung Energiewirtschaft

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG

Java und XML 2. Java und XML

Das generierte Data Warehouse

<Insert Picture Here> Generierung von ADF-Applikationen aus Metadaten des Oracle Designer

Software Engineering II

Inhalt. Motivation Techniken des MDE. Fallbeispiele

BPM im Kontext von Unternehmensarchitekturen. Konstantin Gress

Integration im Enterprise Umfeld

Aufgabe GBIS (TPCW-Benchmark)

TFS Customzing. in der Praxis. Thomas Gugler. seit 2005 bei ANECON. .NET seit 2002 (happy bday!) Schwerpunkte: MCPD.Net 4.0, MCTS TFS, Scrum Master,

20. DOAG-Konferenz. Wohlstrukturierte Prozesse auf SOA-Basis. mit der Oracle E-Business Suite. Thomas Karle PROMATIS software GmbH

Copyright 2014 Delta Software Technology GmbH. All Rights reserved.

Java EE Projektseminar

5. Programmierschnittstellen für XML

MDA auf der Grundlage der OMG Konzepte

BPM für IBIS BAT Jean-Marc Terrettaz, RTC

<Insert Picture Here> BI Publisher Berichte in eigene Anwendungen integrieren

BIW - Überblick. Präsentation und Discoverer Demonstration - Teil 1 - Humboldt Universität zu Berlin am 10. Juni 2004

Über den Unterschied zwischen Business Analysis und Requirements Engineering & Management

Model Driven Architecture Praxisbeispiel

Transkript:

MDSD meets BPMN - Eldorado für Analytiker? Ein Praxisbericht Version: 1.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Daniel Zwink Björn Feustel Wenn mit BPMN aus fachlichen Analysemodellen technisch verwertbare Prozessmodelle entstehen, dann werden aus Analytikern Goldgräber. Was in der Theorie schnelle Erträge verspricht, führt in der Praxis zu tiefen Grabungen bei der Modellierung von Datentypen, schnittstellen, Prozessen und deren Oberflächen. Häufig zitierte Basistechniken der Geschätsprozessmodellierung bieten in der Realität der SOA eines Großunternehmens oft nicht mehr als die sprichtwörtlichen "Spitzhacke und Schaufel". Der Vortrag sucht nach "schwerem Modellierer-Gerät". 2

Gliederung MDSD meets BPMN Vision Datenmodellierung modelle Human Task Modelle Prozessmodellierung 3 Gliederung MDSD meets BPMN Vision Datenmodellierung modelle Human Task Modelle Prozessmodellierung 4

Oracle BPA Suite Übersicht Oracle BPA Suite 11g Business Process Architect Oracle SOA Suite 11g JDeveloper Manage Share Blueprint Import Plugin Deploy Business Process Repository Refresh from BPA Server Weblogic Server 5 ARIS MDA Approach OMG Modelling Layer Diagramm Conceptional (CIM) VAD, EPC, Technical Term Logical (PIM) BPMN, eerm Physical (PSM) BPEL, WSDL, XSD 6

Modellerstellung: Bottom-up MDSD SOA Approach Existing XSD WSDL Technical Data Import Business Model BPMN Share Blueprint SCA- Composite BPEL Technical Implementation 7 Modellerstellung: Top-down MDSD SOA Approach Eigenentwicklung g Datamodel Generation Business Model VAD/EPC eerm, Access Diagram, Generated XSD WSDL Consolidation Share Blueprint Manually linked artefacts from Business Model BPMN SCA-Composite BPEL Technical Implementation 8

Top Down Analysis vs. Bottom Up Implementation Analyse Processes Implementierung s / Data VAC EPC BPMN XSD WSDL Userinterfaces Screen Design Screen Navigation Userinterfaces SDL XAML/XAP SNL s / Data Technical s eerm Processes BPEL 9 Oracle SOA Suite Laufzeitarchitektur Oracle 11g Application Server Oracle Bus SCA Runtime JEE Web EJB 3 Rules Engine Mediator BPEL Engine Worklist Application ADF EJB Messaging JAX WS BPEL Process Notifications JTA JPA JNDI JDBC 10

Laufzeitschichten der Anwendung GUI-Level Browser Process e.g. Order process Prozess-Level BPEL-Engine 1 2 e.g. Invoice service -Level JEE Server Data Access 1 e.g. Customer Data Access 2 e.g. Invoice Data Access-Level Oracle DB Adapter, JDBC, Persistenz-Level RDBMS Development Vision ARIS Artefakte & Generate Process XSD WSDL SNL 1 JDev 2 3 SDL 4 3 Szenarien (Screen Navigation) 7 8 Rules 5 ADF > JDeveloper Cocoon > Eclipse Silverlight > Visual Studio Screen Application Silverlight (SDL > XAML) Build & Deployment Approach 6 1. Prozessmodell Blue Print 2. Datentyp als XML Schema 3. definition als WSDL 4. Technische Implementierung in JDeveloper 5. Definition der Screen Navigations 6. Defintion der Screens 7. Business Rules 8. Build & Deployment 12

Gliederung MDSD meets BPMN Vision Datenmodellierung modelle Human Task Modelle Prozessmodellierung 13 Mögliche Generierungspunkte aus Datenmodellen DO Business Object Process 1 DO 2 e.g. findinvoicesbycustomer(..) XSD Data Access Data Access DO 1 2 e.g. findcustomerbyuid(..) e.g. findinvoicesbycustomeruid(..) Java Klasse Konverter C# Klasse

Kanonisches Datenmodell 15 Generierung von XSDs aus Business Objects Address Address Entity type D attribute (ERM) ERM domain XSD D attribute (ERM) ERM domain D attribute (ERM) ERM domain D attribute (ERM) ERM domain 16

XSD Import / Konsolidierung Order OrderItems XSD «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 = 1 minoccurs = 1 modelgroup = 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 = 1 minoccurs = 1 modelgroup = sequence 17 XML / Java Binding durch JAXB Java Klasse 1 1 XML Schema 1 1 * Java Objekte JAXB 1 1 * * XML Dokumente Dokumente Dokumente Objekte Objekte 18

JAXB Anwendungsszenario Compile Time XML Schema Binding Compiler Schemabasierte Klassen und Interfaces Runtime Anwendung XML Dokumente marshal JAXB API unmarshal Objekte 19 Schwierigkeit: Data Silos innerhalb der SOA Geschäftsobjekte überspannen mehrere Silos Modellierte Geschäftsobjekte, die real nicht existieren Performance bei Relationen zwischen Objekten Analyse für Generierung oft nicht detailliert genug ESB Adapter Adapter Adapter Adapter Adapter Adapter Adapter Andere s Beschaffung Logistik

Vision der Integration: Generierung der Persistenz aus kanonischem Modell Legacy Model UML ARIS BPA Suite - UML Proprietary Format ERM VB-Script Generierung Pd-entity.xml ARIS Extension Generierung XSLT Transformation Entity.xml Entity.xsd EJB 2.0 JPA EJB 3.x.Net SDO EJB 3.x Hibernat e Ist Vision Gliederung MDSD meets BPMN Vision Datenmodellierung modelle Human Task Modelle Prozessmodellierung 22

Mögliche Generierungspunkte aus modellen Software Process e.g. Order process 1 2 e.g. Invoice service WSDL Data Access 1 Data Access 2 - & Client-Impl. Web Architektur Endpoint Definition (WSDL) import publish Web Client request / response Web Endpoint artifacts SOAP HTTP artifacts 24

Web Generierung Contract Driven Endpoint Definition (WSDL) Code Generator JAX-WS Client Proxy Proxy Servlet Engine Implementierung 25 Deployment eines Web in JEE 5 Oracle 11g Application Server Oracle Bus SCA Runtime Rules Engine Worklist Application JEE Web EJB 3 Book Web Application Mediator BPEL Engine @Web Class Book Notifications Messaging JTA JNDI JAX WS JPA JDBC 26

WSDL 2 Java WSDL Java wsdl:definitions @targetnamespace Package wsdl:porttype Interface @Web wsdl:operation Methode @WebMethod wsdl:fault Exception @WebFault 27 WSDL 2 Java - Client WSDL wsdl:service wsdl:port Java Erbt von javax.xml.ws. name ist Klassenname @WebClient "Proxy" getportname() @WebEndpoint 28

Beispiel Schichtenbildung von s und Prozessen Oracle Bus Bestandsprüfungs-P BANF-P BPEL Engine Beschaffunfgs-P Buchungs-P Oracle Bus EJB 3.x Container (WLS) ManageBANF-D Bestellungs-D Legacy Container Container RMI Material DB BANF-B B Entität 1 Bestellung-BB Entität 2 Externe s Product Warenhaus Beschaffung DB Container Calendar 29 Schwierigkeit: schichtung & Abhängigkeiten Process Application / UI 1 2 Process Data Access 1 Data Access 2 1 2

Gliederung MDSD meets BPMN Vision Datenmodellierung modelle Human Task Modelle Prozessmodellierung 31 Mögliche Generierungspunkte aus UI-Modellen Screen Screen Navigation Process 1 2 SDL SNL Data Access 1 Data Access 2 XAML

Anbindung der Oracle Worklist / Verarbeitung von Human Tasks Oracle PM BPEL Process JEE Webframe work UI Assign task Task complete s Worklist Silverlight API API Human Tasks Worklist s Human Task Clients als Mini-Applikation Silverlight XAPs als Mini-Applikation Bearbeitung eines Human Task Wiederverwendung als Ziel Screens in verschiedenen HTs Mini-Applikationen als HTs Schwierigkeiten Granularität der Screens Silverlightli Application Screen 1 Screen 3 Screen 2 miniapp.xap Silverlight Web Navigation 1.snl Navigation Controller Facade web-application.war services.ear D 1 D 2

Generierung von Screens und Navigationen Ziel: In ARIS Screen- und Navigationsmodelle zu pflegen Implementierungsneutral durch Intermediate Format Templates im Modell (Suche, Eingabe, Master-Detail,...) Screen Design per Screen Definition Language (SDL) Transformation nach XAML möglich (XSLT) Screen Navigation per Screen Navigation Language (SNL) Verarbeitung über Framework oder möglich Beispielmodell Screen Screen Model Container Komponenten Binding auf VO / DO View Objects als eerm (spezielles Mappingmodell) 36

Schwierigkeiten: Unvollständiges Metamodell 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 Actions Modellierung von calls im UI (z.b. in Tabellen) Sperrige und relativ starre UI durch Templates Vorteil für Generierung Nachteil für Endbenutzer Begrenzte Mächtigkeit der SDL 37 Beispielmodell Screen Navigation Technisch unterspezifiziert Wurden angereichert um: Start Navigation End Navigation Konvention: Transitionen nur über hier sichtbare Controls Pfadmöglichkeiten im Netz erfordern zustandsbehafteten Controller / 38

Gliederung MDSD meets BPMN Vision Datenmodellierung modelle Human Task Modelle Prozessmodellierung 39 Mögliche Generierungspunkte aus Prozessen BPMN Process e.g. Order process 1 2 BPEL Data Access 1 Data Access 2

Beispielhafte Process Map Bestellanfrage Beschaffung Bestellung SAP Reklamation Bestellung Wareneingang Bestands- prüfung Abgelaufener Warenausgang Umfüllung 41 Oracle SOA Suite Development-Architektur für BPEL Oracle 11g Application Server Oracle Bus SCA Runtime JEE Web EJB 3 Rules-Engine Mediator BPEL Engine Worklist ADF Messaging EJB JAX WS BPEL Notifications JTA JPA JDeveloper BPEL Designer JNDI JDBC 42

Schwierigkeit: Analyseunschärfe in der Prozessmodellierung Problematische Anforderungen in EPCs Enthalten Anforderungen als Freitext Funktionale Anforderungen die u.u. nicht zu BPMN transformiert wurden / werden konnten nicht druckbar kein automatisches Reporting nicht durchsuchbar Fragwürdiges Ergebnis bei starrer 1:1 Transformation Konsistente Modellierung des BO Zugriffs z.b. fehlende aufrufe Ungenaue Korrelation von Payloads, Prozessvariablen und parametern 43 Beispielprozess: Wareneingang 44

Schwierigkeit: Komplexität & Usability 45 Wareneingang: Hot Spot Detail Optimierungspotential Komplexität Bedienbarkeit in UI 46

Wareneingang: Hot Spot Lösungsmöglichkeit 1 Anlieferung aufnehmen 47 Wareneingang: Hot Spot Lösungsmöglichkeit 2 Bestellung Lieferung Prüfung Anlieferung aufnehmen Anlieferung aufnehmen Anlieferung aufnehmen 48

Fazit Oracle 11g SOA Suite ist......eine einsatzfähige Basis für eine modellgetriebene SOA...eine Laufzeitarchitekturplattform für human centric BPM...damit ein Erfolgsfaktor des Projektes Top-down Ansatz der Modellierung (EPC/ARIS nach BPMN) integriert sich nicht vollständig in die BPA Suite Werkzeugkette Generatoren bieten keine Möglichkeit des Reengineerings zwischen PSM und PIM, was zu Redundanzen bei WSDL- und Schemamodellen (ARIS/UML) führte Betrachtung der Kostenseite hohe initiale Modellierunganstrengungen notwendig sind Trägt die Idee von der Kopplung Analyse/Generierung? Kann die Analyse die notwendigen Details kennen? Iteratives Vorgehen notwendig 49 Mehr von OIO zum Thema Schulung: Modellierung von Geschäftsprozessen mit BPMN http://www.oio.de/seminar/methodik-prozess-management-softskills/training-business-process-kurs-modeling-bpmn-schulung.htm Schulung: Einführung in BPEL http://www.oio.de/seminar/xml/kurs-ws-bpel-schulung-bpel-seminarode-training.htm Schulung: UML2 für MDSD http://www.oio.de/seminar/methodik-prozess-management-softskills/training-uml-kurs-mdsd-schulung.htm Artikel: Übersicht Eclipse Modeling Project EMP http://www.oio.de/public/opensource/uebersicht-eclipse-modelingframework-emp-emf-artikel.htm 50

???? Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de? Fragen?? Vielen Dank für ihre Aufmerksamkeit! Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de