Professionelle Softwareentwicklung und Aufbau komplexer IT-Systeme

Größe: px
Ab Seite anzeigen:

Download "Professionelle Softwareentwicklung und Aufbau komplexer IT-Systeme"

Transkript

1 Grundlagen der Informatik Professionelle Softwareentwicklung und Aufbau komplexer IT-Systeme Prof. Dr.-Ing. Thomas Wiedemann HOCHSCHULE FÜR TECHNIK UND WIRTSCHAFT DRESDEN (FH) Fachbereich Informatik/Mathematik Gliederung Allgemeine Softwareentwicklung Aktueller Stand und Probleme Softwareentwicklungsmodelle Modellierung mit UML Aufbau und Administration komplexer IT-Systeme Einsatz von Web Services SOAP Service Orientierte Architekturen Das SOALution-Server-System für die Lehre Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 2 1

2 Allgemeine Situation bei der Softwareentwicklung Nach Statistiken (Quelle Gartner Group) sind im Durchschnitt: ca. 23 % aller Softwareprojekte erfolgreich, ca. 53 % aller Softwareprojekte über Budget und/oder über Zeit und ca. 24 % aller Softwareprojekte abgebrochen. Hauptprobleme: Softwareentwicklung stark geprägt von Fehleinschätzungen bezüglich Zeitbedarf, für die Projektorganisation, Kommunikation und die Programmierdauer selbst im Schnitt produziert ein Programmierer im längerfristigen Durchschnitt: LOC (Lines of Code) pro Arbeitstag laut [Mayr 2005] für Team-geeigneten, dokumentierten, zuverlässigen, test- und wartbaren Code Es gilt folgende Näherungsformel für die optimale Teamgröße: OptimaleMitarbeiterZahl = Wurzel aus ( ProjektdauerInPersonenMonaten ) Bei einem Projekt von 16 Personenmonate, wäre die optimale Teamgröße 4 Personen. Unter diesem Gesichtspunkten ist die Qualitätssicherung und Organisation bei der Softwareentwicklung von entscheidender Bedeutung für den Erfolg! Historisch entstanden verschiedene Modelle zur Organisation der Softwareentwicklung, welche nachfolgend kurz vorgestellt werden sollen... Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 3 Wichtige Software - Qualitätsmerkmale Funktionalität Software muß korrekt und angemessen arbeiten Zuverlässigkeit Software darf nicht so sehr versagen, dass physische oder grosse ökonomische Schäden verursacht werden. Wartbarkeit Software muß anpaßbar an neue Anforderungen sein. Software sollte möglichst plattformunabhängig sein. Effizienz Software muß ökonomischen Gebrauch von Ressourcen des unterliegenden Systems machen. Portabilität Software muß möglichst auf andere Betriebssysteme und Betriebs-systemversionen übertragbar sein Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 4 2

3 Software Qualitätsmerkmale II Benutzerfreundlichkeit Software muß sich nach den Bedürfnissen der Benutzer richten. Die Benutzerschnittstelle muß ergonomisch sein - Anforderungen in der Norm EN ISO 9241 geregelt Aufgabenangemessenheit Selbstbeschreibungsfähigkeit Steuerbarkeit Erwartungskonformität Fehlertoleranz Individualisierbarkeit Lernförderlichkeit Dokumentation muß in allen Detaillierungsgraden ausreichend zur Verfügung stehen. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 5 Softwareentwicklung nach dem Wasserfallmodell Beim Wasserfallmodell (von etwa 1970) werden iterativ die nachfolgenden Stufen durchlaufen. Der wesentliche Nachteil dieses Modells ist die lineare Struktur, welche nur einfache Rücksprünge erlaubt. Die Benennung der einzelnen Phasen hat sich generell durchgesetzt! Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 6 3

4 Softwareentwicklung mit dem Böhmschen Spiralmodell statt einfacher linearer Vorgehensweise mehrfache zyklische Wiederholungen mit ansteigendem Niveau durch frühe Prototypen geringere Gefahr von Fehlentwicklungen Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 7 Softwareentwicklung - Extreme Programing (XP) XP ist eine agile iterative Vorgehensweise mit leichtgewichtiger Methodologie und wenig Dokumentation und Overhead. User Stories: Die Anforderungen werden in User Stories erfasst. User Stories beschreiben GUIs, Funktionalitäten und Testszenarien. On-site Customer: Ein kompetenter Vertreter des Kunden ist während der gesamten Entwicklungszeit bei den Entwicklern anwesend (schwierig). Pair Programming: An den Entwicklungsrechnern sitzen jeweils zwei Entwickler und entwickeln gemeinsam. Testing: Vor der Entwicklung eines Moduls werden automatisierbare Testfälle (Unit Tests) programmiert. Simple Design: Es werden keine unnötigen Features implementiert. Small Releases: Es werden häufige Iterationen durchgeführt mit lauffähigen Programmen als Ergebnis, welche der Kunde begutachtet. Refactoring: Der Sourcecode wird eher früh restrukturiert. Continuous Integration: Von verschiedenen Teammitgliedern produzierter Code wird sehr häufig zusammengeführt. Collective Ownership: Der entwickelte Sourcecode gehört dem gesamten Team, jeder ist für jeden Code verantwortlich. Die Teams rotieren zyklisch. Coding Standards: Es werden Konventionen zum Aufbau des Codes erstellt, um Lesbarkeit zu erleichtern. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 8 4

