Hartmut Wedekind (Erlangen)

Slides:



Advertisements
Ähnliche Präsentationen
Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
Advertisements

C ommon O bject R equest B roker A rchitecture
Saxonia Systems Saxonia Systems AG
DI Christian Donner cd (at) donners.com
Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS
Was ist J2EE Die Vorteile von J2EE J2EE Modell Die Komponente von J2EE
SOAP Simple Object Access Protocol
Übung 5 Mehrstufige Client/Server-Systeme mit Enterprise Java Beans
WS06/07Prof. Dr. Andreas Schmietendorf1 Programmierung von Client/Server- Anwendungen Übersicht zur Vorlesung.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Web Services und Workflow-Steuerung
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Business to Business Integration anhand von ERP-Systemen
Microsofts XML-Strategie aus Sicht des Endanwenders Klaus Rohe Developer Platform & Strategy Group Microsoft Deutschland GmbH.
Kommunikation in verteilten Systemen (Middleware)
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
7 Verteilungsabstraktion
XML in Client-Server und GRID Architektur
JAVA RMI.
Introducing the .NET Framework
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Überlegungen zur Architektur eines Fachinformations-Netzwerkes am Beispiel des CeGIM Mehrwert ist es nicht nur, Daten von ihren Quellen zu den Nutzern.
M A P K I T Management eines J2EE basierten eCommerce Systems am Beispiel des ATG Dynamo Applikationsservers und BMC Patrol als Managementframework.
Rechnernetze und verteilte Systeme (BSRvS II)
UML Begleitdokumentation des Projekts
BPEL Erweiterungen Christoph Schulz. Agenda 1.Einführung 2.BPEL4People 3.BPELJ 4.II4BPEL 5.Ausblick BPEL Erweiterungen - Christoph Schulz.
Software Architektur III
Web Services Die Zukunft netzbasierter Applikationen iternum GmbH Alexanderstraße Frankfurt/Main
Software Architektur IV
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
ArcGIS als WPS Server Aktueller Stand der Umsetzung
Integration heterogener verteilter Systeme mit WS-BPEL – ein Praxisbeispiel Dr. Wolf-Dieter Heinrichs.
Webservice Grundlagen
Xenario IES Information Enterprise Server. Xenario Information Enterprise Server (IES) Die neue Architektur des Sitepark Information Enterprise Servers.
Service Orientierte Architektur
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Christian Krause, URZ Jena Bereich P – IDM Arbeitsgruppe
Architekturen und Techniken für computergestützte Engineering Workbenches.
Einführung in die Konzepte zur Entwicklung verteilter Anwendungen
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
Beschreiben Sie eine Web Interaktion mittels Java Applets.
Telesnap 2009 Release OCS Gateway.
UML-Kurzüberblick Peter Brusten.
Management- und Web Services- Architekturen
XML (Extensible Markup Language)
Einführung in Web Services Web Services in der Praxis
Web 2.0 Interaktives Internet.
Projekt Pokémon (CSL) Evaluation Technologien / Entwicklungsumgebungen Schlusspräsentation, Philip Iezzi, BDLI 2.
Dr. Alois Schütte Definition Middlerware
Vassil Dimov.  Was ist Blue Age  Eigenschaften  Möglichkeiten  Hello World (Beispiel)  Entity Creation(Beispiel)  Benefit.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Vortrag - Diplomarbeiten (HS I)
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
1 Users Conference April 1997 Vienna Wolfgang Korosec ID - Anwenderunterstützung.
Welcome to Web Services & Grid Computing Jens Mache
Trigger-abhängige Client Interaktionen (bezüglich Oracle8i)
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
Sicherheitsaspekte in Service Orientierten Architekturen Eike Falkenberg Sommersemester 2006 Anwendungen I.
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
Application Infrastructure Technologies Extending OnPremise EAI to the Cloud Wilfried Mausz BSc. dataformers GmbH Lothar Mausz dataformers.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
1 Lutz Ullrich SOA – serviceorientierte Architektur SOA – Was ist das?
Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen.
Webservices SOAP und REST Nicole Fronhofs 1. Betreuer: Prof. Dr. Volker Sander 2. Betreuer: B. Sc. Sebastian Olscher.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Web Services Dr. Wolfgang Wörndl
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
Business Process Excuction Lanaguage
Business Process Excuction Lanaguage
Investitionen sichern - wachse mit Forms in die neue Welt
 Präsentation transkript:

