Konzeption und Implementierung von SOA Composed Services in der Praxis

Ähnliche Dokumente
Konzeption und Implementierung von SOA Composed Services in der Praxis

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

Abb. 1: Klassische P2P Integration. Abb. 2: Integration über einen Service Bus

Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)

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

PRODATIS CONSULTING AG. Folie 1

Enterprise Service Bus (ESB) in einer SOA

Von der Prozessanalyse zur Prozessautomatisierung

Integration im Enterprise Umfeld

Oracle Fusion Middleware Überwachung mit Oracle BAM

Ein Vergleich zwischen SCA,JBI und WCF. Marcello Volpi

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

B2B für meine Geschäftspartner

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

Error-Hospital für Oracle SOA Suite

Wiederverwendbare UIs in einer Enterprise SOA mit Oracle ADF

BPEL und seine Kinder

Softwareentwicklung mit Enterprise JAVA Beans

Gemeinsam mehr erreichen.

Entwicklung von Web-Anwendungen auf JAVA EE Basis

SCA & SDO Konzepte und Design

<Insert Picture Here> Einführung in SOA

About me. Hajo Normann SOA/BPM Architect at EDS, an HP company. Oracle ACE Director

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

Baut man eine SOA in der Datenbank?

Flexibilität im Prozess mit Oracle Business Rules 11g

SOA Blueprint. Ordnung im SOA Werkzeugkasten. Tobias Krämer OPITZ CONSULTING München GmbH

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

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

20. Deutsche Anwenderkonferenz 2007 Software Entwicklung 2.0

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

Integrating Architecture Apps for the Enterprise

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

Erster Einblick in die BPM Suite 11g - Live

SOA verspielt - rekursive BPEL Prozesse

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

Aufbau eines serviceorientierten Unternehmens. Matthias Suthe ii4838

Gemeinsam mehr erreichen.

Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Einleitung Oracle Enterprise Scheduler (ESS)

SOA Testing. Tobias Bosch OPITZ CONSULTING GmbH München

Erster Einblick in die BPM Suite 11g - Live

Eclipse, Spring und OSGi 1

ADF Mobile konkret Best Practices Live erklärt. Jan Ernst

Serviceorientierte Architekturen

Strukturiertes Vorgehen zur Entwicklung von APEX-Anwendungen

BPEL als Eckpfeiler einer Serviceorientierten Architektur

Formulare in Papierform ablösen mit der BPM Suite 11g

Zustandsgebundene Webservices

Werkzeugunterstützung für die Umsetzung einer SOA

POIS-Praktikum Prozessimplementierung, RosettaNet PIPs 3A

Testen von SOA-Anwendungen mit dem BPEL Testframework

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

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

Erfolg mit Oracle BI?

Meine Datenbank läuft auf Vmware Was sagt der Enterprise Manager dazu?

Business Process Management in der Öffentlichen Verwaltung

SECTINO. Security for Inter-Organizational Workflows

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Inhaltsverzeichnis. Einleitung Zielsetzung und Inhalt Didaktisches Konzept Voraussetzungen Literaturquellen...

Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA

1. Wie können Forms und SOA integriert werden?

Überblick über die Application Integration

Gemeinsam mehr erreichen.

Forms auf Tablets. Vision oder Realität?

Workflows in APEX mit Camunda

Java 2, Enterprise Edition Einführung und Überblick

AIA 11g: Neuer Meilenstein für die Integration von Systemlandschaften?

0 IP C. Architecture. Von Data Access bis Unified. Jürgen Lange Frank Iwanitz Thomas J. Burke. 4., völlig neu bearbeitete und erweiterte Auflage

Spring Dynamic Modules for OSGi Service Platforms

Integration mit Service Repositories zur SOA Governance

Results in time. FLEXIBLER UND KOSTENGÜNSTIGER BETRIEB VON SAP SYSTEMEN. Beratung. Support. Ganzheitliche Lösungen.

Disclaimer. Copyright 2014, Oracle and/or its affiliates. All rights reserved.

ETL-Industrialisierung mit dem OWB Mapping Generator. Irina Gotlibovych Senior System Beraterin

Praxisbericht Oracle JDeveloper 11g ADF Rich Client Entwicklung

Service. Was ist eine Enterprise Service Architecture und wie reagiert SAP. Warum Monitoring in ZENOS, was monitort die XI?

Oracle SOA Suite 10g: Services-Orchestrierung

Service Contract Handling. Best-Practices zum Umgang mit Service Contract Artefakten (WSDL) in Oracle SOA Suite 11g

Java WebApps und Services in der Oracle Cloud

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

Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER

Sichere Webanwendungen mit dem elektronischen Personalausweis Teil 2

<Insert Picture Here> Oracle Fusion Middleware Moderne Software-Architekturen mit Oracle Forms

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

Inhalt. Einführung RFC-Funktionsbausteine in ABAP Funktionsbausteine zum Lesen Aufruf per srfc 108

Forms 12c und der Oracle SB

Grenzen überschreiten Intelligente Suche im Input Management

DWH Automatisierung mit Data Vault 2.0