5 Softwareentwicklung mit XP Verfahrensweise beim Extreme Programming : Quelle: Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 9 OO-Modellierung mit UML -Unified Modeling Language UML (Unified Modeling Language) ist ein Standard der OMG ( UML ist keine Methode, sondern definiert eine Notation und Semantik zur Visualisierung, Konstruktion und Dokumentation von Modellen für die Geschäftsprozessmodellierung und für die objektorientierte Softwareentwicklung. Um UML erfolgreich zu nutzen, ist es notwendig eine passende Methode zu entwickeln, die die UML unterstützt. Die UML wird seit 1998 als Standard angesehen. Entwickelt wurde die UML von Grady Boch, Ivar Jacobsen und Jim Rumbaugh von RATIONAL ROSE SOFTWARE. Viele führende Unternehmen der Computerbranche (Microsoft, Oracle, Hewlett- Packard,...) wirkten aktiv an der Entwicklung mit und unterstützen die UML. Die Modellierung erfolgt mit 13 verschiedenen UML-Diagrammtypen. Es werden nachfolgend die wichtigsten Typen vorgestellt. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 10 5

6 UML - Anwendungsfall- (Use-Case-) - Diagramm stellt die Beziehungen zwischen Akteuren und Anwendungsfällen dar. Es zeigt das äußerlich erkennbare Systemverhalten aus der Sicht eines Anwenders. Notation: Anwendungsfälle werden durch Ellipsen die den Namen des Anwendungsfalles tragen und einer Menge von beteiligten Objekten (Akteuren) dargestellt. Die Anwendungsfälle und Akteure (Strichmännchen) sind durch Linien miteinander verbunden. Die Systemgrenze wird durch einen Rahmen symbolisiert. Quelle: Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 11 UML Aktivitäts- (Activity) - Diagramm Aktivitätsdiagramme beschreiben Ablaufmöglichkeiten, die aus einzelnen Aktivitäten (Schritten) bestehen. Durch Zustandsübergänge (Transitionen) erfolgt die Aktivierung von Aktivitäten (jede Aktivität beginnt mit einer eingehenden Transition und hat eine oder mehrere ausgehende Transitionen.) Es sind Verzweigungen, Zusammenführung, Splittings (Fork -> Generierung paralleler Prozesse), Synchronisationen und Signalübermittlungen möglich. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 12 6

7 UML - Sequenzdiagramm (Sequence Diagram) Sequenzdiagramme zeigen den genauen zeitlichen Ablauf einer Reihe von Nachrichten (Methodenaufrufen) zwischen bestimmten Objekten in einer zeitlich begrenzten Situation. Dabei kann auch das Erzeugen und Entfernen von Objekten enthalten sein. Die Zeitlinie verläuft senkrecht von oben nach unten, die Objekte werden durch senkrechte Lebenslinien beschrieben und die gesendeten Nachrichten waagerecht entsprechend ihres zeitlichen Auftretens eingetragen.. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 13 UML - Klassendiagramm (Class Diagram) Das Klassendiagramm Diagramm beschreibt analog zur OO eine Menge von Objekten, in der die Eigenschaften (Attribute), Operationen und die Semantik der Objekte definiert werden. Mit speziellen Schlüsselwörtern können Meta- Klassen, Schnittstellen-Klassen und abstrakte Klassen dargestellt werden. << Metaklasse >> Klassenname Klassenname { abstrakt } grafische Darstellung der Vererbung die Eigenschaften der Oberklasse werden an die zugehörige Unterklasse vererbt. Quelle: Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 14 7

8 Anwendungsentwicklung auf der Basis von UML -> MDA MDA (Model Driven Architecture) ist ein Standard der OMG ( und definiert eine Vorgehensweise beim Softwareentwicklungsprozess unter Verwendung von UML. MDA basiert auf UML in der Version 2.0 (Unified Modeling Language) - veröffentlicht 2005 Die UML-Metadaten der OO-Modelle werden in Meta-Object Facilities gespeichert und können per XMI (XML Metadata Interchange) mit anderen UML- oder MDA-Tools ausgetauscht und erlaubt eine Automatisierung der Softwareerstellung. Die Modellierung der fachlichen Geschäftsprozesse ist von der Modellierung der technischen Realisierung getrennt. Die späte Wahl bzw. der spätere Wechsel der verwendeten technischen Plattform (z.b. Java EE,.NET) ist möglich. Bewährte Design Patterns, Best Practices und wiederverwendbare Komponenten werden unterstützt. MDA ist mit etablierten Entwicklungsprozessen und Vorgehensmodellen vereinbar (z.b. XP, RUP, Agile Modeling,..) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 15 Softwareentwicklung mit Web Services Bisher existierende Browser-Technologien für Webanwendungen sind ausgerichtet auf Bedienung oder Anwendung durch Menschen die verwendeten Technologien und Protokolle können zwar prinzipiell auch durch Programme verwendet werden, dies erfordert jedoch einen relativ hohen Aufwand (Simulation eines Bedienvorganges -> Posten eines Formulars -> Extraktion der Ergebnisdaten aus der Ergebnis-HTML-Seite bei altem Problem der fehlenden Content- Kodierung von HTML-Inhalten) bereits vorhandene Technologien für verteilte Softwareanwendungen (CORBA / COM) haben (und werden) sich in der Breite NICHT durchsetzen können ein neuer Ansatz zur Realisierung verteilter Anwendungen erscheint notwendig Web Services als Überbegriff für webbasierte Informationsdienste Potentiale von Web Services : direkte Kopplung von Softwareanwendungen über Web Services erlaubt Datenaustausch über IT- und Firmengrenzen hinweg viele verteilte Informationsprozesse könnten besser automatisiert werden : Anfragen und Buchungen von Reisen (Hotels, Flugtickets, Mietwagen) Anfragen und Verhandeln von Angeboten und Bestellungen (drastische Rationalisierung im Einkauf möglich!!!) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 16 8

9 Allgemeine Anforderungen an Web Services als Client treten Programme oder komplexe IT-Systeme auf Client-Applikation Internet Server Web Service Anforderungen (mit Hinweis zur aktuellen Lösung) 1. Vereinbarungen zum Transport der Daten (XML -> SOAP ) 2. Kodierung der Daten (XML -> SOAP ) 3. Protokoll zum Zugriff auf Web Service (HTTP -> SOAP ) 4. eindeutige Beschreibung eines Web Services (-> WSDL) 5. Firmenübergreifendes Suchen und Verwalten von Web Services (-> UDDI - siehe ) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 17 SOAP Grundkonzeption SOAP steht für Simple Object Access Protocol ist zur Beschreibung von Eingangsdaten und Ergebnisdaten von Webservices und zur Übertragung derselben konzipiert basiert auf XML und kann mit XML-Werkzeugen generiert und analysiert werden Historie: erstmals vorgestellt 1999 Hauptinitiatoren: Microsoft, IBM, W3C aktuelle Version: 1.2 Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 18 9

10 SOAP Grundgerüst SOAP-Nachrichten bestehen aus einem Gesamtumschlag (Container) kodiert durch Tag <Envelope> den Kerninformationen im Tagbereich <Body> (muß existieren) Zusatzinformation in <Header> und Fehlernachrichten über Tag <Fault> Das resultierende SOAP-Grundgerüst : <message: Envelope xmlns: message= www. w3. org/ 2001/ 12/ soap- envelope message: encodingstyle= www. w3. org/ 2001/ 12/ soap- encoding > <message: Header>... </ message: Header> <message: Body> <message: Fault>... <message: Fault> </ message: Body> </ message: Envelope> Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 19 SOAP-Headerinformationen der SOAP-Header definiert Rahmenbedingungen und Verarbeitungshinweise das actor-attribut gibt einen Verarbeitungshinweis an (hier..checkin) Das mustunderstand-attribut definiert, ob der Partner den Tag kennen und verstehen (=verarbeiten) können muß <message: Header> <info: country xmlns: info= www. europa. org/ country/ > <info: id actor= www. europa. org/ country/ checkin/ > GE- NRW </ info: id> <info: language message: mustunderstand=" 1"> GE</ info: language> <info: currency message: mustunderstand=" 0"> EURO</ info: currency> </ message: Header> Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 20 10

11 SOAP-Body der SOAP-Body kodiert die eigentlichen Daten im Beispiel fragt der Client dem Server "Einhaendler" nach dem Preis eines Artikels als Namespace (=xmlns) wird der Namespace des Händlers verwendet <message: Body> <preis: PreisAuskunft xmlns: preis= http// www. einhaendler. de/ preise/ > <preis: Artikel> NOKIA 8210</ preis: Artikel> <preis: Artikel> SINUS 710K</ preis: Artikel> </ preis: PreisAuskunft> <message: Body> Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 21 SOAP-Antwort und Fehlerinformationen die Antwort wird ebenfalls wieder als XML-Nachricht kodiert Fehlerinformationen können als Code oder im Klartext (Problem Sprachabhängigkeit -> deshalb Sprachangabe bei Request) zurückgegeben werden <message: Body> <message: Body xmlns: response= http// preise/ > <response: PreisAuskunftAntwort > <response: Artikel> NOKIA 8210</response: Artikel> <response: Preis>239</response: Preis> </response: PreisAuskunftAntwort> <message: Fault> <faultcode> message: Artikel</faultcode> <faultstring> Unbekannter Artikel</faultstring> <detail> Der von ihnen angegebene Artikel SINUS 710K ist uns nicht bekannt </detail> </message: Fault> </message: Body> Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 22 11

12 Transport von SOAP-Nachrichten Übertragung von SOAP-Nachrichten über alle Internetprotokolle : am Häufigsten über http Port 80 (zur Umgehung von Firewalls) auch Versand über SMTP/POP3/IMAP FTP prinzipiell ebenfalls möglich (größere Dateien für Batchverarbeitung?) HTTP/ OK Connection: close Content- Type: application/ soap; charset= utf- 8 Date : Tue, 28 May : 28: 03 GMT <?xml version= 1.0?> <message: Envelope xmlns: message= www. w3. org/ 2001/ 12/ soap- envelope message: encodingstyle= www. w3. org/ 2001/ 12/ soapencoding > <message: Body xmlns: response= http// www. einhaendler. de/ preise/ > <response: PreisAuskunftAntwort > <response: Preis> 239</ response: Preis> </ response: PreisAuskunftAntwort>... </ message: Body> </ message: Envelope> Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 23 SOAP-Tools Standardimplementierung für Apache-Webserver mit : Apache oder Tomcat-Webserver XML-Parser Xerces (ebenfalls von Apache-Group) SOAP-Engine Axis : Java-Implementierung der W3C Empfehlung zu SOAP basierend auf Apache SOAP 3.0 (komplett überarbeitet mit höherer Perf.) unterstützt die Web Service Description Language (WSDL- siehe hinten) automat. Generierung von Java-Clients durch Verarbeitung der WSDL- Datei nicht nur Versendung über HTTP, sondern auch FTP etc. Weitere Tools von bekannten Herstellern, insbesondere Software AG mit Tamino XML-Datenbank IBM Websphere-Entwicklungsumgebung Microsoft -.NET-Framework mit SOAP-Modulen Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 24 12

13 SOAP-Bewertung Alle Vor- und Nachteile der XML-Basis : trotz großer Flexibilität noch relativ gut beherrschbar gut lesbar, aber relativ umfangreiche Dateien breites Angebot an XML-Werkzeugen (XML-DB, freie Parser) Gute Unterstützung durch die meisten Programmiersprachen (fertige Java- und C++-Bibliotheken) Noch offen sind Sicherheitsfragen (z.z. lösbar durch SSL oder andere Kryptografieprotokolle) Probleme der Zugriffsberechtigung (ebenfalls lösbar über bereits existierende Protokolle, z.b. https o.ä.) Ausblick: sehr gute Perspektive infolge breiter Unterstützung durch alle wichtigen IT-Firmen SOAP oder Nachfolgeprotokolle dürften zum Industriestandard werden Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 25 Beschreibung von Web-Services Verfügbare Web Services werden beschrieben durch die Web Service Description Language (WDSL) WSDL definiert : die Nachrichten, welche ausgetauscht werden, wie sie ausgetauscht werden, wo der Service zu erreichen ist und mit welchem Protokoll. Bestandteile einer WSDL-Definition sind: Datentypdefinitionen für den Datenaustausch (<types>) Nachrichtendefinitionen (<message>) Porttypes zur Beschreibung der abstrakten Kommunikationsart zwischen den Partnern (One-way, Request-response, Solicitresponse, Notification) Bindings zur konkreten Definition des Austauschprotokolls (<bindings>) Services zur Zusammenfassung von mehreren Ports (<services>) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 26 13

14 WSDL-Beispiel zu Datentypen und Messages <?xml version="1.0"?> <definitions name="stockquote" targetnamespace=" <types><schema targetnamespace=" xmlns=" <element name="tradepricerequest"> <complextype> <all><element name="tickersymbol" type="string"/></all> </complextype> </element> <element name="tradeprice"> <complextype> <all> <element name="price" type="float"/> </all> </complextype> </element> </schema> </types> <message name="getlasttradepriceinput"> <part name="body" element="xsdl:tradepricerequest"/></message> <message name="getlasttradepriceoutput"> <part name="body" element="xsdl:tradeprice"/></message> Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 27 UDDI Verfügbare Webservices werden verwaltet durch : Universal Description, Discovery and Integration (UDDI) Entwicklungsbeginn September 2000 Begründer : Microsoft, Ariba, IBM etc. (heute über 200 Firmen) UDDI-Überblick eine Programmers-API spezifiziert ca. 30 Methoden zum Beschreiben, Suchen und Publizieren von Web-Services Kommunikation komplett über SOAP-Nachrichten UDDI-Operationen sind sehr einfach gehalten: Keine logischen Operatoren Keine kombinierten Anfragen Rudimentäre Infrastruktur Entwickler gehen von einer Integration in intelligentere Systeme aus Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 28 14

15 UDDI-Infrastruktur Ziel ist Schaffung eines unabhängigen Firmen- und Diensteverzeichnisses : Gegenwärtig 3 Teile: 1. white pages - mit Adresse, Kontaktinformationen und Ansprechpartnern 2. yellow pages mit einer Einordnung des Unternehmens nach einheitlichen Richtlinien gemäß Geschäftsbereich 3. green pages mit technischen Informationen über die angebotenen Dienstleistungen und Verweisen zu genauen Spezifikationen angebotener Web Services oder anderen Informationsquellen, soweit erforderlich UDDI-Geschäftsverzeichnis ist logisch zentralisiert, aber physikalisch verteilt auf verschiedene Knotenpunkte, die sich ständig gegenseitig auf dem Laufenden halten. soll jederzeit für jeden frei zugänglich sein. gegenwärtig zwei Knotenpunkte, betrieben von Microsoft und IBM Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 29 Motivation für Service-Orientierte-Architekturen Aktuelle Hauptprobleme komplexer Softwaresystem : - durch historische Entwicklung sehr heterogene Struktur der Hard- und Software (im Bankgewerbe bis zu 30 Jahre alte Software + HW-Reste) - Definition wesentlicher Parameter (z.b. Art der Bearbeitung eines Kundenauftrages als Funktion der Bestellhöhe) INNERHALB der Softwarepakete und damit zentral schlecht zu warten - bei Übernahmen oder Fusionen müssen verschiedene Systeme miteinander gekoppelt werden, meist Schnittstellenexplosion ( n*(n-1) -Schnittstellen bei n Systemen) System 2 System 1 System 3 System 4 System 5 Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 30 15

16 Typische Probleme bei der Änderung bestehender Systeme Die 3 Todsünden : eine Anwendung macht einen spezifischen Funktionsaufruf zu einer anderen Anwendung über ganz konkrete Parameter (bei einem Wechsel zu einer anderen, ähnlichen App. wird diese Funktion anders definiert sein ) Datentransformationen zu und von anderen Apps oder zum Bus sind innerhalb der aufrufenden Anwendungen kodiert Prozesslogik ist innerhalb der Anwendungen kodiert, d.h. das Routing ist mit der eigenen Logik meist untrennbar verbunden Anwendungen kennen die Details von anderen Anwendungen sie machen Annahmen sie sind fest gekoppelt ihre Granularität ist zu hoch Anwendungen wissen, wann sie andere Anwendungen aufrufen (fest kodiertes Prozessverhalten) Es gibt auch bei den Bussen und Hubs keine globalen Standards, sondern nur meist Lieferantenspezifische Quasistandards (nach IBM, Oracle, Microsoft etc.) Fazit: Das Hauptproblem ist die (zu) FESTE Kopplung der Systeme! Ausweg : Lockere und flexiblere Kopplung der Systeme! Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 31 Probleme mit Punkt zu Punkt-Verbindungen Application 1 Application 2 Application 3 Application 4 Application 5 Application 6 Applikation 7 Application 8 In General : 10 applications require 90 connections Quadratisches Wachstum der Schnittstellen (Spaghettisystem) 10 Systeme = 90 Schnittstellen 50 Systeme = 2450 Schnittstellen 100 Systeme = 9900 Schnittstellen (= nicht beherrschbar) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 32 16

17 Bisherige Integrationsansätze II 2. Hub & Spoke Kopplungen Alle Anwendungen sind verbunden über zentralen Server (Hub). Es ist ein zentrales Austauschformat definiert, in welche alle speziellen Formate transformiert werden müssen. Die Verteilung (das Routing) der Daten wird durch spezielle Regeln und/oder Algorithmen auf dem zentralen Server definiert. System 1 System 2 Zentraler Server (Hub) System 3 System 4 Vorteile geringe Anzahl (linear zur Anzahl Systeme) relativ lose Kopplung Nachteile Starke Abhängigkeit vom Hub (Kapazität, Ausfall?, Performance, Formate) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 33 Bisherige Integrationsansätze - Message-Bus 3. Message-Bus-Architektur (auch Publish/Subscribe -Architektur) Alle Systeme sind in Reihe mit einem Kommunikationsbus verbunden und tauschen mit diesem direkt Daten aus. Jede Anwendung muss einen entsprechenden Adapter bereitstellen. System 1 System 2 Adapter Adapter Message-Bus Adapter Adapter System 3 System 4 Vorteile relativ störsicher gut skalierbar, auch durch Aufteilung / Bus- Segmentierung Nachteile Für jeden konkreten Bus müssen die jeweiligen Adapter programmiert werden und sind meist nur für diesen passfähig Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 34 17

18 Service-Orientierte-Architekturen Zur Behebung dieser Probleme wird derzeit der Begriff SOA - Service Oriented Architecture stark diskutiert! SOA ist kein Produkt oder Standard sondern ein Konzept : Aufbau komplexer Systeme durch autarke, lose koppelbare und austauschbare Services (Web-Services) Schnelle (Um-)Konfiguration des Ablaufs von Geschäftsprozessen durch externe Beschreibung der Logik Einbeziehung auch alter Software durch Wrapper (Hüllen für Software) Ziele: Deutlichere Verbesserung der Agilität und Flexibilität aller Prozesse! Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 35 Alternativer Lösungsansatz mit SOA Behebung der Probleme durch folgende Maßnahmen Lösung lose gekoppelte Dienste! anstelle stark gekoppelter Objekte, Komponenten und Anwendungen SOA-Komponente Kopplung mit Enterprise-Service- Bus (ESB) grobe Granularität Prozess-Orientierung Ablauflogik aus der Businesslogik herausnehmen feiner Granularität Funktions-Orientierung sie in der Businesslogik zu implementieren grobgranulare Services SOA-Prozesse Service- Orchestrierung im ESB) standardisierte Dokumentstrukturen Produkt und Busspezifischer Dokumente Kanonische Dokumente Konfiguration Programmierung Mapping und Orchestrierung durch ESB-Tools Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 36 18

19 Aufbau von Service-Orientierte-Architekturen SOA Webservice - Ochestration with Rule- Interpeter Webservice 1 Webservice 2 Webservice 3 XML XML Enterprise Service Bus XML XML Webservice 4 Webservice 4 Webservice 4 (Wrapper) (Wrapper) (Wrapper) Application Application Application BPEL/ BPMN Process descriptions Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 37 Übergang zu einer SOA Typisches Beispiel: Einkaufsprozess mit zusätzlicher Genehmigung durch Chef bei einem Einkaufswert > x ( x: Firma : , Uni : 100!) Bisher : Prozesslogik ist innerhalb der Services kodiert Bestellantrag (x>1000) S Genehmigung S Lösung: Services werden von außerhalb orchestriert! Bestellantrag D1 BA SOA ESB (x<=1000) (y=ok) Genehmigung D1 GN D1(x>1000) S D2 S D1(x<=1000) Bestellung Bestellung D1 B D2(y=ok) Physische Adressen Transformatoren Quelle der Grafiken : SOCON Inc. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 38 19

20 Service Contract Definition SOA - Services SOA - Services sind grob granular (coarse grainded) lose gekoppelt über Messagebus (Message Oriented Infrastructure) verbunden durch Vereinbarung von Schemas und Verträge (und nicht über konkrete Funktionen und Datentypen) The ABC of Services Address Binding - Contract Service Endpoint Address Binding Service Implementation Service Description Quelle der Grafiken : SOCON Inc. Beschreibung Policy (Security Protocol, QoS) Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 39 SOA - Kanonische Dokumente und Adapter Der Datenaustausch wird im ESB über universelle Zwischenformate realisiert sog. Kanonische Dokumente + Adapter im ESB Zentrales Glossar System ID System Name IT Architektur Man. IT FIN Account Nr. Amount Description SYS ID Service VFBK RT Fin.Syst.Nr. Reliabiliy SYS Name FC Nr. Appl.ID Budget Maintenance Time Beschr. System ID Reliability Maintenance Time Account Nr. Glossar Variable ITAR MFIN FB SLM System Name Account Nr. System ID Account System ID SYS ID Appl. ID SYS Nr. Anw. Nr. Description SYS Canonical System Name Name Account Nr. FC Nr. Fin.Syst.Nr. Anw. Name XML Document Amount Budget Betrag Description Beschr. Zweck Description Account System ID System ID System Name Maintenance Time Service Reliabiliy VFBK Verfügbarkeit Reliability Maintenance Time RT Wartungszeit Zweck Betrag Anw. Nr. Wartungszeit SYS Nr. Anw. Name Verfügbarkeit FB SLM Quelle der Grafiken : SOCON Inc. Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 40 20

21 SOA - Kanonische Dokumente und Adapter Über entsprechende Translatoren (teilweise als Mappingtools vom ESB bereitgestellt) werden die spez. Dokumente in kanonische Dokumente gewandelt. Die Steuerung erfolgt im ESB und wird durch eine spezielle Beschreibungssprache (BPEL) innerhalb einer Service-Flow-Engine (=Regelinterpreter) konfiguriert! Kanonische Dokumente K1 und K2 Publisher Bestellantrag Enterprise K1 Service K2 Bus D1 Translator Service Flow Engine Prozess Modell BA X(K1)>1000 GN S ID(GN) OD(GN) ID(B)) S X(K1)<=1000) x(k1)>1000) (x(k1)<=1000) v (y(k2)=ok) Y(K2)=ok) Genehmigung Publisher & Subscriber Quelle der Grafiken : SOCON Inc. ID(X): Input Dokument OD(X): Output Dokument Bestellung Subscriber B Standard Prozess-Beschreibung mit BPEL BPEL4WS - Business Process Execution Language (BPEL) Process BPEL Description Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 41 Prozessmodellierung mit BPEL Umsetzung des Beispiels mit BPEL Bestellantrag S (x>1000) (x<=1000) Genehmigung S (y=ok) Bestellung BPEL mit Standard-Support von großen Herstellern beschreibt im XML Format: - den Ablauf der Anwendungen - Typen von verteilten Daten - wie Partner eingebunden werden - Handhabung von Fehlern - Beziehungen - Handhabung von Ereignissen Quelle der Grafiken : SOCON Inc. partnerlinks definieren involvierte Partner sequence, switch - Prozessfluss invoke Service Aufruf Weitere Sprachelemente: reply while pick wait empty throw terminate compensate Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 42 21

