Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter.

Ähnliche Präsentationen


Präsentation zum Thema: "Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter."—  Präsentation transkript:

1 Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter

2 Management von Schnittstellen-Informationen
Consultants Schwerpunkt CORBA Hobby OTS Webservices natuerlich interessant

3 Agenda Einführung XML Metadata Interchange Format
Vom Code zur Information Integrationszentrum Metadaten Zusammenfassung Einführung : Kurze Motivation webservices kennt jeder, deshalb nur kurz TA-Grundlagen

4 Wo sind IT Informationen ?
In Fachkonzepten, Datenbankmodellen, Repositories, Programmcode, UML-Modellen und in den Köpfen der Mitarbeiter ! Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

5 Wie liegen die Informationen vor ?
Fachkonzepte : textuell, auf Papier. Datenbankmodelle : elektronisch, standardisiert. Repositories : elektronisch, proprietär. Programmcode : praktisch kaum zu nutzen. Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

6 UML-Modelle Elektronisch. Dateizentriert. Proprietär. Schwer auswertbar. oder im XMI Format ! Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

7 Agenda Einführung XML Metadata Interchange Format
Vom Code zur Information Integrationszentrum Metadaten Zusammenfassung Einführung : Kurze Motivation webservices kennt jeder, deshalb nur kurz TA-Grundlagen

8 XML Metadata Interchange Format
Erster Vorschlag wurde am 6. Juli 1998 von DSTC, IBM, Oracle, Platinum und Unisys eingereicht. Implementierung des IBM XMI-Toolkits seit dem 30. Juli 1999. Version 1.1 ist seit dem 03. Februar 2000 offiziell von der OMG verabschiedet. Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

9 XMI Scope Konsequenter Metadaten-Ansatz.
Selbstbeschreibung der Metainformation. Herstellerunabhängiges Format. XML-basiert. UML-Daten sind nur ein möglicher Einsatzbereich. Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

10 Das XMI Metamodell Ebene 0 : Auftrag ‘4711’ Ebene 1 : Objekt ‘Auftrag’
Ebene 2 : UML Ebene 3 : MOF Ebene 3++ : MOF ! Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

11 UML DTD Abbildung der bekannten Diagrammtypen : Klassendiagramme,
Use-Case-Diagramme, Sequenzdiagramme, Aktivitätsdiagramme, ...

12 XMI und seine Mit- / Gegen-Spieler
WSDL Web Service Description Language UDDI Universal Description, Discovery and Integration WfMC XPDL XML Process Definition Language *.MDL Rational Roses proprietäres Format Begeisterungsmaximum Gartner < und > RPC gibt’s seit Jahrzehnten das Bewaehrte uebernehmen starre Kopplung wird gelockert UDDI vs. Naming / Trading

13 Tools ( kleine Auswahl )
Rational Rose TogetherJ ArgoUML MagicDraw Repositories

14 Agenda Einführung XML Metadata Interchange Format
Vom Code zur Information Integrationszentrum Metadaten Zusammenfassung Einführung : Kurze Motivation webservices kennt jeder, deshalb nur kurz TA-Grundlagen

15 Informationsgehalt von ‘Code’ (1)
class Account : public virtual POA_simple1::Account { String_var m_id; Double m_oldamount; Double m_amount; simple1::Customer_var m_customer; public: virtual Double balance ( ) throw ( SystemException ); virtual Boolean transfer ( Double amount, simple1::Account_ptr other ) throw ( SystemException); virtual Boolean change ( Double amount ) };

16 Informationsgehalt von ‘Code’ (2)
class Account : public virtual POA_simple1::Account { String_var m_id; Double m_oldamount; Double m_amount; simple1::Customer_var m_customer; public: virtual Double balance ( ) throw ( SystemException ); virtual Boolean transfer ( Double amount, simple1::Account_ptr other ) throw ( SystemException); virtual Boolean change ( Double amount ) }; Implementierung. Attribute. Vererbungs-Beziehungen. Nutzungs-Beziehungen. Methodensignaturen. Exceptions.

