Wiederverwendbare UIs in einer Enterprise SOA mit Oracle ADF

Ähnliche Dokumente
Lyubomir Yordanov byteletics OHG, Ralf Ernst - IT-Systemhaus der BA. Wiederverwendbare UIs in einer Enterprise SOA mit Oracle ADF

Praxisbericht Oracle JDeveloper 11g ADF Rich Client Entwicklung

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

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013

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

Konzeption und Implementierung von SOA Composed Services in der Praxis

Forms auf Tablets. Vision oder Realität?

Oracle Fusion Middleware Überwachung mit Oracle BAM

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

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

Ein- und Ansichten DOAG Regionaltreffen Bremen Oktober 2010

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

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

Softwareentwicklung mit Enterprise JAVA Beans

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

informatik ag IT mit klarer Linie S i e b e l O p e n U I

IDM: Identity Connector Framework (ICF) und SAP Connectors

Microsoft.NET Framework & Component Object Model. ein Vortrag von Florian Steuber

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

Enterprise Service Bus

1 Einleitung Wertorientierte Unternehmensführung Wertorientiertes Informationsmanagement... 85

Software Engineering

Enterprise JavaBeans Überblick

Serviceorientierte Architekturen

<Insert Picture Here> Einführung in SOA

M5000 einfach ablösen durch T4/T5 LDoms und Solaris Zonen

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

Motivation und Grundlagen

Die Erkenntnis von gestern muss heute mit einem neuen TEAM - Ihr Partner für IT 2

Potentiale modellgetriebener Softwareentwicklung

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

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015

Leistung schafft Vertrauen

egovernment beim Landratsamt Heidenheim Oracle Middleware

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

Der Tiger im Tank: PL/SQL-Logik in Java-Anwendungen optimal nutzen

Softwarearchitektur als Mittel für Qualitätssicherung und SOA Governance

Oracle CRM- Best Practices

Sichere Webanwendungen mit dem elektronischen Personalausweis Teil 2

BPM im Kontext von Unternehmensarchitekturen. Konstantin Gress

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

MHP Radio Frequency Solution Ihre Lösung zur effizienten Integration von Mobile Devices in Ihre Lagerabläufe!

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

B2B für meine Geschäftspartner

ODM. Bernd Weiler Nürnberg

Die Full Service E-Commerce-Agentur

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Aktuelle Anforderungen an die IT Abteilung

Mathematik Seminar WS 2003: Simulation und Bildanalyse mit Java. Software-Architektur basierend auf dem Plug-in-Konzept

Flexibilität im Prozess mit Oracle Business Rules 11g

Entwicklung und Integration mobiler Anwendungen. <Speaker> Oracle Deutschland B.V. & Co. KG

Wiederholung: Beginn

Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only

KoSSE Tag. Lübecker Logistik Datendrehscheibe. Wissenschaftszentrum Kiel 3.Juni L2D2 Lübecker Logistik Datendrehscheibe

DWH Automatisierung mit Data Vault 2.0

Comparing Software Factories and Software Product Lines

vcaire TM Die Produktsuite für Ihre Reporting-Bedürfnisse bmpi /6

Success Story. für die Unternehmen der

business.people.technology.

<Insert Picture Here> Forms / ADF 11g Migration und Interoperabilität

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

BPEL und Transaktionen

Business Process Management. Cloud und Mobile Computing. BPMday 2013 Köln, 13. November Enzo Favuzzi - Sales Manager WebCenter & BPM

Erläuterungen zu Darstellung des DLQ-Datenportals

Virtual Roundtable: Portale: Aktuelle Herausforderungen und Trends

Geschäftsprozessimplementierung mit BPMN, ADF und WebCenter

WebLogic Server: Installation Best Practices

IRRISS THE ENTERPRISE

Oracle Forms und APEX

Agile Architekturen für News Portale. Konzipieren Implementieren Erproben. Raimund Heid

Eine technische Plattform für Smart-Client-Systeme. Alexander Ziegler