22 Modellierung von Geschäftsprozessen Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 43 SOA Zusammenfassung und Bewertung Vorteile von SOA Bessere, schnellere und flexiblere Integration, Prozess Orientiert Häufigere Wiederverwendung von composite Services Einbindung von Legacy Systemen durch Wrapping (Hülle um Std.-Software) Standardisierte, Prozess Orientierte Daten Representation Standardisierte Business Prozess Representation (ggf. austauschbar oder abstimmbar über Firmengrenzen -> Supply Chain Management) Transformation der IT vom Kostenfaktor zum strategischen Asset Zusammenrücken der Fach- und IT Bereiche -> Schaffung agiler Unternehmen Nachteile und offene Fragen teilweise erheblicher Aufwand der Umstellung (allerdings ROI < 1..2 Jahre) SOA ist kein Standard/konkrete Technologie, sondern ein Konzept! Die konkreten Eigenschaften sind (noch) stark von Lieferanten des ESB abhängig (noch) Performanceprobleme durch XML-Datenaustausch Firmen-spez. ESB doch wieder nicht kompatibel BPEL (noch) keine gute Unterstützung von Adhoc-Prozessen und Human- Interactions (aber in Entwicklung) Fazit : SOA (oder Nachfolger) dürften die entscheidende Technologien der nächsten Jahre im Bereich komplexer IT-Architekturen sein! {Beobachten und Testen!} Grundlagen der Informatik Teil 3 - Prof. T.Wiedemann - HTW Dresden - Folie 44 22