Hartmut Wedekind (Erlangen) Die Lehre über Service Orientierte Architekturen (SOA) - Eine Entwicklungsgeschichte – Hartmut Wedekind (Erlangen) Gliederung: 1. Die Entwicklung aus dem Prozedurkonzept bis zum vier-stufigen Aufbau (2001) 2. Und dann kam BPEL (2002) 3. Und nun kommt BPMN 2.0 (2011)

1. Die Entwicklung aus dem Prozedur-Konzept 1. Die Entwicklung aus dem Prozedur-Konzept bis zum vier-stufigen Aufbau (2001) 1.1 Die Trennung von Argument und Funktion bei Frege (1848-1925) (Gottlob Frege: Funktion und Begriff , 1891) Mathematik: f(x) = 1 + x2 (vor der Trennung) f(.) = 1 + (.)2 (nach der Trennung mit x als Argument und f(.) als Funktion) (.) heißt Leerstelle, vom logischen Standpunkt das blanke Nichts, wie eine isolierte Variable x. Frege sagte für (.) auch Platzhalter. f(.) heißt bei Frege ungesättigte Funktion, die keinen Wahrheitswert haben Nach der Sättigung gilt z.B.: „f (3) = 10“  wahr. Dies ist eine wahre Aussage. „f (3) = 11“  falsch. Dies ist eine falsche Aussage.

Sprache : Caesar eroberte Gallien ( Aussage) (.) eroberte Gallien (Aussagefunktion, ungesättigt) oder (x) eroberte Gallien (Aussagefunktion) x = Objektvariable, die bei Sättigung einen Nominator z. B. einen Eigennamen „ Caesar“ annehmen kann. Es gilt nach der Sättigung: „Caesar eroberte Gallien“  wahr „ Augustus eroberte Gallien“  falsch Ich kann die ungesättigten Funktionen aussortieren und einem Bereich zuordnen, den ich Server nenne. Argumente werden ebenfalls als Lieferanten einem Bereich zugeordnet und den nenne ich Client. Und schon ist sie da: Die Client Server Architektur ( besser mit Aufbau bezeichnet)