Serviceorientierte Architektur Komplexitätsmanagement durch Integration

Enterprise Service Bus

New Features Oracle Forms 11g Nichts Neu für Forms?

Ansätze zur Synchronisation von Enterprise Architecture Management, Prozessmanagement und SAP. Ralf Ackermann Daimler AG, ITM MBC Powertrain

Eignet sich Eclipse RCP als Enterprise Plattform? 2. Mai 2006 Lars Stucki & Edwin Steiner

Massively Scalable Enterprise Applications. Chris Bernhardt

Best Practices für das Testen von SOAbasierten

Abb. 1: Schematische Architektur WebLogic-Server

Software Engineering II (IB) Serviceorientierte Architektur

Lösen Sie (fast) alle ihre Probleme mit Oracle Advanced Queuing. Performance Lastverteilung

Service-orientierte Architektur. Das nächste große Ding?

- Eine dienstbasierte Infrastruktur für mobile elearning-anwendungen - Stefan Kurz und Marius Podwyszynski

SAP Integration leichtgemacht

Transkript:

Konzeption und Implementierung von SOA Composed Services in der Praxis Markus Trenkle, Lyubomir Yordanov InterFace AG, Yordanov Consulting Nürnberg Schlüsselworte Systemarchitektur, Composed Services, SOA, BPEL, JDeveloper Einleitung SOA-Architekturen mit einem Enterprise Service Bus als zentrale Integrations- und Kommunikationskomponente sind für komplexe und heterogene IT-Landschaften besonders gut geeignet. Architekturen, die nach diesem Paradigma aufgebaut sind, basieren - wie der Name schon sagt - auf Services. Damit diese Services die für die Geschäftsprozesse notwendige Funktionalität erbringen können, werden sie in Hierarchiestufen aufgebaut, die immer genauer die Fachlichkeit abbilden. Insbesondere sind Services höherer Hierarchiestufen oft nur Kompositionen von Services untergeordneter Schichten. Das sind die sogenannten Composed Services. Es gibt unterschiedliche Techniken um Composed Services zu implementieren. In diesem Vortrag und der anschließenden Demonstration werden die Vorteile der Verwendung der Oracle SOA Suite und die Nutzung der SCA Spezifikation anhand eines praxisnahen Beispiels vorgestellt. Beweggründe / Ausgangslage Die am meisten verwendete Technologie in aktuellen SOA-Architekturen ist die Webservice Technologie. SOA bedarf allerdings eine Einführung und Einhaltung unternehmensweiter Standards, damit sie auch erfolgreich angewendet werden kann. Durch die besonderen Anforderungen an Design, Aufbau und Nutzung werden Webservices in der SOA Welt zu SOA Services. Diese besonderen Anforderungen sind sowohl technischer als auch fachlicher Natur. Jeder SOA Service muss z.b. fachlich motiviert sein und sich in einem für die Automatisierung der Geschäftsprozesse geeignet geschnittenen SOA Service Portfolio wiederfinden. Technisch gesehen werden beispielsweise Vorgaben für das Design der WSDLs und XSDs definiert, Namenskonventionen für Operationen und Datentypen eingeführt, besondere Versionierungsprinzipien eingehalten. Aus Sicht der Systemarchitektur sind SOA Services in definierten Infrastrukturlandschaften deployed, die nicht-funktionale Anforderungen wie Security, Hochverfügbarkeit, Lastverteilung usw. unterstützen. Wir unterscheiden generell zwei Arten von SOA Services: Elementare Services: bieten Funktionalität direkt an Composed Services: kombinieren andere SOA Services Die Geschäftslogik elementarer SOA Services erfüllt sehr heterogene Anforderungen. Auch wenn ihre Schnittstellen unternehmensweiten Standards unterliegen, spiegelt sich diese Anforderungen in der Nutzung unterschiedlicher Technologien und Programmiermodelle (Java,.Net, SAP, C++,...). Bei Composed Services dagegen ist die Funktionalität immer die Gleiche: Services werden anhand interner Logik aufgerufen, Datenmodelle werden transformiert, es wird ein Ergebnis zurückgegeben. Damit sind sie ideale Kandidaten für eine Standardisierung der Implementierung.