Service-orientierte-Architekturen (SOA)

Service-orientierte-Architekturen (SOA) Vorlesungsreihe Entwicklung webbasierter Anwendungen ervice-orientierte-architekturen (OA) Prof. Dr.-Ing. Thomas Wiedemann email: wiedem@informatik.htw-dresden.de HOCHCHULE FÜR TECHNIK UND WIRTCHAFT DREDEN

Mehr

Professionelle Softwareentwicklung und Aufbau komplexer IT-Systeme

Professionelle Softwareentwicklung und Aufbau komplexer IT-Systeme Grundlagen der Informatik Professionelle Softwareentwicklung und Aufbau komplexer IT-Systeme Prof. Dr.-Ing. Thomas Wiedemann email: wiedem@informatik.htw-dresden.de HOCHSCHULE FÜR TECHNIK UND WIRTSCHAFT

Mehr

Integration im Enterprise Umfeld

Integration im Enterprise Umfeld Integration im Enterprise Umfeld Sven Tissot pdv Technische Automation + Systeme GmbH Hamburg DOAG 2007 pdv Technische Automation + Systeme GmbH, 2007 1 Eckdaten Individual-Software Client/Server- und

Mehr

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

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik SOA Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik Laderampen müssen passen Modularisieren Softwarearchitektur Modul A Modul B Modul C Modul D Große Anwendung im Unternehmen Modul