1.2 Remote Procedure Call (RPC, manchmal auch RFC mit F für Function) Call (zweistellig) ist eine Aufforderung. Caller (der Rufer) ist der Client (aktiv) . Zur “Kolonialzeit”: Master Callee (der Angerufene) ist der Server (passiv). Zur “Kolonialzeit” : Slave Es ist an eine synchrone (gleichzeitige) Kommunikation gedacht. Nicht asynchron(verschoben). Der Fernaufruf: Eingeführt 1984: Andrew D. Birrell, Bruce Jay Nelson; Xerox Palo Alto Research Center (Hrsg.): Implementing Remote Procedure Calls. ACM Transactions on Computer Systems, Vol.2 No.1, February 1984, Seiten 39-49, 1984 (http://www.cs.yale.edu/homes/arvind/cs422/doc/rpc.pdf). Mit RPC wird der Begriff „stub“ eingeführt. Wikipedia: A stub in distributed computing is a piece of code used for converting parameters passed during a Remote Procedure Call (RPC). Statt “Parameter” darf man “weltweit” auch “Argumente” sagen.

Und dann kam 1990 CORBA der OMG: Wikipedia sagt: Die Common Object Request Broker Architecture (CORBA, englisch für Allgemeine Architektur für Vermittler von Objekt-Anforderungen) ist eine Spezifikation für eine objektorientierte Middleware, deren Kern ein sog. Object Request Broker, der ORB bildet, und die plattformüber-greifende Protokolle und Dienste definiert. Sie wird von der Object Management Group (OMG) entwickelt. CORBA-konforme Implementierungen vereinfachen das Erstellen verteilter Anwendungen in heterogenen Umgebungen Damit hätten wir eine 3. Schicht (Communication), eingeklemmt zwischen Client und Server Als Begriff wird SOA 1996 von Gartner eingeführt Gartner ist ein Anbieter, der Marktforschungsergebnisse und Analysen über die Entwicklungen in der IT anbietet (laut Wikipedia)

Wo bleibt die 4. Schicht? Sie entsteht durch die große Spaltung des klassischen Servers (so um 2000) in Application Server und Database Server mit dem Aufkommen des Begriffs “Business logic” Jim Gray glaubte noch, die “Business Logic” in “Stored Procedures” innerhalb einer DB unterbringen zu können. (Jim Gray: “The Revolution in DB-Architecture” (2004). U.a. sagte er mit Blick auf die Stored Procedures” The integration of languages with databases eliminates the inside-the-database/outside-the- database dichotomy that we have lived with for the last 40 years." Das war ein Irrtum! Auch Päpste können sich irren

Das Zustandekommen des Begriffs “ Application Server” ist schillernd Das Zustandekommen des Begriffs “ Application Server” ist schillernd. Jablonski e.a. (“Web Application and Platform Architectures(2004)“ verweisen auf den berühmten Monson-Haefel: “ EJB” (2001) Application Server i. e. S. = def EJB-Server = def Business Logic-Server Application Server i. w. S. 0=def EJB-Server + Web-Server + DB-Server Das ist die Java Plattform J2EE bzw. heute Java Enterprise Edition 5 für Frameworks wie JBoss, Netweaver

2. Und dann kam BPEL (2002) Wikipedia Die WS-Business Process Execution Language (BPEL) ist eine XML-basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft eingeführte Sprache wird zur Beschreibung der Orchestrierung von Webservices verwendet. Die Beschreibung selbst wird ebenfalls in Form eines Webservice bereitgestellt und kann als solcher verwendet werden. Durch die Abstraktion mittels BPEL kann die Schnittstelle eines übergeordneten Webservice beschrieben werden, der die an einem Prozess beteiligten Webservices steuert, beispielsweise in welcher Reihenfolge Nachrichten eintreffen müssen. WS-BPEL ist Teil der sogenannten WS-*-Spezifikationen BPEL ist eine Programmiersprache ohne Grafik

BPEL (Blockprinzip) und BPMN ( Flussprinzip) im Vergleich (aus BPMN 2 BPEL (Blockprinzip) und BPMN ( Flussprinzip) im Vergleich (aus BPMN 2.0 der OMG, S.446)

Jusuttis (2008) “ SOA in der Praxis” führt SOA als eine Entwicklungsmethodologie “bottom-up” ein. entnommen aus : N. Jusuttis “SOA in der Praxis” (2008) , S.89

Enterprise Service Bus (ESB), nach Wikipedia: Wörtlich übersetzt dient ein Enterprise Service Bus dazu, „mittels eines Datenbusses Dienste in einem Netzwerk eines Unternehmens zur Verfügung zu stellen“.[1] Im deutschen Sprachraum hat sich jedoch keine Übersetzung durchgesetzt. Enterprise Service Bus ist heute als Begriff der deutschen Fachsprache allgemein akzeptiert. Auch wenn der Name anderes suggeriert, ist das Prinzip auch außerhalb der Anwendungslandschaft eines Unternehmens (engl. enterprise) gültig. Der Begriff Enterprise Service Bus wurde 2002 durch die Firma Gartner geprägt.[2] Vorläufiger Höhepunkt war das SOA-Manifesto (2009), verfasst von den „SOA-Stars“ : Erl , Josuttis, Krafzig u.a.

Aber es kam die Lose Kopplung zwischen Anwendung (Frontend) und System (Backend). Lose Kopplung versus Enge Kopplung (nach Josuttis (2008) bzw. Krafzig (2004): Tabelle: Formen loser Kopplung (aus Josuttis 2008, bzw. Krafzig 2004)

3. Und nun kommt BMPN 2.0 (2011) ( vor allem die Dissertation von Volker Stiehl (Darmstadt 2011) : http://tuprints.ulb.tu-darmstadt.de/2751/ Lose Kopplung Top Down Entwurf (ohne BPEL) Applikation in BPMN 2.0 modelliert und in einem Java EE -Framework (z.B. Netweaver, JBoss, Spring) in Einsatz gebracht (deployed). Von SOA zu POA (Process Oriented Architecture) zu PDA (Process Driven Architecture, Deutsch: Prozessgesteuerte Architektur)

Servicevertrag definiert durch Verbundanwendung Architektur von Verbundanwendungen (composite application) nach Volker Stiehl Systeme Geschäftsprozesse Service-Bereitstellung Servicevertrag- Implementierungs-schicht Geschäftsobjekte & Dienste Benutzeroberflächen Verbundanwendung BACKEND Rolle 1 Business Partner UI App. Service SVI Servicevertrag-Implementierung SVIS Schritt 1 Schritt 2 Schritt 3 Step 4 Applications Legacy/DB Services SAP 3rd Party/DB Schritt 4 Schritt 5 Schritt 6 Schritt 7 Schritt 8 Rolle 2 Rolle 3 Rolle 4 Servicevertrag definiert durch Verbundanwendung

Vereinfachte Darstellung (Vorher) (Seiten 14-17 entnommen aus V Vereinfachte Darstellung (Vorher) (Seiten 14-17 entnommen aus V.Stiehl :http://tuprints.ulb.tu-darmstadt.de/2751/

Vereinfachte Darstellung ( Nachher)

2-Schichten Modell

3-Schichten Modell