Ein Programmiermodell, das sich für SOA und Composed Services als besonders geeignet erwiesen hat, ist die Service Component Architecture (SCA). Auf diesem Modell basiert auch die Entwicklung von Composed Services mit der Oracle SOA Suite. Es handelt sich um einen sprach- und technologieneutraler Satz von Spezifikationen. SCA erlaubt eine vereinfachte Komposition von Services, indem es viele der Infrastrukturelemente abstrahiert, die für den Aufruf der benötigten Services notwendig sind. SCA definiert, wie die Komponenten zu erstellen, zu kombinieren und als neuer Service zusammenzufassen sind. SCA lässt sich mit bestehenden Konzepten sehr gut integrieren und ist der Standard für zukünftige SOA Anwendungen. Abbildung 1: Elemente der SCA Kernkomponente von SCA ist das Composite. Es besitzt eine Schnittstelle (das Service Element im Bild) und kann über References andere Services aufrufen. Sowohl für den Service als auch für die References können unterschiedliche Bindings verwendet werden WebService, JMS, usw. Die Geschäftslogik innerhalb des Composites wird von den Components ausgeführt. Das können Transformationskomponenten sein (Mediator), Business rules für Entscheidungen, BPEL Prozesse für die Steuerung des Ablaufs usw. Die Konfiguration dieser Komponenten und vom Composite selbst wird über Properties vorgenommen, die auf Composite-Ebene verfügbar sind. Das ist für Staging besonders wichtig, da Änderungen dieser Properties von betrieblichen Teams durchgeführt werden sollen z.b. URLs von Adressen benötigter WebServices usw. Die SCA Composed Services werden mit dem JDeveloper entwickelt. Die Komponenten eines Composites sind XML Dateien mit Instruktionen zu den Services Engines der SOA Suite (Mediator, Business Rules, BPEL, ). Da es sich um eine deklarative und konfigurative Art der Entwicklung handelt, werden Herausforderungen wie z.b. Parallelisierung, Optimierung der Marshalling- bzw. Unmarshalling Aktivitäten, Anwenden von Policies in PEPs (Policy Enforcement Points) usw. von der Infrastruktur übernommen und zur Laufzeit optimal ausgeführt. Das Composite ist eine gekapselte Einheit, die in die Laufzeitumgebung deployed werden kann. Über die unternehmensweite Nutzung der SOA Suite für SCA und Composed Services steht eine definierte Plattform für Deployment und Betrieb zur Verfügung.

Abbildung 2: SOA Suite als Plattform für den Betrieb von Composites Live-Demo In unserer Beratungsarbeit begegnen uns immer wieder Vorbehalte gegen den Einsatz der SOA Suite und der visuellen Programmierung in BPEL. Mit Vorführungen wie dieser versuchen wir, das Interesse zu wecken und die Vorteile herauszustellen. Dazu implementieren wir live einen einfachen Anwendungsfall. Abbildung 3: Anwendungsfall Ein PersonService verwaltet Vor- und Nachnamen sowie eine ID. Getrennt davon sind Adressen in einem eigenen AdressService gespeichert. Ein Servicenutzer möchte die Personendaten mit Adressen auslesen. Statt eines Aufrufs der beiden Services durch den Nutzer soll ein Composed Service die Anreicherung übernehmen. Vorbereitet haben wir die Entwicklungs- und Laufzeitumgebung. Sie besteht aus folgenden Komponenten: Oracle 11g Datenbank in einer virtuellen Maschine Oracle WebLogic Application Server in einer zweiten virtuellen Maschine. Neben der SOA Suite 11.1.1.7 sind darauf die beiden Person- und AdressService deployed

Entwicklungsumgebung (JDeveloper 11.1.1.7) auf dem Hostsystem Testanwendung SoapUI Schnittstellendefinition (wsdl) für den Composed Service, verfügbar im MDS Damit entsteht in ca. 20-30 Minuten ein System, das die beschriebenen Anforderungen umsetzt. Diese Lösung erhebt den Anspruch, produktionsreif zu sein. Lösungsarchitektur In der SOA Suite werden funktionale Bausteine innerhalb eines SCA erstellt. Diese Deploy-Einheit definiert die Schnittstellen nach Außen und den Informationsfluss zwischen den Bausteinen. Abbildung 4: Implementierung des Anwendungsfalls: SCA Ein BPEL-Prozess implementiert die Funktionalität jeweils einer Servicemethode. Der Mediator übernimmt die Verteilung der Anfragen auf die passende Implementierung. In unserem Anwendungsfall wäre dieser Schritt nicht nötig, da der Composed Service nur eine Methode anbietet, aber die Lösung sollte erweiterbar sein. Die Implementierungs selbst erfolgt in BPEL, sowohl im grafischen Editor als auch im xml-code. Ein typisches Codemuster ist die Abfolge Assign/Transformation: Zuweisen von Parametern an input-variablen Invoke: Aufruf eines Service Assign/Transformation: Verarbeiten und Transformieren von output-variablen

Abbildung 5: Implementierung des Anwendungsfalls: BPEL

Zusammenfassung Die Nutzung der Oracle SOA Suite erlaubt es, auf eine einfache Art und Weise und schnell performante, produktionsreife Composed Services zu entwickeln. Des Weiteren bringt diese Standardisierung auch Vorteile aus Projektmanagement-Sicht: Kostenreduktion durch Verwendung vordefinierter Konzepte für Entwicklung, Deployment und Betrieb Stabile Rahmenbedingungen für Governance Betrachtung des kompletten Lifecycles (Wartung und Pflege) Umgang mit strukturellen Gegebenheiten wie Personalaustausch Nutzung definierter Infrastruktur mit Support Kontaktadressen Dr. Markus Trenkle InterFace AG Südwestpark 37-41 90449 Nürnberg Telefon: +49 151 52726526 E-Mail markus.trenkle@interface-ag.de Lyubomir Yordanov Yordanov Consulting Bergstr. 11 D-90403 Nürnberg Telefon: +49 179 5472474 E-Mail lyubomir@yordanov.eu