17 Informationsgehalt von ‘Code’ (3)
class Account : public virtual POA_simple1::Account { String_var m_id; Double m_oldamount; Double m_amount; simple1::Customer_var m_customer; public: virtual Double balance ( ) throw ( SystemException ); virtual Boolean transfer ( Double amount, simple1::Account_ptr other ) throw ( SystemException); virtual Boolean change ( Double amount ) }; Implementierung. Attribute. Vererbungs-Beziehungen. Nutzungs-Beziehungen. Methodensignaturen. Exceptions. Schnittstelle

18 Separation von Interface / Implementation
Trennung von internen Implementierungsdetails und allgemein verbindlicher Schnittstelle Trennung von konkreter Lösung und unveränderlichen Anforderungen Trennung nach Sichtbarkeitsbereichen

19 XMI-UML-Modell Package ‚Foundation.Core‘, View ‚Backbone‘

20

21

22

23

24 Ein einfaches Modell Simple.mdl Simple.mdl xmiToolkit Simple.xmi

25 XMI Beispiel

26 Transformation ‚XMI zu Code‘ (1)
<?xml version='1.0'?> <xsl:stylesheet xmlns:xsl=' <xsl:output method="text" media-type="text/plain"/> <xsl:template match="/"> // Test-Methoden <xsl:apply-templates select="//Foundation.Core.Class </xsl:template> <xsl:template match="Foundation.Core.Class"> <xsl:variable name="className" select="Foundation.Core.ModelElement.name" /> <xsl:apply-templates select=".//Foundation.Core.Operation ]"> <xsl:with-param name="className" select="$className" /> </xsl:apply-templates> Selektion der Klassen