Mehr

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

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

Mehr

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

Web Services und entsprechende Protokolle (SOAP)

Web Services und entsprechende Protokolle (SOAP) Vorlesungsreihe Entwicklung webbasierter Anwendungen Web Services und entsprechende Protokolle (SOAP) Prof. Dr.-Ing. Thomas Wiedemann email: wiedem@informatik.htw-dresden.de HOCHSCHULE FÜR TECHNIK UND

Mehr

Web Services Die Definition von Web Services in der Theorie und FNT-Command als Web Service in der Praxis

Web Services Die Definition von Web Services in der Theorie und FNT-Command als Web Service in der Praxis Web Services Die Definition von Web Services in der Theorie und FNT-Command als Web Service in der Praxis Philipp Tendyra Web Service in kurzen Worten dient der Kommunikation zwischen verschiedenen Systemen

Mehr

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider Wissenschaftliche Vertiefung Web Services Esslingen, 22. Januar 2016 Agenda 1. Einführung 2. Serviceorientierte Architektur 3. SOAP Web Service 4. Standards und Protokolle von SOAP Web Services 5. Bewertung

Mehr

UML (Unified Modelling Language) von Christian Bartl

UML (Unified Modelling Language) von Christian Bartl UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...

Mehr

Grundlagen der Web-Entwicklung INF3172

Grundlagen der Web-Entwicklung INF3172 Grundlagen der Web-Entwicklung INF3172 Web-Services Thomas Walter 16.01.2014 Version 1.0 aktuelles 2 Webservice weitere grundlegende Architektur im Web: Webservice (Web-Dienst) Zusammenarbeit verschiedener

Mehr

Seminar E-Services WS 02/03 BPEL4WS. Business Process Execution Language for Web Services. Mirwais Turjalei SES 02 BPEL4WS

Seminar E-Services WS 02/03 BPEL4WS. Business Process Execution Language for Web Services. Mirwais Turjalei SES 02 BPEL4WS Seminar E-Services WS 02/03 BPEL4WS Business Process Execution Language for Web Services 02.12.2002 Themen: Einleitung! Was ist BPEL4WS?! Warum BPEL4WS?! Stellung in der Web-Service-Architektur BPEL4WS

Mehr

Web Services. Standards und Realisierung in Java

Web Services. Standards und Realisierung in Java Standards und Realisierung in Java http://werner.gaulke.net 4.6.2007 Idee Aufbau und Standards und Java Outline 1 Idee Idee hinter? 2 Aufbau und Standards Schichtenmodell WSDL Fazit WSDL SOAP Fazit SOAP

Mehr

Oracle JDeveloper 10 g

Oracle JDeveloper 10 g Oracle JDeveloper 10 g Modellierung Evgenia Rosa Business Unit Application Server ORACLE Deutschland GmbH Agenda Warum Modellierung? UML Modellierung Anwendungsfall (Use Case)-Modellierung Aktivitätenmodellierung

Mehr

Techniken von Web Services

Techniken von Web Services Techniken von Web Services Neuer Wein in alten Schläuchen? Chris Hübsch chris.huebsch@informatik.tu-chemnitz.de 14. April 2003 Zusammenfassung Der Begriff Webservices stellt nach XML, XML-RPC und SOAP

Mehr

22. Januar Gruppe 2: TOPCASED

22. Januar Gruppe 2: TOPCASED 22. Januar 2008 Aufgabenstellung Modellgetriebene Softwareentwicklung auf Basis von am Beispiel eines Seminarverwaltungssystems Ziel Entwicklungsprozess Anforderungen & Codegenerierung Modellierung & Templates

Mehr

<Insert Picture Here> Einführung in SOA

<Insert Picture Here> Einführung in SOA Einführung in SOA Markus Lohn Senior Principal Consultant SOA? - Ideen Selling Oracle To All SAP On ABAP Increasing Sales Of Applications 3 Agenda Motivation SOA-Definition SOA-Konzepte

Mehr

Techniken von Web Services

Techniken von Web Services Techniken von Web Services Neuer Wein in alten Schläuchen? Chris Hübsch chris.huebsch@informatik.tu-chemnitz.de 14. April 2003 Zusammenfassung Der Begriff Webservices stellt nach XML, XML-RPC und SOAP

Mehr

Workflows ganz einfach Einführung in die Process Cloud

Workflows ganz einfach Einführung in die Process Cloud Workflows ganz einfach Einführung in die Process Cloud Dr. Thomas Schuster DOAG Konferenz 2015-18. November 2015 EINFACH MEHR > BEGEISTERUNG "Mit unserer Begeisterung für führende Technologien vernetzen

Mehr

PRODATIS CONSULTING AG. Folie 1