Vorteile einer Tool gestützten Modernisierung von Forms und Reports

Verbundtests von Mobilgeräten und Backend-Systemen. Andreas Bartsch, exept Software AG

Architecture Blueprints

Inhaltsübersicht. Abbildungsverzeichnis...XVII. Tabellenverzeichnis... XIX. Abkürzungsverzeichnis... XXI

Datenmodellierung im Zeitalter agiler Softwareentwicklung

2.1 Ist-Anwendungslandschaften Programme zur Gestaltung von Anwendungslandschaften

Industrialisierte Oberflächenentwicklung mit Oracle ADF

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

Klaus Vitt Forum IT-Management Service Öffentliche Verwaltung 29. März Die Informationstechnik in der BA

Einfache Mainframe-Integration in.net/java/soa es geht wirklich

TITAN. Android Business Framework. Autor MD Software & Design

Experts in Finance Solutions

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

Service Virtualisierung

Der Nutzen einer integrierten Projektmanagementumgebung

Abb. 1: Schematische Architektur WebLogic-Server

Testen von SOA-Anwendungen mit dem BPEL Testframework

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

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Criteria API: Komplexe SQL Queries mit Eclipslink bauen

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

Eine Untersuchung der Funktionen des Apache Wicket Webframeworks

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

Virtual Unified Environments Infrastructure Service Installation und Lifecycle im Oracle Produktumfeld

Aufbau einer Web 2.0 Community mit Grails

Transkript:

Wiederverwendbare UIs in einer Enterprise SOA mit Oracle ADF Lyubomir Yordanov, Ralf Ernst byteletics OHG, IT-Systemhaus der Bundesagentur für Arbeit Nürnberg, Deutschland Schlüsselworte Oracle ADF, SOA, Geschäftsprozessorientierung, Wiederverwendung, Standardisierung, Oracle Service Bus (OSB) Einleitung Eine Enterprise SOA besteht typischerweise aus einer Integration von SOA Services, welche die Business-Logik einer Organisation implementieren und von verschiedenen Applikationen genutzt werden. Beschränkt sich eine SOA aber tatsächlich nur auf eine protokoll-basierte Lieferung von Funktionalitäten? Oder kann man diese Services durch wiederverwendbare UI-Komponenten erweitern? In ihrem Vortrag präsentieren Lyubomir Yordanov und Ralf Ernst einen pragmatischen Ansatz, wie SOA Services zusammen mit korrespondierenden, leicht integrierbaren UI-Komponenten auf Basis von Oracle ADF entwickelt und betrieben werden können. Sie zeigen hierbei ein Modell, wie diese Komponenten und Services zu funktionierenden, einfach zu betreibenden Anwendungen orchestriert werden können. Die beiden Referenten waren als Software- bzw. Systemarchitekten und Middleware- Spezialisten bei der Einführung und Entwicklung einer der größten, Oracle-basierten SOA Implementierungen Deutschlands maßgeblich beteiligt. Ausgangssituation Die IT-Unterstützung der Bearbeitung von Geschäftsprozessen großer, öffentlicher Organisationen wird oft durch die Bereitstellung eines breiten Portfolios an dedizierten Experten-Anwendungen gewährleistet. Die Herausforderungen bei der Integration dieser wurde bei der Bundesagentur für Arbeit erfolgreich durch die Einführung einer unternehmensweiten Service Oriented Architecture überwunden. Zusätzlich zu der Back End Integration über einen Enterprise Service Bus (OSB) und standardisierten SOA Services wurde auch die Front End Entwicklung verienheitlicht. Dazu wurden verbindliche Design und Style-Guides verabschieded und ein dediziertes Framework basierend auf Oracle ADF wurde erstellt. Die Look&Feel der heterogenen Anwendungslandschaft wurde dadurch weitgehend homogenisiert, um den Mitarbeitern eine hohe Ergonomie ermöglichen zu können. UI Geschäftsprozesssteuerung In der Strategie der IT Entwicklung gewinnen Geschäftsprozess-orientierte Web Anwendungen immer mehr Gewicht. Diese bauen auf der existierenden SOA Service Landschaft auf und bieten entsprechende, prozessorientierte UIs dem Anwender zur Verfürung. Die dafür genutzte ADF-basierte Technologie bildet den Rahmen und die Basis für die Realisierung der Oberflächen. Dabei wird für die Abbildung der Fachlichkeit eines Geschäftsprozesses/Kundenanliegens in Oberflächen, Funktionalität aus unterschiedlichen IT- Verfahren benötigt. Diese wird über SOA Services und den Oracle Service Bus bezogen.