27 Transformation ‚XMI zu Code‘ (2)
<xsl:template match="Foundation.Core.Operation"> <xsl:param name="className" /> <xsl:variable name="methodName"><xsl:value-of select="$className" />::<xsl:value-of select="Foundation.Core.ModelElement.name" /></xsl:variable> /* * Test fuer Methode : '<xsl:value-of select="$methodName" />' */ cout << "<xsl:value-of select="$methodName" />() = " << <xsl:value-of select="$methodName" />( <xsl:for-each select=".//Foundation.Core.Parameter and <xsl:variable name="idref" <xsl:variable name="type" select="//Foundation.Data_Types.Primitive <xsl:choose> <xsl:when test='$type="String"'> "TEST" </xsl:when> <xsl:when test='$type="Long"'> 123 <xsl:otherwise> // Fehler, Unerwarteter Typ eines Parameter </xsl:otherwise> </xsl:choose> <xsl:if test="position() != last()">, </xsl:if> </xsl:for-each>) << endl; </xsl:template> </xsl:stylesheet> Selektion der Methoden und Parameter

28 Transformation ‚XMI zu Code‘ (3)
// Test-Methoden /* * Test fuer Methode : 'Auto::holeGeschwindigkeit' */ cout << "Auto::holeGeschwindigkeit() = " << Auto::holeGeschwindigkeit( ) << endl; * Test fuer Methode : 'Auto::setzeFhrgstNr' cout << "Auto::setzeFhrgstNr() = " << Auto::setzeFhrgstNr( 123 Erzeugter Code

29 Agenda Einführung XML Metadata Interchange Format
Vom Code zur Information Integrationszentrum Metadaten Zusammenfassung Einführung : Kurze Motivation webservices kennt jeder, deshalb nur kurz TA-Grundlagen

30 Komplexe Strukturen ... Sockets Screen Down- scrape load file ORB
Trans- action Message queue Sockets ORB RPC CICS gateway APPC

31 ... vereinfachen Integrations- Infrastruktur

32 Hub’n’Spoke Technische Anpassung Ort Betriebssystem Programmiersprache
Inhaltliche Anpassung Semantik Format Abstraktion / Spezialisierung Nabe

33 Realisierung einer ‘Speiche’
1. Umsetzung der Daten in ein Document. 2. Transformation mittels XSLT. 3. Transport der serialisierten, transformierten Daten ( z.B. mit CORBA, RMI, COM+ ). 1 2 3 Nabe

34 Datenbeschaffung Abbilden einer Struktur in ein Baum ‘per Hand’ .
Generierung des Adapters aus vorhandenen Modellen. Zugriff auf Daten aus einer JDBC-DB mittels XLE. Extraktion von Daten aus beliebigen Textquellen ( z.B. HTML ) mit JEDI. Zugriff auf die vorhandenen Metadaten. 1 2 3 Nabe

35 Transformation Einsatz von XSLT
Umsetzung von Inhalten: ‘Wahr’ -> ‘true’ Umbenennung von Knoten und Attributen: ‘Versicherter’ -> ‘Kunde’ Umstrukturierung von Dokumenten: ‘Adresse’ -> ‘Lieferanschrift’ und ‘Rechnungsanschrift’ 1 2 3 Nabe

36 Transport Transport durch Standard-Middleware ( z.B. CORBA )
Sprach- und Betriebssystemunabhängigkeit. Transparenter Transportmechanismus. Höherwertige Dienste stehen bereit ( z.B. Security-Service ). Transaktionssicherheit bei Einsatz eines OTS. 1 2 3 Nabe

37 Schnittstellen verwalten
Informations- Infrastruktur

38 Informations-Marktplatz
SW-Entwicklung Schnittstellen- Team Altsysteme XMI (UML ) Data Warehouse Standards Business Partner Qualitätssicherung

39 Anzahl der Schnittstellen
Nutzen Effizienz der IT Potential Vorteile / Vorsprung aufgrund von konsequenten Schnittstellen-Management Lost Opportunity Ohne durchgängige Integrationslösung Anzahl der Schnittstellen

40 XML = Flüssige Informationen
Standardisiert durch W3C. Flexibles Format. Validierbar. Standards zum Selektieren und Transformieren. XML-Datenbanken.

41 XSLT Transformationen
Doku XMI (UML ) IDL WfMC Code DDL WSDL

42 XMI Flow

43 XMI Flow . <Behavioral_Elements.State_Machines.StateVertex.outgoing > <Behavioral_Elements.State_Machines.Transition xmi.idref = 'ID bc' /> </Behavioral_Elements.State_Machines.StateVertex.outgoing> <Behavioral_Elements.State_Machines.StateVertex.incoming > <Behavioral_Elements.State_Machines.Transition xmi.idref = 'ID bd' /> </Behavioral_Elements.State_Machines.StateVertex.incoming>

44 XMI Flow JavaControl:

45 Agenda Einführung XML Metadata Interchange Format
Vom Code zur Information Integrationszentrum Metadaten Zusammenfassung Einführung : Kurze Motivation webservices kennt jeder, deshalb nur kurz TA-Grundlagen

46 Zusammenfassung XMI ist anerkannter OMG-Standard für Metadaten.
Breite Tool-Unterstützung ( von OpenSource bis Kommerziell ). Zukunftssicheres Metamodell. XML bietet eine große Basis an Werkzeugen zur Verarbeitung der Informationen. Integrationsmedium für eine große Anzahl von Informationsquellen. Basis für eine umfassende Meta-Informationsbasis ! end Q (HP), Q (others).

47 Resourcen XML Metadata Interchange (XMI) version 1.1 : XML Cover Pages (XMI) : Mario Jeckle : Transforming XMI to HTML : MagicDraw KLuP

48 Fragen ... ... jetzt ... ...später :


Herunterladen ppt "Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter."

Ähnliche Präsentationen


Google-Anzeigen