PRODATIS CONSULTING AG. Folie 1 Folie 1 Führend im Gartner Magic Quadranten für verteilte, interagierende SOA Projekte Oracle ist weltweit auf Rang 1 auf dem Markt der Enterprise Service Bus Suiten (ESB) für SOA Software 2010 26,3 %

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

SECTINO. Security for Inter-Organizational Workflows

SECTINO. Security for Inter-Organizational Workflows SECTINO Security for Inter-Organizational Workflows Framework zur Modellierung und Realsisierung sicherheitskritischer organisationsübergreifender Workflows Kooperation Research Group Quality Engineering

Mehr

Blockpraktikum Multimediaprogrammierung

Blockpraktikum Multimediaprogrammierung Blockpraktikum Multimediaprogrammierung 15. September 26. September 2008 Max Maurer Erfahrungsbericht Extreme Programming Kleiner Rückblick zur Vorlesung Prof. Heinrich Hußmann Agile Development for Multimedia

Mehr

SOAP Simple Object Access Protocol. Dr. Reinhard Riedl Universität Zürich/Universität Rostock

SOAP Simple Object Access Protocol. Dr. Reinhard Riedl Universität Zürich/Universität Rostock SOAP Simple Object Access Protocol Dr. Reinhard Riedl Universität Zürich/Universität Rostock Vision Implementierung von verteilten Systemen über Systemgrenzen hinweg Integration von heterogenen verteilten

Mehr

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2)

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2) Referat im Rahmen des Proseminars Internettechnologie WS 2007/2008 Thema: Web Services und serviceorientierte Architekturen (SOA) vorgelegt von: Intelligente Web Services sind für das Informationszeitalter,

Mehr

Web-Sevices : WSDL Entwicklung von Web-Anwendungen

Web-Sevices : WSDL Entwicklung von Web-Anwendungen Web-Sevices : WSDL Entwicklung von Web-Anwendungen Axel Reusch : ar047 MIB page 1 : 50 Agenda! Allgemeines! Prinzip! Anwendung! Details! WSDL und SOAP! Beispiel mit Java! Erweiterungen! Vorteile! Nachteile!

Mehr

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

Mehr

Testen von SOA-Anwendungen mit dem BPEL Testframework

Testen von SOA-Anwendungen mit dem BPEL Testframework Testen von SOA-Anwendungen mit dem BPEL Testframework Stefan Kühnlein IBM Deutschland Enterprise Application Solution GmbH Hollerithstr. 1 81829 München 0160/8848611 Stefan.Kuehnlein@de.ibm.com IBM Deutschland

Mehr

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer *Was sind Web Services? *Beispiele für Web Services *Web Service Architektur *Web Services Technologien *Fazit 2 *Übertragungsstandard

Mehr

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen?

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? Großer Beleg Christian Wurbs Zwischenbericht http://www.inf.tu-dresden.de/~cw6 cw6@inf.tu-dresden.de Überblick 2 Aufgabenstellung CORBA

Mehr

Unified Modeling Language 2

Unified Modeling Language 2 Unified Modeling Language 2 Marvin Frommhold 17.11.2008 Gliederung Einleitung Geschichte Strukturierung der Spezifikation Diagrammtypen Strukturdiagramme Verhaltensdiagramme CASE-Werkzeuge Quellen Was

Mehr

Enterprise Application Integration Erfahrungen aus der Praxis

Enterprise Application Integration Erfahrungen aus der Praxis Enterprise Application Integration Erfahrungen aus der Praxis Teil 4: EAI und.net, EAI und J2EE Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EAI und....net

Mehr

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

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit IBM Software Group IBM Rational mit RequisitePro Hubert Biskup hubert.biskup@de.ibm.com Agenda Rational in der IBM Software Group Der Rational Unified Process als Basis für die Projektarbeit mit Rational

Mehr

Architecture Blueprints

Architecture Blueprints Architecture Blueprints Daniel Liebhart, Peter Welkenbach, Perry Pakull, Mischa Kölliker, Michael Könings, Markus Heinisch, Guido Schmutz Ein Leitfaden zur Konstruktion von Softwaresystemen mit Java Spring,.NET,

Mehr

Von der Prozessanalyse zur Prozessautomatisierung

Von der Prozessanalyse zur Prozessautomatisierung Von der Prozessanalyse zur Prozessautomatisierung Patrick Horenburg IDS Scheer AG Saarbrücken Evgenia Rosa ORACLE Deutschland GmbH Berlin Schlüsselworte: Business Process Management, Prozessanalyse, Geschäftsprozess,

Mehr

Web Services Composition (BPWS4J )

Web Services Composition (BPWS4J ) Web Services Composition (BPWS4J ) Hager Markus, Kober Christoph, Linde Kai, Ott Florian, Erdmann Dennis Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße

Mehr

SOA mit.net: Vom Geschäftsprozess zur Lösung

SOA mit.net: Vom Geschäftsprozess zur Lösung SOA mit.net: Vom Geschäftsprozess zur Lösung Manfred Steyer Aktuelles Buch.Net 4.0 Update ISBN 978-3866454439 http://tinyurl.com/net4update 1 Kontakt [www] www.softwarearchitekt.at [mail] Manfred.Steyer@SoftwareArchitekt.at

Mehr

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools MOF Meta Object Facility Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools Überblick Object Management Group (OMG) Model Driven Architecture (MDA) Exkurs: Modelle, Metamodelle MOF Architektur

Mehr

Geschäftsprozessmodellierung essmodellierung mit BPEL

Geschäftsprozessmodellierung essmodellierung mit BPEL Geschäftsprozessmodellierung essmodellierung mit BPEL Autor: Stefan Berntheisel Datum: 8. Januar 2010 Stefan Berntheisel Hochschule RheinMain Fachseminar WS 09/10 Agenda Grundlagen Business Process Execution

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 9 UML Unified Modeling Language Universität Zürich Institut für Informatik 2006, 2008 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe sind

Mehr

3-schichtige Informationssystem-Architektur

3-schichtige Informationssystem-Architektur 3-schichtige Informationssystem-Architektur plattformunabhängig beliebige Endgeräte Client als Applikation & Applet XML über SOAP Standard plattformunabhängig objektorientierte Architektur multiuserfähig

Mehr

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl 26.07.21 Themenübersicht Objektorientierte Software-Entwicklung Objektorientierte Analyse und Design OOA OOD Objektorientierte

Mehr

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek Speaker Andreas Holubek VP Engineering andreas.holubek@arlanis.com arlanis Software AG, D-14467 Potsdam 2009, arlanis

Mehr

Webservices für eingebettete Systeme

Webservices für eingebettete Systeme Fakultät Informatik Institut für Angewandte Informatik, Professur Technische Informationssysteme Webservices für eingebettete Systeme Dresden, 29.06.2006 Gliederung Einführung Automobilindustrie Webservice

Mehr

Summer School. Offene Gebäudeautomation. WebServices, Application Server und weitere Konzepte EMR. aus: Distributed Systems, A. Schill, TU Dresden