Diese prozessorientierten Anwendungen sind sollen die separaten Experten-Systeme und somit die damit benötigten Übersprünge von Anwendung nach Anwendung ersetzen. Die Entwicklung der prozessorientierten Front Ends wird von dedizierten Teams übernommen, die entsprechendes, technisches Know How für die konkrete Nutzung der ADF Technologie und in der Prozessautomatisierung haben. Eine große Herausforderung entsteht dabei durch die Notwendigkeit an vielen Stellen tiefes, fachliches Know How zu dem entsprechenden Thema mitbringen zu müssen, um die UI geeignet zu entwickeln. Dieses Know How ist nur in den Teams vorhanden, die auch die Experten-Anwendung verantworten, deren Funktionalität jetzt über SOA Services angebunden wird. Im Best Case wird also eine Integration von Oberflächen benötigt, die von unterschiedlichen Teams entwickelt wird, sich allerdings nahtlos für den Endbenutzer innerlab einer prozessorientierten Anwendung integriert. Zu dieser Herausforderung wurden unterschiedliche Alternativen betrachtet, wie z.b. Nutzung von Remote Task Flows oder Übersprünge in unterschiedlichen Anwednungen mit gleichem Look&Feel. Im Hinblick auf den wichtigsten Anforderungen wurde die hier dargestellte Lösung erarbeitet: kontinuierliche Prozessorientierung Nutzung strikter, fachlicher Transaktionen unter einem Prozesskontext Realisierungs- und Wartungsaufwand Entwicklungsaufwände betriebliche Risiken und Aufwände Die Lösung basiert auf den Standardisierungsmöglichkeiten, die die Oracle ADF Technologie anbietet. Integrierbare ADF UI Komponenten (Mikroanwendungen) Die Standardisierungs-Features der ADF Technologie ermöglichen es die Entwicklung der Oberflächen zur Entwicklungszeit organisatorisch und physikalisch zu entkoppeln. Kernrolle dabei spielen die In- und Output Parameter der ADF Taskflows, sowie das bereits erstellte BA ADF Framework mit definierten Komponenten wie z.b. Tabellen, Eingabefelder usw.. Dialogen und Masken können in adflib.jar Dateien anhand des existierenden BA ADF Frameworks separat entwickelt werden und über fest definierte In- und Output Property Dateien angebunden werden, um zur Laufzeit wieder in eine Anwendung deployt zu werden: Abb. 1 Integrierte Mikroanwendung (Laufzeit) In dieser Abbildung wird die Realisierung eines schematischen Geschäftsprozesses dargestellt, bestehend aus drei Teilprozessen. Der erste und der dritte sind eher Standardprozesse, die in einem zentralen Team implementiert werden können. Der mittlere zeichnet sind allerdings mit einem hohen Bedarf an fachlichem Know How für eine geeignete Realisierung. Bei festdefinierten In- und Output Parametern des einrahmenden ADF Task Flows ist es möglich diesen auch tatsächlich in einem

