Weitere ähnliche Inhalte Ähnlich wie Versteckte Schätze in Oracle BPM und SOA Suite - DOAG Konferenz 2011 - OPITZ CONSULTING -Schmiedel-Huendling (19) Mehr von OPITZ CONSULTING Deutschland (20) Versteckte Schätze in Oracle BPM und SOA Suite - DOAG Konferenz 2011 - OPITZ CONSULTING -Schmiedel-Huendling1. Versteckte Schätze in BPM & SOA Suite
Gesammelte Projekterfahrungen
Jens Hündling
ORACLE Deutschland B.V. & Co. KG
Danilo Schmiedel
OPITZ CONSULTING Berlin GmbH
DOAG Konferenz 2011, am 17.11.2011 in Nürnberg
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 1
2. Agenda
1) Das Handwerkszeug
• Die Oracle Plattform für BPM & SOA 3) Danach muss man suchen…
• Rent your legacy car (RYLC) • Schillernde Oberflächen durch
Customizing
• Erhöhte Anpassbarkeit durch
2) Schnell zu finden… Konfigurationsänderung zur
• Effektive Software-Entwicklung in einer Laufzeit
SOA mit dem MDS
• Effiziente Fehlerbehebung zur Laufzeit 4) Tief vergraben …
mit dem Fault Management Framework • Extreme Flexibilität zur Laufzeit
• Steigerung der Flexibilität durch Java mit dynamischem Endpunkt
Code Integration Binding
• Sichere SOA mit OWSM-Policies • Ressourcenschonende und
performante SOA durch
optimierte
Dehydrierungseinstellungen
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 2
3. 1 Das Handwerkzeug …
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 3
4. Complete.
Open.
Integrated.
Best in Class.
© Oracle Corporation
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 4
5. Oracle Fusion Middleware
User Experience
Content Management
Identity
Business Intelligence Management
Development SOA &
Tools Process Management
Data Integration
Enterprise
Management
Application Grid
© Oracle Corporation
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 5
6. Oracle BPM Suite 11g: Unterstützung
des kompletten BPM Lifecycle
Business Analysts –
http://tinyurl.com/BPMLifecycle
Entwurf und Modellierung
des Prozesses
Enterprise Architects –
Suche nach Entwickler – Implementierung
Entwicklungsmöglickeiten des Prozesses
Prozessverantwortliche –
Konfiguration, Anpassung,
Abnahme
Gesamtes Team –
Steuerung, Analyse, Anwender –
Optimierung Ausführung und
© Oracle Corporation Verbesserung
IT-Betrieb – Management
und Monitoring
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 6
7. Oracle BPM 11gR1 Architektur
BPM-Komponenten auf der Basis der Oracle SOA Suite
Web Based Customization
Rich End User Interaction
BPM Workspace Process Portal MS Office
BPMN 2.0, (WebCenter)
BPEL
BPM Studio Process Composer
(Business & IT views)
BPEL BPMN
Human Business
Workflow
Mediator
Process Core Rules
B2B
Service Infrastruktur MDS
Process Common JCA-based connectivity infrastructure Policy Manager
Analytics Optimized
BAM binding
Proc Cubes WebLogic Server
EM Console
+ BPMN Screens
© Oracle Corporation
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 7
8. Service Component Architecture (SCA)
1) SCA mit BPMN, BPEL und Human Task
Komponenten
3) BPEL Prozess: Fertigungsdokument senden
2) BPMN Prozess: Fertigungssteuerung
Fertigungsdokument
senden
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 8
9. BPM Suite 11g – Überblick
Geschäftsarchitektur genutzt von Oracle
Process Spaces
BPA Suite • Persönliche UI
Produkten
• Unternehmens- • Zusammenarbeit
modellierung • Kontextbezogene Infos
• Methoden- • Web 2.0 und BPM
getrieben
Process Analytics Fusion Apps
• BAM, BI
• Geschäftsindikatoren &
Geschäftsgetriebene Messgrößen
Modellierung • Prozesswürfel
BPM Studio
• Business IT BPM Runtime Web Center Suite
Collaboration • Standards – • Dynamisch
• Eine IDE BPMN 2.0, BPEL, • Unternehmensweit
• Simulation WS-Human Task • Setzt auf SCA-
• Business Rules basierenden SOA-
Server UCM/IPM
Process Composer
• Web-basierte
Anpassungen © Oracle
• Ablauffähige Corporation
Prozesse
Papier- Business Content
dokumente Intelligence Management
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 9
10. Rent Your Legacy Car (RYLC)
• Demonstration einer durchgängigen SOA-Methodik am
Beispiel eines Autoverleih-Unternehmens
• Qualitätsattribute und Szenarien
• Prozess Visibility
Informationen zu den verfügbaren Mietwagen
Bessere Auslastung der Mietwagenflotte
Reduktion von Falschbuchungen
• Prozess-Automatisierung
Ergänzung telefonischer Mietwagenbuchung durch
Onlinebuchung
• Prozess-Flexibilität
Erschließen von neuen Marktsegmenten durch
Kooperation mit Hotelbuchungsportal
• Weitere Details und Konzepte sind in dem Sonderheft
„SOA Spezial – Ready for Change“
(Software & Support Verlag) enthalten
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 10
11. 2 Schnell zu finden…
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 11
12. Referenzieren von Daten und Services (1/3)
Lokale Kopien
SOA Composite 1
CarRental CustomerInfoService
Car
Interface (with SOAP-Binding) Customer CarBooking
CustomerInfoService
ClaimNotification (with SOAP-Binding) Customer
Interface Claim Notification
SOA Composite 2
Backend
Server
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 12
13. Referenzieren von Daten und Services (1/3)
Lokale Kopien
SOA Composite 1
Achtung Inkonsistenzen!
CarRental CustomerInfoService
Car
Interface (with SOAP-Binding) Customer CarBooking
Die lokale Speicherung der
Schnittstellen (WSDL) und
Datenobjekte (XSD) kann dazu
ClaimNotification
CustomerInfoService
(with SOAP-Binding) Customer
führen, dass die Artefakte in
Interface Claim Notification
unterschiedlichen
SOA Composite 2
Backend
Server Ausprägungen vorkommen.
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 13
14. Referenzieren von Daten und Services (2/3)
Direkte WS-Referenz auf Server
SOA Composite 1
CarRental
Car
Interface Customer CarBooking
ClaimNotification Customer
Interface Claim Notification
SOA Composite 2
Backend
Server
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 14
15. Referenzieren von Daten und Services (2/3)
Direkte WS-Referenz auf Server
SOA Composite 1
Ausfall /
Wartung x CarRental
Car
Interface Customer CarBooking
ClaimNotification Customer
Interface Claim Notification
SOA Composite 2
Backend
Server
x
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 15
16. Referenzieren von Daten und Services (3/3)
Zentrale Speicherung im MDS
SOA Composite 1
CustomerInfoService CarRental
Customer
(with SOAP-Binding) Interface Car CarBooking
CustomerInfoService
ClaimNotification (abstract Interface)
Interface Claim Notification
MDS
Backend
Server
SOA Composite 2
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 16
17. Effektive Software-Entwicklung mit dem MDS
oramds:/apps/<FOLDER>/<Service>.wsdl
Business Events Fault Policies Reference Interfaces
Datenobjekte (XML)
(EDL) (WSDL)
Composite (XSD)
Domain
Interface (WSDL) Value Maps (DVM) MDS
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 17
18. Effektive Software-Entwicklung mit dem MDS (2)
Motivation
• Bereitstellung von SOA-Artefakten in einem zentralen Repository
• Unterstützung von Top-down-Ansätzen (“Contract first”)
• Service-Lifecycle-Management
Benutzung
• Entwicklung: SOA-Artefakte abstrakt erstellen und referenzieren
• Konfiguration des lokalen MDS in der Konfigurationsdatei „adf-config.xml“
• Referenzierung erfolgt nach dem Prinzip: oramds:/apps/<FOLDER>/<Service>.wsdl
• Deployment: Metadaten werden als eigenes Deployment-Modul auf dem Server-MDS bereitgestellt
• Im Konfigurationsplan werden abstrakte Schnittstellen mit konkreten Endpunkten ausgetauscht
Realisierter Mehrwert
• Wiederverwendung von Schnittstellen, Daten, Ereignissen, Geschäftsregeln, FaultPolicies, DVMs…
• Unterstützt den Austausch zwischen Architekt und Entwickler
• Ermöglicht die zentrale Aktualisierung von SOA Artefakten
• Schnittstellen (Contract First Development
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 18
19. BPM & SOA mit Java-Integration?
Motivation
• Wiederverwendung und Integration bestehender Java-Implementierungen
• Integration einer eigenen Benutzerverwaltung
• Verbesserung der technischen Monitoring-Möglichkeiten, z. B. für eine effizientere Fehleranalyse
• Individuelle Bedürfnisse am Look & Feel der bestehenden Standard-Applikationen
Benutzung
• Integration von Java in SCA-Applikationen: Spring-Komponente, Embedded Java in BPEL
• Benutzerverwaltung: Implementierung der IdentityProvider Interface-Klassen und Konfig. im WLS
• Erweiterte Funktionalität für die Behandlung von Fehlern (Java-Klasse, die das Interface
IFaultRecoveryJavaClass (handleFault und handleRetrySuccess) implementiert)
• Gestaltung von User Interfaces: siehe Punkt „Oberflächen-Customizing“
Realisierter Mehrwert
• SCA/Java-Kombination ist sehr vielfältig einsetzbar
• Freiheit für die Entwicklungsmannschaft => Java-Know-how effizient einsetzen
• Umfangreiche Funktionalitäten der SOA Suite mit Hilfe von Java ausbauen und customizen
• Vorteile der Plattform ausnutzen und durch individuelle Lösungen erweitern
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 19
21. Schnell auf Fehler reagieren
Fehlerbehandlung mit dem Fault Management Framework
Motivation
• Einheitliche Definition der Fehlerbehandlung in Composite-Applikationen
• Schnellstmögliche Identifikation von fachlichen und/oder technischen Fehlern
• Wiederverwendung von Logik für das effiziente Fehler-Alerting, -Logging und -Monitoring
• Eingriff zur Laufzeit: Wiederholte Ausführung (einzelner) fehlerhafter Service-Requests, ohne einen
Gesamtprozess neu starten zu müssen
Benutzung
• Sensoren; Fault-Policies (Default Actions und Custom Actions), FaultHandler
• Fachliche Fehler: Anzeige an der Benutzeroberfläche; Transport mit soap:fault
• Technische Fehler: Behandlung gehört nicht in die Businesslogik => daher vereinheitlichen
• Konfiguration erfolgt für SCA Composites in den Dateien fault-policies.xml und fault-bindings.xml
• Referenzierung für mehrere SCAs mit Hilfe der Properties “oracle.composite.faultPolicyFile” und
“oracle.composite.faultBindingFile und zentrale Ablage im MDS
Realisierter Mehrwert
• Verbesserung der Effizienz bei der Behebung von Fehlern
• Ermöglicht den Eingriff zur Laufzeit, wobei die Instanzen erhalten bleiben
• Zentrales Fehlermanagement (z. B. für alle „Remote Faults“ in Composites => E-Mail an Admin)
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 21
22. Sicherheit und Management
Deklarative Policies mit dem Oracle Web Service Manager (OWSM)
Motivation
• Konsistente Sicherung von Web Services auf Basis von WS-Security (Encryption, Decryption, Signing,
Signature Validation)
• Generierung von standardisierten Security Tokens (z.B. SAML), um Identitäten einer Transaktion über
verschiedene Web-Service-Aufrufe hinweg zu propagieren
• Einheitliche Policies an zentraler Stelle verwalten
Benutzung
• Definition: Zuordnung und Management von Policies
• Durchführung: Verteilung von Policies aus einem zentralen Store zu den Policy Enforcement Points
• Policy Manager: Liest/schreibt die Policies (vordefinierte und individuelle Policies)
• WSM Agent: Stellt die Einhaltung der Policy über die Policy Interceptor Pipeline sicher
• Policy Interceptors: Machen die Policies mitsamt Reliable Messaging, Management, Addressing,
Security and Message Transmission Optimization Mechanism (MTOM) geltend
Realisierter Mehrwert
• Unterstützung geforderter Sicherheitsstandards
• Unterstützt das Monitoring von Laufzeitereignissen (Failed authentication oder Authorization)
• Zuordnung von Security Policies und Endpoints zur Entwicklungs- und Laufzeit
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 22
23. 3 Danach muss man suchen…
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 23
24. Customizing der mitgelieferten Anwendungen zur
Aufgabenverwaltung (BPM Worklist)
Motivation
• Anpassung des Look & Feels der mitgelieferten Standard-Anwendungen (Worklist/Workspace)
• Integration der Anwendung in das Intranet bzw. in bestehende Portale
• Zuschnitt der Funktionalitäten (Erweiterung bzw. Einschränkung)
Benutzung
• Verwendung der Human Workflow Services API für die Entwicklung eigener Custom-Anwendungen
• ADF als Framework, aber nicht zwingend erforderlich
• Demo
Realisierter Mehrwert
• Effiziente Bedienung mit allen Freiheitsgraden
• Umfangreiche Funktionalitäten für ein vielfältiges Task Management (Berechtigungen, Eskalation,
Expiration Policies, Benachrichtigungsfunktionen, Persistierung, …)
• Transparente Genehmigungsworkflows unter Verwendung der vorhandenen Benutzerverwaltung
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 24
25. Customizing der mitgelieferten Anwendungen zur
Aufgabenverwaltung (BPM Worklist – Standard)
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 25
26. Customizing der mitgelieferten Anwendungen zur
Aufgabenverwaltung (BPM Worklist – Eigenentwicklung)
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 26
27. Human Workflow Services API
Persistierung von Task-
daten, Formularen und Verwaltet Metadaten, die
Attachments; dient der mit Human Workflow
Versionsverfolgung und Benutzern in Verbindung
hält den AuditTrail vor stehen (z.B.
Benutzereigenschaften,
Urlaubsvertretungs- und
Zuweisung von Tasks zu Delegation-Rules)
den entsprechenden
Benutzern mit Rücksicht Bietet Operationen für die
auf das ausgewählte Abfrage von Task-Listen
Pattern bzw. Task-Details
Authentifizierung von Dient der
Benutzern sowie Lookup Benachrichtigung von
von Benutzer-Properties, Benutzern über
Rollen und verschiedene Kanäle
Berechtigungen im (Mail, SMS, Fax und
angebundenen LDAP- Voice)
System
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 27
28. Effiziente Anpassungsmöglichkeiten zur Laufzeit
Component Properties für benutzerdefinierte Konfigurationseinstellungen
Motivation
• Beeinflussung des Laufzeitverhaltens von Composite-Applikationen
• Effizientes Property-Management (Performance, Zugriffskontrolle)
• Beispiele:
• Steuerung ob Ausführung im Test-, Simulations- oder Produktions-Betrieb erfolgen soll
• Festlegung eines Dateipfades, von dem Files gelesen werden sollen
Benutzung
• Entwickung: Definition der Konfigurationsparameter zur Entwicklungszeit (auf Composite-Ebene)
• Deployment: Umgebungsabhängige Definition von Werten über den Configplan
• Laufzeit: Änderung der Werte via System Mbean Browser im Enterprise Manager
Realisierter Mehrwert
• Konfigurieren vs. Entwicklung mit anschließendem Deployment
• Integration in den Enterprise Manager
• Vereinfachung: keine separaten Konfigurationsdateien notwendig (keine gesonderte Ablage,
effizientes Verteilen und Einlesen)
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 28
29. System MBean Browser
Änderung der Werte von Composite-Properties
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 29
30. 4 Tief vergraben …
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 30
31. Lose Kopplung mit dynamischem Endpunkt-Binding
Motivation
• Dynamische Adressierung von Services => Adresse der WS-Referenz wird erst zur Laufzeit ermittelt
• Beispiel:
• Services auf unterschiedlichen Maschinen (technisch motiviert)
• Flexible Adressierung der Technology Adapter (fachlich motiviert)
• Einfache Integration neuer Services mit gleicher Schnittstelle (fachlich/technisch motiviert)
Benutzung
• Steuerung des aufzurufenden Endpunktes erfolgt über die Property “endpointURI” (direkt auf dem
Service-Aufruf)
• Ermittlung des aktuellen Endpunktes kann in Kombination mit Business Rules, Domain Value Maps
oder den Component Properties erfolgen
• Schnittstelle der dynamischen Endpunkte muss identisch sein
• Nach dem Auslesen des Wertes folgt die Zuweisung auf die “endpointURI”
• Alternativen: Mediator & Oracle Service Bus
Realisierter Mehrwert
• Dynamische Anpassung der aufzurufenden WS-Referenz zur Laufzeit
• Auslieferung der Lösung im selbigen Deployment-Modul des Composites => somit keine
gesonderte Konfiguration in einer zusätzlichen Architektur-Komponente
• Etablierung einer dynamischen Skalierung => ohne Konfiguration eines zusätzlichen Routings
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 31
32. Lose Kopplung mit dynamischem Endpunkt-Binding (2)
Get determine Get
Process Customer Current Available
Details Location Cars
Property: endpointURI
Get
Berlin
Service
Available
Call
CarService
London
Get
Location Available
CarService
Nürnberg
Get
Service
Available
Call
CarService
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 32
33. Ressourcenschonende und performante SOA
Steuerung des Verhaltens zur Dehydration
Motivation
• Default: Prozessinstanzen speichern ihren Zustand im Repository
• Laufende Instanz wird dehydriert => BPEL-Engine entfernt diese aus dem Memory
• Eintreffen eines Callbacks: BPEL-Engine holt die passende Instanz aus dem Dehydration Store zurück
in den Memory und fährt mit der Ausführung fort
• Optimierung der Performance, beispielsweise für enorm hohe Anzahlen von Prozessinstanzen
• Steuerung zwischen „transient“ (einmalige Dehydration) und „durable“ (mehrmalige Dehydration)
Benutzung
• Transiente Prozesse: Bestimmte Aktivitäten dürfen nicht enthalten sein (Receive, Wait, OnMessage)
• Schnittstellenbeschreibung muss synchron sein
• Definition verschiedener Konfigurationsparameter
• inMemoryOptimization (Speicheroptimierung bei Wertzuweisungen)
• completionPersistPolicy (Festlegung, welche Instanzen gespeichert werden)
• oneWayDeliveryPolicy (Speicherung Instanz-erzeugender Nachrichten im Delivery Layer)
Realisierter Mehrwert
• Vorteile Dehydration: Recovery von BPEL Prozessen
• Ohne Dehydration: Steigerung der Performance; Reduktion der Laufzeitdaten, die in das
Repository geschrieben werden
• Messbarer Geschwindigkeitsvorteil realisierbar
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 33
34. Fragen und Antworten
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 34
35. Ihre Ansprechpartner
Dr. Jens Hündling, Manager OracleDirect Sales Consulting
Oracle Deutschland B.V. & Co. KG, Potsdam
jens.huendling@oracle.com
Phone: +49 331 20 07 20 9
Mobile: +49 172 44 12 69 1
Danilo Schmiedel, Senior Consultant
OPITZ CONSULTING
danilo.schmiedel@opitz-consulting.com
Telefon +49 30 6298889-0
Mobil +49 173 72 79 001
Versteckte Schätze in BPM & SOA Suite 11g © OPITZ CONSULTING GmbH 2011 Seite 35
Hinweis der Redaktion die Prozesse eine gewisse Komplexität besitzensowohl fachliche als auch technische Interaktionen beinhaltender fachliche Prozess auch von einem Fachanwender überwacht werden sollbereits BPEL-Implementierungen bestehendokumentierte BPMN Prozesse technisch umgesetzt werden sollenbereits BPEL KnowHow im Unternehmen vorhanden istes für einzelne (Teil-)Prozesse eine rein technische und IT-nahe Sicht gibtwelche ein gesondertes und detaillierteres Monitoring erfordernmittels kleiner Bausteine technische Komplexität gekapselt und explizit getrennt vom fachlichen Prozess stattfinden sollProjektorganisation dies erfordert bzw. vereinfacht (siehe SCA Beispielfolie)Explizite Trennung von ZuständigkeitenTechnische Aspekte: BPELFachliche Optimierung: BPMN Demo (RYLC) Service runterfahren/abschalten (History schreiben) Prozess wieder starten-------------Fault Binding:GranularitätCompositeComponentReferenceRejected Messagesmüssen separat behandelt werden SAML: Security Assertion Markup Language Verweis auf Vortrag von Kersten Merbus: „Web Services Manager in Action (15:00)“ SAML: Security Assertion Markup Language Verweis auf Vortrag von Kersten Merbus: „Web Services Manager in Action (15:00)“ SAML: Security Assertion Markup Language Verweis auf Vortrag von Kersten Merbus: „Web Services Manager in Action (15:00)“ SAML: Security Assertion Markup Language Verweis auf Vortrag von Kersten Merbus: „Web Services Manager in Action (15:00)“ SAML: Security Assertion Markup Language Verweis auf Vortrag von Kersten Merbus: „Web Services Manager in Action (15:00)“