Summer School. Offene Gebäudeautomation. WebServices, Application Server und weitere Konzepte EMR. aus: Distributed Systems, A. Schill, TU Dresden Summer School Offene Gebäudeautomation WebServices, Application Server und weitere Konzepte aus: Distributed Systems, A. Schill, TU Dresden EMR Beuth Hochschule für Technik Berlin SOAP (Simple Object Access

Mehr

Notationen zur Prozessmodellierung

Notationen zur Prozessmodellierung Notationen zur Prozessmodellierung August 2014 Inhalt (erweiterte) ereignisgesteuerte Prozesskette (eepk) 3 Wertschöpfungskettendiagramm (WKD) 5 Business Process Model and Notation (BPMN) 7 Unified Modeling

Mehr

Seminar Internet Dienste. Webservices

Seminar Internet Dienste. Webservices Universität Ulm Seminar Internet Dienste Webservices Matthias Kirchmayr, SS 2003 Inhaltsverzeichnis 1 Motivation 1 2 Definition 1 3 XML & Co. 3 3.1 XML - extensible Markup Language.................. 3

Mehr

Mail Integration Solution White Paper

Mail Integration Solution White Paper Integration Solution White Paper Inhalt Allgemeine Information... 3 IMAP... 3 Rapid Automation (RA)... 3 RA Agent... 3 RA Solution... 3 Integration Solution... 4 Anwendungsfälle... 5 Download eingehender

Mehr

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A POIS-Praktikum 2007 Prozessimplementierung, RosettaNet PIPs 3A Manuel Blechschmidt, David Foerster, Michael Leben, Mike Nagora, Jonas Rogge, Paul Römer Gliederung 2 Einleitung Was war unsere Aufgabe? Was

Mehr

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

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung IBM WebSphere Process Server Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung AGENDA 1. Überblick 2. WebSphere Process Server 3. Komponenten 4. Präsentation

Mehr

Software Engineering

Software Engineering Software Engineering Gustav Pomberger, Wolfgang Pree Architektur-Design und Prozessorientierung ISBN 3-446-22429-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22429-7 sowie

Mehr

Web Services. Web Services in the News. Vision: Web of Services. Learning for Results. DECUS Symposium 2002, Vortrag 1K07,

Web Services. Web Services in the News. Vision: Web of Services. Learning for Results. DECUS Symposium 2002, Vortrag 1K07, Web Services Vision: Web of Services Applikationen und Services Ralf Günther Compaq Computer GmbH, Köln Ralf.Guenther@compaq.com DECUS Symposium 2002, Vortrag 1K07, 16.04.2002 Web Services in the News

Mehr

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL Seminar E-Services WS 02/03 WSDL Web Services Description Language SES 02 - WSDL Zum Ablauf Einleitung Webservices und WSDL Grundlagen (XML - Schema und Namespaces) WSDL Syntax Beispiel Zusammenfassung

Mehr

Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert

Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert Partly based on material by Victor García Barrios and Paul Krzyzanowski

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Die Unified Modeling Language UML

Die Unified Modeling Language UML Informatik II: Modellierung Prof. Dr. Martin Glinz Kapitel 4 Die Unified Modeling Language UML Universität Zürich Institut für Informatik Inhalt 4.1 Hintergrund 4.2 Grundkonzepte der UML 4.3 Die Rolle

Mehr

Kapitel 5 Web-Services

Kapitel 5 Web-Services Kapitel 5: Web-Services 1 Kapitel 5 Web-Services 5.1 Web-Services Verwendung/Aufruf (Service Invocation) SOAP Beschreibung (Service Description) WSDL Repository/Verzeichnis (Service Discovery) UDDI 5.2

Mehr

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

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Entwicklung von Services mit Oracle SOA Suite oder JEE Markus Lohn SOA/Integration Architect 2 Copyright 2011, Oracle and/or its affiliates.

Mehr

Agenda. Web Services unter Lotus Notes/Domino

Agenda. Web Services unter Lotus Notes/Domino Agenda Vorstellung Was sind Web Services? Funktionsweise von Web Services Web Service Provider / Consumer Erstellen eines Web Service Providers Erstellen eines Web Service Consumers Tips & Tricks 2 Über

Mehr

Definition Web Service

Definition Web Service Gliederung Einführung Definition Web Service Drei Schhichtenmodell Architectural Model System Model Web Service Standards SOAP WSDL UDDI Types of Web Services Programmatic Web Services Interactive Web

Mehr

Die Nutzung von Webservices in der Oracle Datenbank. 11 März 2010

Die Nutzung von Webservices in der Oracle Datenbank. 11 März 2010 Die Nutzung von Webservices in der Oracle Datenbank 11 März 2010 Agenda Vorstellung Apps Associates Einstieg und Definition Webservice Definition Application Server / Oracle Application Server Oracle Webservices

Mehr

Zukunft der Oracle Applikationsentwicklung: BC4J & XML

Zukunft der Oracle Applikationsentwicklung: BC4J & XML 2 Jahre Niederlassung in München Trivadis GmbH Zukunft der Oracle Applikationsentwicklung: BC4J & XML Markus Heinisch 1 Agenda Tägliches Brot BC4J DEMO Applikation BC4J XML DEMO Applikation XML Fazit 2

Mehr

INSPIRE - Modellierung

INSPIRE - Modellierung INSPIRE - Modellierung Inhalt Motivation Modellierung UML Diagramme INSPIRE-Schulung LKROS 2 Motivation Was ist ein Modell, und warum wollen wir modellieren? Warum brauchen wir eine Modellierungssprache

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

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

Inhaltsverzeichnis. Einleitung Zielsetzung und Inhalt Didaktisches Konzept Voraussetzungen Literaturquellen... Inhaltsverzeichnis 1 2 Einleitung... 1 1.1 Zielsetzung und Inhalt... 1 1.2 Didaktisches Konzept... 2 1.3 Voraussetzungen... 5 1.4 Literaturquellen... 5 Geschäftsprozessmanagement und Prozessmodellierung...

Mehr

Microsoft.NET und SunONE

Microsoft.NET und SunONE Microsoft.NET und SunONE, Plattformen und Application Service Providing Agenda Einordnung.NET und SunONE Kurzvorstellung Gegenüberstellung Zusammenfassung ASP (Application( Service Providing) ) und Ausblick

Mehr

Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H)

Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H) Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H) Dominik Kirsten Daniel Schäferbarthold Trier, 21.01.2008 1 Gliederung 1. Einführung 1.1 Anforderungen an

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Dr. Dennis Pfisterer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Unified Modeling Language (UML)

Mehr

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

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

Dr. Jens Hündling Senior Sales Consultant. DOAG Apps 2011 Berlin, 05. Mai 2011 Business Management: Grundlagen, Business Process Life Cycle, Überblick Oracle BPM Suite 11g Dr. Jens Hündling Senior Sales Consultant DOAG Apps 2011 Berlin, 05. Mai 2011

Mehr

Systema rch itektu ren für Verteilte Anwendungen

Systema rch itektu ren für Verteilte Anwendungen Jürgen Dunkel Andreas Eberhart Stefan Fischer Carsten Kleiner Arne Koschel Systema rch itektu ren für Verteilte Anwendungen Client-Serwer Multi-Tier SÖÄ Ewent-Driwen Architectures P2P HANSER Inhaltsverzeichnis

Mehr

E-Services mit der Web-Service-Architektur

E-Services mit der Web-Service-Architektur E-Services mit der Web-Service-Architektur im Seminar Neue Konzepte anwendungsorientierter Middleware - Stefan Kürten - Literatur A. Tsalgatidou and T. Pilioura, An Overview of Standards and Related Rechnology

Mehr

Objektorientierte Systementwicklung

Objektorientierte Systementwicklung Karl-Heinz Rau Objektorientierte Systementwicklung Vom Geschäftsprozess zum Java-Programm Mit 162 Abbildungen vieweg Überblick und Vorbemerkungen 1 1 Objektorientierte Software-Entwicklung 5 1.1 Überblick

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