separaten Team entwickeln zu lassen. Dann kann er nahtlos und ohne weiteren, technischen Anpassungen integriert werden. Somit können Anbieter von SOA Services auch die Bereitstellung dazugehöriger Oberflächen übernehmen, die für die Bearbeitung der entsprechenden Kundenanliegen notwendig sind und sich mit hohen, fachlichen Spezifika auszeichnen. Höhere Wirtschaftlichkeit, sowie Qualität werden dadurch ermöglicht. Mikroanwendungen Architektur Abb. 2 Mikroverfahren Architektur Mikroanwendungen sind somit logische Konstrukte zur Realisierung fachdomänen-spezifischer Arbeitsschritte in einer prozessunterstützenden Web Anwedung in einer SOA. Bestandteile einer Mikroanwendung sind: 1. Komponente(n) für die Oberfläche als ADF Taskflow(s). Diese ist sind in der Laufzeitumgebung der Prozessanwendunge deployt also extern ausserhalb der SOA Services anbietenden Anwendung. 2. Komponente(n) für die Bereitstellung der Geschäftslogik als SOA Service(s) - deren Implementierung ist sind in einer eigenständigen Anwendung zusammengefasst Diese Komponenten sind physikalisch getrennt und über den ESB verbunden. Der Kommunikationsmechanismus ist durch die Integrationsarchitektur des Unternehmens festgelegt (technische SOA) und hat keine Besonderheiten im Bezug auf diese Nutzung. Pro Mikroanwendung wird der benötigte Funktionalitätsausschnitt einer Experten-Anwendung in einem oder ggf. mehrere Composed SOA-Service zusammengefasst. Diese Composed SOA- Services sind Fassaden innerhalb der anbietenden Experten Anwendung, die andere (elementare) SOA- Services oder feingranulare Funktionalitäten aus der Geschäftslogik Schicht zusammenfassen. Die

Kommunikation zwischen dieser Fassade und den anderen Komponenten ist anwendungsintern (und nicht über den ESB). Beide Komponenten einer Mikroanwendung, also sowohl die SOA- Services als auch die Oberflächen dazu werden in der Organisationseinheit, die für die anbietende Anwendung zuständig ist. Also wo auch das fachliche Know How vorhanden ist. Die Oberflächen Komponenten werden nach den unternehmensweiten ADF Standards entwickelt und an die prozessunetrstützende Anwendung für die Laufzeit übergeben. Wichtigste Ziele dieser Form der Realisierung von integrierbarer Geschäftslogik sind: Entwicklung domänenspezifischer Komponenten durch das Team mit dem entsprechenden fachlichen Know-how Realisierung von Komponenten mit freier Benutzerführung ohne Aktivitätensteuerung (keine Benutzerführung), wie es in Experten Anwendungen üblich ist Bereitstellung standardisierter Oberflächenkomponenten durch SOA- Services zur Verwendung in anderen Anwendungen Aus Sicht der prozessunterstützenden Anwendung sind Mikroanwendungen wiederverwendbare Black-Boxes mit definierten Inputs und Outputs. Im Unterschied zur Variante mit Übersprungen in homogen aussehenden, separaten WebAnwendungen werden hier die kausalen Abhängigkeiten mit den weiteren Komponenten der Oberfläche beibehalten: es gibt sowohl fest definierte Einsprünge, als auch Zurücksprünge durch diese explizite, serialisierte Bearbeitung ist es nicht möglich, inkonsistente Zustände durch parallele Bearbeitung zu erzeugen einfache Ermöglichung von fachlichen Transaktionen Durch die Wiederverwendung von Mikroanwendungen werden fachliche Änderungen nur an einer zentralen Stelle durchgeführt - beim Team des SOA-Service Anbieters. Dabei sind die einer Mikroanwendung zugeordneten SOA Services nach den verabschiedeten technischen und fachlichen Standards im Unternehmen realisiert und können auch von anderen IT- Anwendungen/Mikroanwendungen verwendet werden. Die Anfroderungen für die Realisierung einer solchen Mikroanwendung definiert die prozessuntertützende Anwendung. Für die vollständige Abwicklung eines Geschäftsprozesses wird im Endausbau ihrereseits eine Mischung von internen Masken und Mikroanwendungen aufgebaut.

