1 / 32

Datenbanken und Internet

XML-Datei. XML-Datei. XML-Datei. XML-Schema oder DTD. XML-Datei. XML-Datei. Validating XML Parser. Application. Datenbanken und Internet. ?. Applikation / Anwendung. Was ist das eigentlich? Wofür und für wen? Wie ist das aufgebaut?  Architektur Schichten-Architektur

hu-alvarado
Télécharger la présentation

Datenbanken und Internet

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML-Datei XML-Datei XML-Datei XML-SchemaoderDTD XML-Datei XML-Datei Validating XML Parser Application Datenbanken und Internet ?

  2. Applikation / Anwendung • Was ist das eigentlich? • Wofür und für wen? • Wie ist das aufgebaut?  Architektur • Schichten-Architektur • SOA – Service Oriented Architecture • …

  3. Leitung Abteilungen, z.B.: Beschaffungswesen Produktion Vertrieb Unternehmung • Geschäftsprozesse / Business Processes (BP) • Interne/externe Abläufe und Kommunikation • können je nach Abeilung und Prozess unterschiedlich sein  viele eigenständige Anwendungen! Zum Gegensteuern: Enterprise Application Integration (EAI) z.B. durch Einführung von Enterprise Resource Planning (ERP) -Systemen

  4. Beispiel für BPin BPMN(Business Process Modelling Notation) Bild von:

  5. SOA - Service Oriented Architecture • An Geschäftsprozessen ausgerichtete IT-Infrastruktur. • In SOA werden Services (Dienste) lose miteinander verbunden. • Service Provider (bietet den Dienst an) • Service Consumer (ruft den Dienst ab) • Prinzip ist IT unabhängig, z.B. Restaurant, Dienstleistungsservices allgemein, …

  6. SOA Vorteile • Einfaches Austauschen von Services möglich (Beispiel: Kauf eines neuen CD-Spielers) • Anderer Ansatz als bei Objektorientiertem Programmieren! • Lose Verknüpfung ist flexibler/modularer, daher leicht an Änderungen anpassbar. • Konzentration auf BP  Übel bei der Wurzel packen, Vergleichbar mit Wahl des Algorithmus [O(n2)  O(n) bringt es!] • Langfristiger Kosten- und Effizienz-Vorteil! $$$$

  7. SOA Probleme • Modularisierungs – Komplexitäts Trade off • Bei hoher Modularisierung erreicht man hohe Flexibilität, wodurch aber die Komplexität steigt! • Never change a running system! • EAI-Gross-Projekte sind oft gescheitert • SOA ist vielversprechend aber noch sehr jung! • Standards noch nicht ganz stabil, • Werkzeuge entsprechend uneinheitlich • Bevor man auf das falsche Pferd setzt warten CIOs ab!

  8. SOA Voraussetzungen • BP muss sinnvoll erfasst und modularisiert werden.  Schwer!!!! • Darstellung z.B. über UML oder BPMN Schnittstellen müssen klar definiert werden! • In welcher Form erhält der Service Provider die Nachricht (Service Request)? • Was muss in dem Service Request alles enthalten sein? • Format, Struktur, Vokabular müssen passen.  Web Services

  9. Web Services • Web Services (allgemein): • Software-Anwendung • Identifizierbar durch URI • XML basiert • Interface basiert auf Internet Protokoll, z.B.: HTTP, FTP, SMTP, … • Klassische Beispiele: • Hotelbuchung, Flugbuchung, Autovermietung, Abrufen von Börsendaten, …

  10. Web Services • Zurzeit in drei Ausprägungen: • SOAP Web Services (das bekannteste) • Remote Procedure Call (RPC) Web Services • REpresentational State Transfer (REST) Web Services

  11. SOAP Web Services • Basiert auf Spezifikationen des W3C • Kodierung der Nachricht in XML (ausgenommen Daten-Anhänge, diese können binär sein) • Nachrichten müssen in SOAP enthalten sein, man spricht auch vom SOAP-Envelope (Briefumschlag) • Beschreibung des Service mittels Web Service Description Language (WSDL)

  12. RPC und REST Web Services • RPC Web Service • Kann, muss aber nicht mit SOAP sein • Arbeitet meist ohne automatische Service Beschreibung (WSDL) • Meist nur für kleine Anwendungen • REST Web Services • Andere (flexiblere) Adressierung • Mehr Details unter: http://www.oio.de/public/xml/rest-webservices.htm

  13. Die wichtigsten W3C WS-Spezifikationen WSDL Web Service Anbieter veröffentlichen binden SOAP UDDI Service Client Service Register finden

  14. Web Service Technologien Web Services • werden beschrieben durch WSDL (Web Service Description Language) • werden bekannt gemacht mittels UDDI(Universal Description, Discovery and Integration) • werden aufgerufen • über SOAP (früher: Simple Object Access Protocol, jetzt eigenständiger Name)

  15. SOAP History • SOAP Version 1.2 (Second Edition) • Z.B. SOAP Version 1.2 Part 0: Primer (Second Edition) W3C Proposed Edited Recommendation 19 December 2006 • http://www.w3.org/TR/2006/PER-soap12-part0-20061219/ • SOAP Version 1.2 • W3C Recommendation 24 June 2003 • SOAP Version 1.2 Part0: Primer • http://www.w3.org/TR/2003/REC-soap12-part0-20030624/ • SOAP Version 1.2 Part1: Messaging Framework • http://www.w3.org/TR/2003/REC-soap12-part1-20030624/ • SOAP Version 1.2 Part2: Adjuncts • http://www.w3.org/TR/2003/REC-soap12-part2-20030624/ • SOAP Version 1.2 Specification Assertions and Test Collection • http://www.w3.org/TR/2003/REC-soap12-testcollection-20030624/ • Simple Object Access Protocol (SOAP) 1.1 - W3C Note 08 May 2000

  16. SOAP Second Edition • “This second edition includes additional material on the SOAP Message Transmission Optimization Mechanism (MTOM), the XML-binary Optimized Packaging (XOP) and the Resource Representation SOAP Header Block (RRSHB) specifications.”  Nicht Simple!

  17. SOAP SOAP Messages enthalten (mindestens) einen Umschlag,einen Kopf und einen Rumpf. • Umschlag (Envelope) Definiert Start und Ende der Message • Kopf (Header) • Enthält Attribute, welche für die Verarbeitung der Message wichtig sind. • Rumpf (Body) • Enthält die Message,also die Informationen, • welche an den Empfänger gesendet werden • sollen.

  18. SOAP-Beispiel Beispiel aus: SOAP Version 1.2 Part 0: Primer (Second Edition)

  19. WSDL • WSDL definiert die Web Service Schnittstellen, • Datentypen,Protokolle • WSDL beschreibt : - die Nachrichten,die ausgetauscht werden - wie sie ausgetauscht bzw.veröffentlicht werden - wo der Service zu erreichen ist und • - mit welchem Protokoll

  20. WSDL • WSDL besitzt drei Hauptelemente: • Datentyp-Definition (types) • - Bestimmt Struktur und Inhalt der Message • Abstrakte Operationen (interface / operation) • - spezielle Operationen, welche auf dem • Message Inhalt ausgeführt werden dürfen. • Service Bindung (binding) - Bestimmt den Netzwerk-Transport, mit dem die Message übermittelt wird

  21. WSDL-Beispiel

  22. UDDI • Nicht W3C • Früher: IBM, HP und andere • Mittlerweile bei OASIS (Organization for the Advancement of Structured Information Standards) • 3. Version der Spezifikation • Siehe: www.uddi.org

  23. UDDI UDDI besteht aus drei Komponenten : - Weisse Seiten: Informationen über Unternehmen und ihre angebotenen Dienste. - Gelbe Seiten: Kategorisierung von Unternehmen nach z.B. Produktcode oder geografischem Ort. - Grüne Seiten: Technische Beschreibung des angebotenen Dienstes.

  24. UDDI • UDDI beschreibt ein Mechanismus zum Finden,Nutzen und Veröffentlichen von Diensten im Internet. • UDDI ist ein Register Service zum Speichern und Bestimmen von Web Service Interfaces. • Es finden Anmeldung/Abfrage von Web Service statt.

  25. Bis jetzt … • SOA ist toll … $$$ • Umsetzung einzelnerAufgaben durch WebServices • Z.B. SOAP, WSDL,UDDI basiert • Darstellung des BP z.B. mit BPMN

  26. Wie steuert man den Ablauf eines BP? • Orchestration – einer bestimmt (orchestration engine) und ruft in gewünschter Reihenfolge die entsprechenden Services auf. • Choreographie – jeder Service weiß was zu tun ist, sprich wem er Ergebnisse schicken soll (master plan known to everyone). Teile der Choreographie können orchestriert werden. Orchestration vs Choreographie == Ampel vs Kreisel

  27. Standards • BPEL4WS oder WS-BPEL (kurz BPEL – Business Process Execution Language) für Orchestration – OASIS Standard • Web Services Choreography Description Language (WS-CDL) für Choreographie – W3C • XML Process Definition Language (XPDL) alternative zu BPEL (Workflow orientiert  bezieht auch Human Interactions ein und nicht nur Web Service aufrufe) – Workflow Management Coalition (WfC)

  28. Wie führt man einen BP aus? BPELoderXPDL Designerz.B. basierend auf BPMN Visio, ActiveBPEL, … BPEL oder XPDLEngine

  29. Bis jetzt … • SOA ist toll … $$$ … wenn es passt! • Umsetzung einzelner Aufgaben durch Web Services • Darstellung des BP z.B. mit BPMN • Tools zur Erzeugung von BPEL oder XPDL • … wie baut man einen Web Service? siehe z.B. Web Tool Project (WTP) von Eclipse http://www.eclipse.org/webtools/ Projekt-Seite http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/ Tutorials

  30. Mind Map • Unterstützung für Aufgabe 22 • http://freemind.sourceforge.net/wiki/index.php/Main_Page

More Related