Mehr

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert Motivation UML 2.0 nicht als ADL im Sinne von Taylor/Medvidovic entworfen. Warum UML als ADL? weit

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 9 UML Unified Modeling Language Universität Zürich Institut für Informatik 2006, 2009 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für

Mehr

Performancebewertung und -Sicherung von orchestrierten Serviceangeboten

Performancebewertung und -Sicherung von orchestrierten Serviceangeboten Dmytro Rud Performancebewertung und -Sicherung von orchestrierten Serviceangeboten Verlag Dr. Kovac Hamburg 2009 nhaltsverzeichnis 1. Einführung 1 1.1. Motivation und Ziele 1 1.2. Aufbau der Dissertationsschrift

Mehr

WSDL. Heutige Vorlesung. Wozu WSDL? Wie wird WSDL verwendet? Language. Services. Description. Web. Abstrakte vs. konkrete Syntax

WSDL. Heutige Vorlesung. Wozu WSDL? Wie wird WSDL verwendet? Language. Services. Description. Web. Abstrakte vs. konkrete Syntax Heutige Vorlesung WSDL Prinzipieller Aufbau von WSDL-Beschreibungen Beschreibung von Protokoll-Bindungen in WSDL Vor- und Nachteile von WSDL Lernziel Google-WSDL lesen und erweitern können Klaus Schild,

Mehr

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

Service-orientierte Architektur. Das nächste große Ding? Business and Logistic Competence. Service-orientierte Architektur Das nächste große Ding? Dr. Bernd Grimm Agenda Service-orientierte Architektur Warum ist SOA ein Thema? Was versteht man unter SOA? Beispiel

Mehr

Software Engineering II (IB) Serviceorientierte Architektur

Software Engineering II (IB) Serviceorientierte Architektur Software Engineering II (IB) Serviceorientierte Architektur Prof. Dr. Oliver Braun Letzte Änderung: 16.05.2017 21:17 Software Engineering II (IB), Serviceorientierte Architektur 1/24 Webservices Ziel:

Mehr

Web Services: Inhalt

Web Services: Inhalt Web Services Fachseminar Verteilte Systeme 8. April 2002 - Marco Steiner Assistent: Thomas Schoch Professor: Dr. F. Mattern Web Services: Inhalt Bedeutung Gegenwart Architektur SOAP WSDL UDDI Vergleich

Mehr

Baut man eine SOA in der Datenbank?

Baut man eine SOA in der Datenbank? DOAG November 16, 2010 Andreas Gaede PITSS GmbH Baut man eine SOA in der Datenbank? Agenda: Motivation Beispiele Fazit SOA Betrachtung Vorgehensweise think BIG start small Oracle Anwender SOA in der DB

Mehr

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

About me. Hajo Normann SOA/BPM Architect at EDS, an HP company. Oracle ACE Director About me Hajo Normann hansjorg.normann@eds.com SOA/BPM Architect at EDS, an HP company Oracle ACE Director Speaker on several IT conferences: Jax, W-Jax, OOP Co-Author of several SOA/BPM articles, e.g.

Mehr

SOAP, WSDL, UDDI. Martin Grimmer. Proseminar: Die Zukunft der Softwareentwicklung: Komponentensysteme/Web Services Vortrag 1 am 21.06.

SOAP, WSDL, UDDI. Martin Grimmer. Proseminar: Die Zukunft der Softwareentwicklung: Komponentensysteme/Web Services Vortrag 1 am 21.06. Proseminar: Die Zukunft der Softwareentwicklung: Komponentensysteme/Web Services Vortrag 1 am 21.06.2006 Betreuer: Dipl.-Inform. Andreas Both Lehrstuhl Softwaretechnik und Programmiersprachen, Institut

Mehr

Architektur von SOAP basierten Web Services

Architektur von SOAP basierten Web Services Architektur von SOAP basierten Web Services André Homeyer 28.11.2005 Worst-Case einer verteilten Anwendung TravelTime Client Benutzerinterface WackyWing Server Flüge suchen TravelTime Server Flüge suchen

Mehr

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

Mehr

Konzeption und Implementierung von SOA Composed Services in der Praxis

Konzeption und Implementierung von SOA Composed Services in der Praxis 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,

Mehr

Das UML Benutzerhandbuch

Das UML Benutzerhandbuch Grady Booch James Rumbaugh Ivar Jacobson Das UML Benutzerhandbuch Aktuell zur Version 2.0 Inhalt Vorwort 15 Ziele 15 Publikum 16 Wie Sie dieses Buch verwenden sollten 16 Aufbau und besondere Merkmale 17

Mehr

Comelio GmbH - Goethestr Berlin. Kurskatalog

Comelio GmbH - Goethestr Berlin. Kurskatalog Comelio GmbH - Goethestr. 34-13086 Berlin Kurskatalog 2 Inhaltsverzeichnis a. Standorte...3 1. BPMN...4 i. Business Process Model and Notation mit Altova UModel...4 ii. Business Process Model and Notation

Mehr

Vortrag von: Ilias Agorakis & Robert Roginer

Vortrag von: Ilias Agorakis & Robert Roginer MDA Model Driven Architecture Vortrag von: Ilias Agorakis & Robert Roginer Anwendungen der SWT - WS 08/09 Inhalt Was ist MDA? Object Management Group (OMG) Ziele Konzepte der MDA Werkzeuge Vor- und Nachteile

Mehr

Webservices Ein Vortrag von:

Webservices Ein Vortrag von: Webservices Ein Vortrag von: Andreas Münstermann Michael Reiher Markus Buschky Gliederung Einführung in Webservices Technische Grundlagen SOAP UDDI WSDL Sicherheitskonzepte Blick in die Zukunft Einführung

Mehr

Microsoft.NET. InfoPoint 8. Juni 2005 Stefan Bühler

Microsoft.NET. InfoPoint 8. Juni 2005 Stefan Bühler Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler Inhalt Was ist.net Was steckt dahinter Warum ist.net so wie es ist Die Säulen von.net.net Framework 2.0 / VisualStudio 2005 Beispiel Referenzen & Links

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013 Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 7. Februar 2013 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion

Mehr

Persistente Prozesse mit ADF und BPMN 2.0

Persistente Prozesse mit ADF und BPMN 2.0 Persistente Prozesse mit ADF und BPMN 2.0 Markus Grünewald Practice Manager Consulting People at Work Systems AG Feringastrasse 10b, 85774 Unterföhring DOAG - November 2012 Oracle BPM 11g Rollenübergreifende

Mehr

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

SOA Blueprint. Ordnung im SOA Werkzeugkasten. Tobias Krämer OPITZ CONSULTING München GmbH SOA Blueprint Ordnung im SOA Werkzeugkasten Tobias Krämer OPITZ CONSULTING München GmbH München, 25.02.2010 OPITZ CONSULTING GmbH 2010 Seite 1 Agenda 1. Was beinhaltet das Thema SOA? 2. Eigenschaften einer

Mehr

Implementierung von Web Services: Teil I: Einleitung / SOAP

Implementierung von Web Services: Teil I: Einleitung / SOAP Implementierung von Web Services: Teil I: Einleitung / SOAP Prof. Dr. Kanne - FSS 2007 Carl-Christian Kanne, February 25, 2007 Web Services - p. 1/12 Web Services: Allgemein XML Datenaustauschformat plattformunabhängig

Mehr