Abb. 3 Mikroanwendungen und SOA Services zur Realisierung eines Geschäftsprozesses Je nach benötigter Funktionalität stellt die Experten-Anwendung eine Mikroanwendung zur Verfügung. Unterschiedliche Teilprozesse bei der Abwicklung domänenspezifischer Fachlogik können unterschiedliche Mikroanwendungen benötigen. Diese Mikroanwendungen haben definierte Ein- und Zurücksprünge. Somit sind sie Ausschnitte aus der Funktionalität der anbietenden Experten- Anwendung mit klarer Abgrenzung zu den dazugehörigen Oberflächenkomponenten. IT-Anwendungen bieten auch normale SOA- Services an solche, die nicht einer Mikroanwendung zugeordnet sind oder in einer benutzt werden. Durch diese zwei Typen von Integrationskomponenten wird eine vollständige Abdeckung der Funktionalität und Integration einer existierenden Experten-Anwendung in eine neue, prozessorientierte Anwendung erreicht.

Interner Aufbau von Mikroanwendungen Abb. 4 Interner Aufbau von Mikroanwendungen In Mikroanwendungen sind drei Typen von ADF Taskflows vorgesehen: 1. Dialog Taskflow zur Orchestrierung von JSF-Seiten Fragmente 2. Seiten Taskflow zur Orchestrierung von JSF Seiten 3. Kontext Taskflow ohne Oberflächenelemente zur Orchestrierung von SOA Service Calls und Sub-Taskflows. Weitere Komponenten: 4. Die Nutzdaten (Kontext) in allen Taskflows werden per Taskflow Parameter in XML Form übergeben 5. Die Input- und Output Parameter des Kontext-Taskflows werden anhand der Anforderungen der Prozessanwendung definiert 6. Dadurch wird die Mikroanwendung nahtlos in eine existierende und ggf. im Vorfeld getestete Prozessanwendung nur durch kopieren der Artefakte integriert 7. Die Geschäftslogik wird im Regelfall über SOA Services angebunden. 8. Für den Fall, dass eine Mikroanwendung lokal, innerhalb der Oberfläche einer Expertenanwendung laufen soll kann eine zweite Implementierung der Zugriffschicht realisiert werden 9. Die jeweils notwendige Zugriffschicht wird über Injection zur Laufzeit eingesetzt (ohne Code- Anpassungen)

10. In externen Konfigurationsdateien werden die Endpunkte der benötigten SOA Services eingetragen Abgrenzung zu Micorservices Abb. 5 Mikroanwendungen sind keine Microservices Mikroanwendungen sind keine vollständigen, vertikalen Ausschnitte von Expertenanwendungen bestehend aus Oberfläche, Geschäftslogik und Daten (aka Microservices ) und werden nicht mit beliebigen Technoligien realisiert. Sie beruhen auf einer agilen und effizienten Bereitstellung von Businesslogik in variablem Prozesskontext allerdings über Technologien, die den konkreten Standards des Unternehmens entsprechen SOA Services über einen ESB (Oracle Service Bus), Java EE (Oracle WebLogic Service) und Oracle ADF. Zusammenfassung Mikroanwendungen sind eine Integrationsmöglichkeit für existierende Expertenanwendungen in SOA basierte, prozessorientierte Anwendungen. Dabei werden deren Oberflächen und die zugehörigen fachlichen Services zwar technisch getrennt, aber als gemeinsame entwickelbare und synchron aufrufbare logische Einheit gesehen. Eine Mikroanwendung ist folglich eine Kombination einer Ausprägung eines Systemtyps Prozessorientierte Anwendung mit der zugehörigen Ausprägung eines Systemtyps Experten Anwendung.

Kontaktadresse: Lyubomir Yordanov Byteletics OHG Josephsplatz, 8 D-90403 Nürnberg Telefon: +49 (0) 179-547 2474 E-Mail ly@byteletics.com Internet: www.byteletics.com Ralf Ernst IT-Systemhaus der Bundesagentur für Arbeit Regensburger Straße, 104 D-90478 Nürnberg Telefon: +49 (0) 171-688 6485 E-Mail ralf.ernst@bundesagentur.de Internet: www.arbeitsagentur.de