Universal Component Trading



Ähnliche Dokumente
Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Workflow, Business Process Management, 4.Teil

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services

Java und XML 2. Java und XML

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel

Übung: Verwendung von Java-Threads

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

SDD System Design Document

Java Enterprise Architekturen Willkommen in der Realität

Service Discovery in Ad-hoc Netzen

Internetanbindung von Datenbanken

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik

Workflow Systeme mit der Windows Workflow Foundation

Komponentenbasierter Taschenrechner mit CORBA

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke J.M.Joller 1

Lizenzierung von System Center 2012

Windows Server 2008 für die RADIUS-Authentisierung einrichten

E-Services mit der Web-Service-Architektur

ObjectBridge Java Edition

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit Grid Systeme 1

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

CORBA. Systemprogrammierung WS

Systemen im Wandel. Autor: Dr. Gerd Frenzen Coromell GmbH Seite 1 von 5

Erfassung von Umgebungskontext und Kontextmanagement

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

Softwareentwicklungspraktikum Sommersemester Grobentwurf

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Installation & Konfiguration AddOn Excel Export Restriction

Guide DynDNS und Portforwarding

ISA Server 2004 Erstellen eines neuen Netzwerkes - Von Marc Grote

Wiederholung: Beginn

Softwareentwicklung mit Enterprise JAVA Beans

Windows Small Business Server (SBS) 2008

Installation der SAS Foundation Software auf Windows

How to do? Projekte - Zeiterfassung

Updatebeschreibung JAVA Version 3.6 und Internet Version 1.2

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Elektronische Zustellung WKO / AustriaPro. Status Arbeitspakete PL.O.T

DIRECTINFO 5.7 SICHERHEITSKONZEPTE FÜR BENUTZER, INFORMATIONEN UND FUNKTIONEN

robotron*e count robotron*e sales robotron*e collect Anmeldung Webkomponente Anwenderdokumentation Version: 2.0 Stand:

Installation & Konfiguration AddOn Excel Export Restriction

Microsoft.NET und SunONE

Step by Step Webserver unter Windows Server von Christian Bartl

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen?

Der beste Plan für Office 365 Archivierung.

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Lizenzierung von SharePoint Server 2013

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Thema: Web Services. Was ist ein Web Service?

White Paper. Konfiguration und Verwendung des Auditlogs Winter Release

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Man liest sich: POP3/IMAP

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

(1) Mit dem Administrator Modul werden die Datenbank, Gruppen, Benutzer, Projekte und sonstige Aufgaben verwaltet.

SMART Newsletter Education Solutions April 2015

SAP NetWeaver Gateway. 2013

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

HTBVIEWER INBETRIEBNAHME

IBM Domino mit Active Directory & Identity Management verbinden

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Lizenzierung von Windows Server 2012

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee Berlin Tel.:+49(0) Fax.:+49(0)

Übungen zur Softwaretechnik

Kommunikations-Management

Sybase Central Dokumentation Aktivierung der Monitoringfunktion

RESTful Web. Representational State Transfer

START - SYSTEMSTEUERUNG - SYSTEM - REMOTE

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Auto-Provisionierung tiptel 30x0 mit Yeastar MyPBX

Mobile-Szenario in der Integrationskomponente einrichten

e-books aus der EBL-Datenbank

6 Seminar "Informations- und Kommunikationssysteme" Unterteilung des Vortrags. Das Lookup Service Teil 1. Einführung und Discovery Protocols

Lokale Installation von DotNetNuke 4 ohne IIS


IBM Software Demos WebSphere Dashboard Framework

Clientkonfiguration für Hosted Exchange 2010

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

Spezielle Websites für die technische Analyse

Online-Publishing mit HTML und CSS für Einsteigerinnen

1 Mathematische Grundlagen

PHP Kurs Online Kurs Analysten Programmierer Web PHP

SE2-10-Entwurfsmuster-2 15

Parallels Mac Management 3.5

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

Tips, Tricks und HOWTOs Virtualisierung für Profis und Einsteiger Serverkonsolidierung, Testumgebung, mobile Demo

DIE SCHRITTE ZUR KORREKTEN LIZENZIERUNG

Registrierung am Elterninformationssysytem: ClaXss Infoline

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Techniken der Projektentwicklungen

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

BSI Technische Richtlinie

Integration von XPhone Virtual Directory auf OpenStage 60/80 Telefonen

Klaus Schild, XML Clearinghouse Namensräume

SWT II Projekt. Chat - Anwendung. Pflichtenheft 2000 SWT

Transkript:

Universal Component Trading Dynamisch erweiterbares Trading mit heterogenen Softwarekomponenten Dissertation zur Erlangung des akademischen Grades eines Doktors der Wirtschaftswissenschaften (Dr. rer. pol.) durch den Fachbereich Wirtschaftswissenschaften der Universität Duisburg-Essen, Standort Essen vorgelegt von Dipl.-Wirt.Inform. Holger Schwichtenberg geboren in Essen Holger@Schwichtenberg.de Tag der mündlichen Prüfung: 15.9.2003 1. Gutachter: Prof. Dr. S. Eicker 2. Gutachter: Prof. Dr. P. Chamoni

Einleitung I I. Inhaltsverzeichnis 1 Einleitung...1 1.1 Problembereich...1 1.2 Zielsetzung...2 1.3 Gang der Arbeit...3 2 Bestehende Trading-Ansätze...5 2.1 Grundbegriffe...5 2.2 Trading-Dienst versus Namensdienst...7 2.3 Zusammenarbeit von Tradern... 10 2.4 ODP-Trading... 11 2.4.1 Basisfunktionen... 12 2.4.2 Interworking beim ODP-Trading... 15 2.4.3 Schnittstellen... 15 2.4.4 Implementierungen... 17 2.4.4.1 Go-Between... 18 2.4.4.2 DRYAD... 18 2.4.4.3 TRADE-Projekt... 19 2.4.4.4 MELODY... 20 2.4.4.5 Objektorientierter Trader von Bearman, Duddy, Raymond und Vogel 21 2.4.4.6 ODP-Trading auf Basis von X.500-Verzeichnisdiensten... 22 2.4.5 Kritik am ODP-Trading... 25 2.5 ANSAWare-Trading... 27 2.6 COS-Trading... 28 2.6.1 Vergleich von ODP-Trading und COS-Trading... 29 2.6.2 Implementierungen... 30 2.6.2.1 DSTC Trading Object Service... 30 2.6.2.2 Orbix 2000-Trader... 31 2.6.2.3 ORBacus Trader... 31 2.6.2.4 Trader Oriented Request Broker Architecture (TORBA)... 32 2.6.2.5 TOI-Trader... 32 2.6.2.6 CORBazar... 32 2.6.2.7 JTrader und JacORB... 33 2.6.2.8 Trader nach Senivongse und Nanekrangsan... 33 2.7 Zusammenfassung der Hauptansätze... 33 2.8 Ergänzende und alternative Ansätze... 34 2.8.1 Explorative Trading Service (ETS)... 34 2.8.2 RHODOS-Trader... 34 2.8.3 Trader nach Jacob und Mudge... 35 2.8.4 Distributed Trader nach Richman und Hoang... 36 2.8.5 Interworking Trader nach Richman und Hoang... 38 2.8.6 Webtrader... 38 2.8.7 AI-based Trading... 41 2.8.8 Semantically Enhanced Component Trading... 42 2.8.9 Universal Description, Discovery and Integration (UDDI)... 45 3 Softwarekomponentenmodelle...47 3.1 Definitionen... 47 3.2 Component Object Model (COM)... 49

II Einleitung 3.2.1 Plattformen und Implementierungen... 50 3.2.2 Aufbau von Komponenten... 51 3.2.3 Zusammenarbeit von Komponenten... 52 3.2.4 Namensgebung... 53 3.2.5 Komponentenbeschreibung... 54 3.2.6 Installation von Komponenten... 54 3.2.7 Dienste... 56 3.2.8 Trading-Unterstützung... 57 3.3 Java-Komponenten... 57 3.3.1 Plattformen und Implementierungen... 58 3.3.2 Aufbau von Komponenten... 59 3.3.3 Zusammenarbeit von Komponenten... 62 3.3.4 Namensgebung... 62 3.3.5 Komponentenbeschreibung... 63 3.3.6 Installation von Komponenten... 63 3.3.7 Dienste... 64 3.3.8 Trading-Unterstützung... 65 3.4 CORBA Component Model (CCM)... 65 3.4.1 Plattformen und Implementierungen... 65 3.4.2 Aufbau von Komponenten... 66 3.4.3 Zusammenarbeit von Komponenten... 69 3.4.4 Namensgebung... 71 3.4.5 Komponentenbeschreibung... 71 3.4.6 Installation von Komponenten... 71 3.4.7 Dienste... 72 3.4.8 Trading-Unterstützung... 72 3.5 Common Language Infrastructure (CLI)... 72 3.5.1 Plattformen und Implementierungen... 72 3.5.2 Aufbau von Komponenten... 74 3.5.3 Zusammenarbeit von Komponenten... 76 3.5.4 Namensgebung... 78 3.5.5 Komponentenbeschreibung... 78 3.5.6 Installation von Komponenten... 78 3.5.7 Dienste... 79 3.5.8 Trading-Unterstützung... 79 3.6 Verbreitung der Komponentenmodelle... 80 3.7 Zusammenfassung... 82 4 Anforderungen an das Component Trading...85 4.1 Trading heterogener Softwarekomponenten... 85 4.1.1 Baupläne... 86 4.1.2 Diensterbringer... 87 4.1.3 Komponentenbeschreibung... 87 4.1.4 Zugriffsprotokolle... 88 4.1.5 Aktivierung... 90 4.2 Trading-Umgebungen... 91 4.3 Komponentenbeschreibung... 92 4.3.1 Beschreibungssprachen für das Component Trading... 92 4.3.2 Dynamische Erweiterbarkeit für Beschreibungssprachen... 94 4.3.3 Mehrfach-Sichtweisen... 95 4.3.4 Umfang der Beschreibung... 96 4.4 Komponentenregistrierung... 97

Einleitung III 4.4.1 Registrierungsvorgang... 97 4.4.2 Qualitätssicherung... 98 4.4.3 Aufhebung einer Registrierung... 98 4.4.4 Änderung einer Registrierung... 99 4.5 Trading-Zeitpunkte... 99 4.5.1 Design-Time-Trading... 99 4.5.2 Runtime-Trading... 103 4.6 Suchanfragen... 104 4.6.1 Alternative Suchsprachen... 104 4.6.2 Steuerinformationen für Suchanfragen... 105 4.6.3 Verfügbarkeitsprüfung... 106 4.6.4 Daueraufträge... 107 4.6.5 Iteration in Suchanfragen... 108 4.7 Unterstützung dynamischer Elemente... 109 4.8 Kategorisierung... 110 4.9 Komponentenauswahl (Matching)... 111 4.9.1 Grobauswahl der relevanten Komponenten... 111 4.9.2 Priorisierung der relevanten Komponenten... 112 4.9.3 Feinauswahl einzelner Komponenten... 112 4.10 Dienstaufruf... 113 4.10.1 Szenario 1: Direkter Dienstaufruf... 114 4.10.2 Szenario 2: Trader als Proxy... 115 4.10.3 Szenario 3: Trader als Adapter... 116 4.10.4 Szenario 4: Ausführung der Komponente im Kontext des Clients... 117 4.10.5 Zugriffsprotokolle... 118 4.11 Zugangsbeschränkungen... 118 4.11.1 Zugangsbeschränkungen zum Trader... 118 4.11.2 Zugangsbeschränkungen zu den Handelseinheiten... 119 4.12 Abrechnung der Dienstleistungen... 120 4.13 Protokollierung... 120 4.14 Lernfähigkeit... 121 4.15 Trader-Interworking... 122 4.16 Erweiterbarkeit des Traders... 123 4.17 Benutzerschnittstellen... 123 4.18 Administration des Traders... 124 4.19 Zusammenfassung... 124 5 Architekturmodell für das Universal Component Trading...126 5.1 Client-Server-Architektur... 126 5.2 Datenaustauschformat... 127 5.2.1 Auswahl des Datenaustauschformats... 128 5.2.2 Trader-Dokumente... 128 5.2.3 Validierung der Trader-Dokumente... 130 5.3 Metamodell für Softwarekomponenten... 130 5.3.1 Ansatz von Gruhn und Thiel... 131 5.3.2 Verbesserung des Modells von Gruhn und Thiel... 131 5.3.3 Abbildung des Metamodells einer XML-Sprache... 134 5.4 Komponentendienstbeschreibungen... 136 5.4.1 Integration von Dienstbeschreibungen in SXCDL... 136 5.4.2 Unterstützung für dynamische Elemente... 139 5.4.3 Dienst- und Datentypen... 142 5.4.4 Beschreibungen durch Attribut-Wert-Paare... 144

IV Einleitung 5.4.4.1 Diensteigenschaften... 145 5.4.4.2 Erweiterbarkeit... 146 5.4.4.3 Anweisungen an den Trader... 147 5.4.5 Dienstbeschreibung in natürlicher Sprache... 149 5.4.6 Dienstbeschreibungen durch Kategorisierung... 149 5.4.7 Interface Definition Language (IDL)... 150 5.4.8 Web Service Description Language (WSDL)... 151 5.4.9 Ontologien... 153 5.4.10 Weitere Beschreibungssprachen... 156 5.5 Suchanfragen... 157 5.5.1 Integration von Suchanfragen in ImportDocuments... 158 5.5.2 Suche über Diensttypen... 160 5.5.3 Standard Constraint Language (SCL)... 161 5.5.4 XML Query (XQuery)... 161 5.5.5 Service Request Description Language (SRDL)... 162 5.5.6 Suche über IDL-Beschreibungen... 163 5.5.7 Suche über natürlichsprachliche Texte... 164 5.5.8 Suche über Komponentenkategorien... 165 5.5.9 Suche über Ontologien... 165 5.5.10 Suche über Angebotsnummern... 166 5.5.11 Suche über frühere Suchergebnisse... 166 6 Architektur des UComT-Servers...169 6.1 Trader-Kern... 169 6.2 Erweiterungsmodule... 172 6.2.1 Abstrakte Basistypen... 172 6.2.2 Konkrete Modultypen... 175 6.2.3 Implementierung der Module... 176 6.2.4 Durch Clients initiierte Erweiterungen... 177 6.2.5 Fehlersituationen... 177 6.2.6 Sicherheitsmaßnahmen... 178 6.3 Datenspeicher des Trader-Servers... 179 6.4 Detailbeschreibung des Trader-Servers... 180 6.4.1 Datenspeicher... 180 6.4.1.1 Offer-Store... 180 6.4.1.2 Component-Store... 180 6.4.1.3 Search-Store... 181 6.4.1.4 Configuration-Store... 181 6.4.1.5 Client-Store... 181 6.4.1.6 Protocol-Store... 181 6.4.1.7 Module-Repository... 181 6.4.1.8 Schema-Store... 182 6.4.1.9 Custom-Store... 182 6.4.2 Modul-Verwaltung... 182 6.4.2.1 Initialisierung von Modulen beim Start des Traders... 183 6.4.2.2 Ermittlung geeigneter Module... 183 6.4.2.3 Trader-Direktiven für Module... 183 6.4.2.4 Herunterladen von Modulen von Netzwerkadressen... 184 6.4.2.5 Installation und Deinstallation von Modulen... 184 6.4.3 Export... 184 6.4.3.1 Exporter-Manager... 185 6.4.3.2 Description-Module... 190

Einleitung V 6.4.3.3 Element-Module... 192 6.4.3.4 Dynamic-Element-Manager... 194 6.4.4 Import... 195 6.4.4.1 Importer-Manager... 195 6.4.4.2 Search-Module... 198 6.4.5 Matching... 198 6.4.5.1 Matching-Module... 198 6.4.5.2 Vorüberlegungen zum Matching-Vorgang... 200 6.4.5.3 Matching-Phasen... 201 6.4.5.4 Implementierung... 206 6.4.5.5 Optimierung für Ad-hoc-Elemente... 206 6.4.5.6 Converter-Manager und Converter-Module... 208 6.4.6 Steueranweisungen an den Trader... 209 6.4.7 Dienstaufruf... 210 6.4.7.1 Access-Manager, Access-Module, Installation-Module... 211 6.4.7.2 Realisierung der Aufruf-Szenarien... 211 6.4.7.3 Vermittlung von Bridges... 220 6.4.7.4 Implementierungsaspekte zum Access-Manager... 221 6.4.7.5 Implementierungsaspekte zu den Access-Modulen... 222 6.4.7.6 Beispiele für Access- und Installation-Module... 223 6.4.8 Interworking... 229 6.4.8.1 Vorüberlegungen... 229 6.4.8.2 Linking-Module... 232 6.4.8.3 Link-Manager... 232 6.4.8.4 Interworking am Beispiel von UDDI... 233 6.4.9 Administration... 236 6.4.9.1 Administration-Manager... 236 6.4.9.2 Administration-Module... 237 6.4.10 Weitere Funktionen des Trader-Servers... 238 6.4.10.1 Locator-Manager... 239 6.4.10.2 Validation-Manager... 239 6.4.10.3 Standing-Order-Manager... 240 6.4.10.4 Security-Manager... 240 6.4.10.5 Billing-Manager... 241 6.4.10.6 Evaluation-Manager... 241 6.4.10.7 System-Management-Manager... 242 6.4.10.8 Protocol-Manager... 242 7 Architektur des UComT-Clients...245 7.1 Grundstruktur... 245 7.2 Funktionen des Trader-Client-Dienstes... 246 7.3 Funktionen der Trader-Client-Bibliothek... 246 7.3.1 Exporter... 247 7.3.2 Design-Time-Importer... 247 7.3.3 Runtime-Importer... 248 7.3.4 Administration-Client... 248 7.3.5 Access-Client... 248 7.3.6 Module-Manager... 249 7.3.7 Dynamic-Element-Client... 250 7.3.8 Locator-Client... 251 7.3.9 Evaluation-Client... 251 7.4 Funktionen der Benutzerschnittstelle... 251

VI Einleitung 8 Prototypische Implementierung...253 8.1 UCom-Trader-Server... 254 8.1.1 Plattformauswahl... 254 8.1.2 Softwarekomponenten... 255 8.1.3 Datenspeicher... 256 8.1.4 Webservices... 256 8.1.5 Geschäftslogik... 257 8.1.5.1 Identifizierung der Schnittstellen des Trader-Kerns... 258 8.1.5.2 Schnittstellen für die Erweiterungsmodule... 259 8.1.5.3 Fehlerbehandlung... 260 8.1.5.4 Sicherheitsmaßnahmen... 261 8.1.6 Implementierte Module... 261 8.1.7 Ausgewählte Implementierungsdetails... 264 8.1.7.1 Wurzelklasse "Trader"... 264 8.1.7.2 Implementierung des Module-Managers... 265 8.1.7.3 Implementierung des Matching-Managers... 268 8.1.7.4 Implementierung des Access-Managers... 269 8.1.7.5 Modul "Element.NumberOfImports"... 270 8.1.7.6 Modul "Linking.UDDI"... 272 8.1.7.7 Modul "Matching.DAMLOIL_DAMLOIL"... 273 8.1.7.8 Modul "Installation.COM"... 275 8.2 C#-Client für COM- und.net-komponenten... 275 8.2.1 Softwarekomponenten... 275 8.2.2 Benutzerschnittstellen... 277 8.2.2.1 Benutzeroberfläche für den Export... 277 8.2.2.2 Benutzeroberfläche für den Import... 278 8.3 Java-Client für Java- und CORBA-Komponenten... 280 8.3.1 Softwarekomponenten... 280 8.3.2 Benutzerschnittstellen und Kernbausteine... 281 8.3.3 Installation- und Access-Module... 281 8.4 UComT-Administration-Client... 283 8.5 Validierende Beispiele... 283 9 Schußbetrachtung...285 Literaturverzeichnis...291 Anhang A: Beispieldokumente...A-1 A.1 Beispiel für ein ExportDocument...A-1 A.2 Beispiel für ein ImportDocument...A-5 A.3 Beispiel für ein DAML+OIL-Vokabular...A-5 Anhang B: Schnittstellenreferenz...B-1 B.1 Datenspeicher... B-1 B.1.1 Schnittstelle "IDataStore"... B-1 B.1.2 Schnittstelle "IOfferStore"... B-1 B.1.3 Schnittstelle "IComponentStore"... B-2 B.1.4 Schnittstelle "ISearchStore"... B-2 B.1.5 Schnittstelle "IModuleRepository"... B-3 B.1.6 Schnittstelle "IProtocolStore"... B-3 B.1.7 Schnittstelle "IConfigurationStore"... B-4 B.1.8 Schnittstelle "IClientStore"... B-4

Einleitung VII B.1.9 Schnittstelle "ISchemaStore"... B-5 B.1.10 Schnittstelle "ICustomStore"... B-5 B.2 Kernbausteine... B-5 B.2.1 Schnittstelle "ITraderCore"... B-5 B.2.2 Schnittstelle "IExporterManager"... B-7 B.2.3 Schnittstelle "IImporterManager"... B-8 B.2.4 Schnittstelle "IMatchingManager"... B-8 B.2.5 Schnittstelle "IModuleManager"... B-9 B.2.6 Schnittstelle "IConverterManager"... B-10 B.2.7 Schnittstelle "ISchemaManager"... B-10 B.2.8 Schnittstelle "IDynamicElementManager"... B-11 B.2.9 Schnittstelle "IAccessManager"... B-11 B.2.10 Schnittstelle "IAdministrationManager"... B-12 B.3 Trader-Prozesse... B-12 B.3.1 Schnittstelle "ITraderProcess"... B-12 B.3.2 Schnittstelle "IExport"... B-13 B.3.3 Schnittstelle "IImport"... B-13 B.3.4 Schnittstelle "IExecution"... B-13 B.3.5 Schnittstelle "IAdminCall"... B-14 B.4 Trader-Clients... B-14 B.5 Trader-Dokumente... B-15 B.6 Interne Datenstrukturen... B-16 B.6.1 Schnittstelle "IInternalDataStructure"... B-17 B.6.2 Schnittstelle "IOffer"... B-17 B.6.3 Schnittstelle "IRelevantOffer"... B-17 B.6.4 Schnittstelle "IDescElement"... B-18 B.6.5 Schnittstelle "ISearchElement"... B-18 B.6.6 Schnittstelle "IMatchCall"... B-19 B.7 Schnittstelle "ITrader"... B-19 B.8 Erweiterungsmodule... B-20 B.8.1 Schnittstelle "IModule"... B-21 B.8.2 Schnittstelle "IElementBoundModule"... B-22 B.8.3 Schnittstelle "IEventBoundModule"... B-23 B.8.4 Schnittstelle "IDescriptionModule"... B-23 B.8.5 Schnittstelle "ISearchModule"... B-24 B.8.6 Schnittstelle "IMatchingModule"... B-24 B.8.7 Schnittstelle "IConverterModule"... B-25 B.8.8 Schnittstelle "ILinkingModule"... B-25 B.8.9 Schnittstelle "IAccessModule"... B-26 B.8.10 Schnittstelle "IInstallationModule"... B-26 B.8.11 Weitere Schnittstellen... B-27 Anhang C: Inhalt der CD-ROM...C-1

VIII Einleitung II. Abbildungsverzeichnis Abbildung 1.1: Aufbau der Arbeit... 4 Abbildung 2.1: Grundmodell des Trading... 7 Abbildung 2.2: Verhältnis von Tradinggemeinschaft, Tradingsyndikat und Tradingföderation (nach [SPM94, S. 24])... 10 Abbildung 2.3: Erzeugung von ServiceOffer-Objekten im objektorientierten Trader [BDRV97, S. 17]... 21 Abbildung 2.4: Struktur des X.500-basierten Traders [PoMe93, S. 3]... 23 Abbildung 2.5: Screenshot der Benutzerschnittstelle des Orbix 2000-Traders... 31 Abbildung 2.6: Modell des Traders nach Jacob und Mudge... 36 Abbildung 2.7: Modell des Distributed Traders [RiHo95b, S. 3]... 37 Abbildung 2.8: Trade Shipping versus Advertisement Shipping [VaBa99b, S. 5]... 40 Abbildung 2.9: Architektur des Component Traders [TeNi99a, S. 191]... 43 Abbildung 2.10: Architektur des erweiterten Component Traders [TeNi00, S. 10]... 44 Abbildung 2.11: Screenshot der WWW-Oberfläche der IBM UDDI Business Registry... 46 Abbildung 3.1: Komponententypen in Java mit Untertypen... 58 Abbildung 3.2: Aufbau einer segmentierten CORBA-Komponente... 68 Abbildung 3.3: Verbreitung der verschiedenen Komponentenmodelle gemäß [Har00]... 80 Abbildung 3.4: Geschätzte Marktanteile bei neuen komponentenbasierten Softwareentwicklungsprojekten [Eis03, S. 16]... 81 Abbildung 4.1: Alternative Dienstbeschreibungen können Schnittmengen bilden... 95 Abbildung 4.2: Anzeige einer Klasse im "Object Browser" von Microsoft Visual Studio.NET Version 7.1... 100 Abbildung 4.3: OLE/COM Object Viewer... 101 Abbildung 4.4: IDL-Anzeige einer COM-Klasse im OLE/COM Object Viewer... 101 Abbildung 4.5: Java-Klassenbrowser in Borland JBuilder Version 8.0... 102 Abbildung 4.6: Darstellung einer aus verschiedenen Einzelanfragen bestehenden Gesamt - Suchanfrage... 105 Abbildung 4.7: Abgrenzung von statischen und dynamischen Eigenschaften [PoMe95, S. 3]... 109 Abbildung 4.8: Komponentennutzung ohne Beteiligung des Traders... 115 Abbildung 4.9: Komponentennutzung mit dem Trader als Proxy... 116 Abbildung 4.10: Nutzung der Komponente auf dem Trader... 117 Abbildung 4.11: Mobile Komponenten... 118 Abbildung 5.1: UComT-Grundarchitektur (UML-Implementierungsdiagramm)... 127 Abbildung 5.2: Trader-Dokument (Beispiel)... 130 Abbildung 5.3: Metamodell einer Komponente [GrTh00, S. xiii]... 131 Abbildung 5.4: Verbessertes Metamodell einer Softwarekomponente... 132 Abbildung 5.5: Weiter verbessertes Metamodell einer Softwarekomponente... 133 Abbildung 5.6: Schematischer Aufbau eines ExportDocument... 137 Abbildung 5.7: Untertypen dynamischer Elemente im UCom-Trader... 140 Abbildung 5.8: Grafische Darstellung eines DAML+OIL-Vokabulars... 154 Abbildung 5.9: Schematischer Aufbau eines ImportDocument am Beispiel von vier Suchelementen (s 1..4 ) in zwei verschiedenen Suchsprachen ssp 1 und ssp 2... 158 Abbildung 6.1: Grobarchitektur des Trader-Servers (UML-Implementierungsdiagramm)... 170 Abbildung 6.2: Ereignismodell für Module... 174 Abbildung 6.3: Detaillierte Architektur des UCom-Trader-Servers... 180 Abbildung 6.4: Aufbau eines Komponentenangebots... 186 Abbildung 6.5: Ablauf eines Exports (UML-Aktivitätsdiagramm)... 187 Abbildung 6.6: Grundsätzlicher Aufbau eines ExportDocument... 191 Abbildung 6.7: Schematischer Aufbau eines ImportAnswerDocument... 196 Abbildung 6.8: Ablauf des Imports (UML-Aktivitätsdiagramm)... 197 Abbildung 6.9: Beispiel für den frühesten Abbruch der Prüfung im Fall von drei Dienstbeschreibungen und drei Suchanfragen, davon eine Mandatory... 201 Abbildung 6.10: Grafische Darstellung der dreizehn Schritte in Matching-Phase 4... 205 Abbildung 6.11: UML-Aktivitätsdiagramm für den Matching-Manager... 206 Abbildung 6.12: Einsatz von Converter-Modulen... 208 Abbildung 6.13: Direkte Komponentennutzung ohne Beteiligung des Trader-Client (Szenario 1a)... 212 Abbildung 6.14: Direkte Komponentennutzung mit Beteiligung eines Trader-Client (Szenario 1b)... 212

Einleitung IX Abbildung 6.15: Direkte Komponentennutzung mit Beteiligung von zwei Trader-Clients (Szenario 1c).. 213 Abbildung 6.16: Der Trader-Server leitet einen Aufruf direkt an den Exporter weiter. (Szenario 2a)... 214 Abbildung 6.17: Aufruf-Weiterleitung über den Trader-Client an den Exporter. (Szenario 2b)... 214 Abbildung 6.18: Ausführung der Komponente auf dem Trader-System ohne Hilfe des Traders beim Aufruf (Szenario 3a)... 215 Abbildung 6.19: Ausführung der Komponente auf dem Trader-System mit Hilfe des Traders beim Aufruf (Szenario 3b)... 216 Abbildung 6.20: Ausführung einer Komponente im Kontext des Importers ohne Hilfe des UComT- Clients beim Aufruf (Szenario 4a)... 218 Abbildung 6.21: Ausführung einer Komponente im Kontext des Importers mit Hilfe des UComT- Clients beim Aufruf (Szenario 4b)... 218 Abbildung 6.22: Entscheidungsbaum für den serverseitigen Access-Manager... 221 Abbildung 6.23: Service Access-Protokolle in verschiedenen Komponenten-Aktivierungsformen... 223 Abbildung 6.24: Grafische Darstellung der Wirkung von LinkDepth... 231 Abbildung 6.25: Abbildung eines UComT-OfferDocument auf UDDI-Einträge... 235 Abbildung 7.1: Grobarchitektur des Trader-Clients (UML-Implementierungsdiagramm)... 245 Abbildung 7.2: Detaillierte Architektur des UCom-Trader-Clients (UML- Implementierungsdiagramm)... 247 Abbildung 7.3: Entscheidungsbaum für den Access-Client... 249 Abbildung 8.1: Plattformen für die Prototypimplementierung... 253 Abbildung 8.2: Komponenten-Nutzungsbeziehungen in der Prototypimplementierung des Servers (UML-Implementierungsdiagramm)... 255 Abbildung 8.3: Inhalt eines UDDI-Servers nach der Weiterleitung mehrerer Registrierungen von einem UComT-Server... 273 Abbildung 8.4: Komponenten-Nutzungsbeziehungen der Prototypimplementierung des Clients (UML-Implementierungsdiagramm)... 276 Abbildung 8.5: Architektur des in C# geschriebenen UComT-Clients (UML- Implementierungsdiagramm)... 277 Abbildung 8.6: Benutzerschnittstelle für den Export... 278 Abbildung 8.7: Benutzerschnittstelle für den Import... 279 Abbildung 8.8: Generische Oberfläche für den Aufruf einer Operation in einer importierten Komponente... 279 Abbildung 8.9: Architektur des in Java geschriebenen UComT-Clients... 280 Abbildung B.1: UML-Diagramm der Kern-Schnittstellen (Ausschnitt)... B-7 Abbildung B.2: UML-Diagramm der Schnittstellen für die internen Datenstrukturen (Ausschnitt)... B-16 Abbildung B.3: UML-Diagramm der Erweiterungsmodul-Schnittstellen... B-21 Abbildung C.1: Startseite der Begleit-CD-ROM... C-1 Abbildung C.2: Screenshot einer Hilfedatei zur Klasse "ExporterManager"... C-3

X Einleitung III. Tabellenverzeichnis Tabelle 2.1: Vergleich von Name-Server und Trader [Kel93, S. 123]... 9 Tabelle 2.2: Analogien für Namensdienst und Trading-Dienst... 9 Tabelle 2.3: Unterstützung der Trading-Schnittstellen in den verschiedenen Trader-Klassen... 17 Tabelle 2.4: Vergleich von ANSAWare-Trader, ODP-Trader und COS-Trader... 33 Tabelle 2.5: Vergleich von Webtrader und ODP-/COS-Trader [VaBa99b, S. 6]... 41 Tabelle 3.1: Vergleich der verschiedenen EJB-Typen... 61 Tabelle 3.2: Vergleich der Begriffe im CLI-Standard mit den Begriffen im Microsoft.NET Framework... 74 Tabelle 3.3: Statistik des Produktkatalogs auf www.componentsource.com... 81 Tabelle 3.4: Zusammenfassender Vergleich der Komponentenmodelle... 83 Tabelle 4.1: Standardisierte Interoperabilitätsmöglichkeiten zwischen Komponenten aus Tabelle 4.2: verschiedenen Komponentenmodellen... 89 Interoperabilität der Komponentenmodelle abseits von SOAP-Webservices (nach [EKT02, S. 83f.])... 89 Tabelle 4.3: Komponententypen... 90 Tabelle 4.4: Varianten der Komponentenaktivierung... 91 Tabelle 4.5: Trading-Formen... 103 Tabelle 4.6: Klassifizierung der Dienstbeschreibungen in einer Suchanfrage... 105 Tabelle 4.7: Vor- und Nachteile von Daueraufträgen... 108 Tabelle 4.8: Tabelle 5.1: Alternativen für den Dienstaufruf im Anschluss an eine Suchanfrage im UCom-Trader... 114 Übersicht über XML-Dokumente für den Datenaustausch zwischen Client und Server... 129 Tabelle 5.2: SXCDL-Elemente... 135 Tabelle 5.3: Hauptelemente eines WSDL-Dokuments... 152 Tabelle 6.1: Überblick über die UCom-Trader-Module... 172 Tabelle 6.2: Zuordnung der Modultypen zu den Basistypen... 176 Tabelle 6.3: Matrix der Kombinationen von Suchsprachen und Beschreibungssprachen (Beispiel)... 199 Tabelle 6.4: Beispiel-Berechnungen zur Wahl der Suchstrategie... 201 Tabelle 6.5: Match-Call-Tabelle... 209 Tabelle 6.6: Überblick über die verschiedenen Szenarien des Dienstaufrufs... 220 Tabelle 6.7: Zusammenfassung der Registrierungstypen für.net-komponenten... 225 Tabelle 8.1: Namensräume in der UComT-Implementierung... 255 Tabelle 8.2: Schnittstellentypen und Namensräume für verschiedene Modultypen... 260 Tabelle 8.3: Implementierte Module... 262 Tabelle 8.4: Implementierte Kombinationen von Suchsprachen und Beschreibungssprachen... 263 Tabelle 8.5: Zusammenfassung der Registrierungstypen für COM-Komponenten... 275 Tabelle 8.6: Kern-Komponenten und Namensräume des C#-Client... 276 Tabelle 8.7: Liste der zur Validierung verwendeten Softwarekomponenten... 283

Einleitung XI IV. Verzeichnis der Listings Listing 5.1: SXCDL-Dokument (Beispiel)... 135 Listing 5.2: Deklaration eines Ad-hoc-Elements (Beispiel)... 141 Listing 5.3: Deklaration eines periodischen Elements (Beispiel)... 141 Listing 5.4: Deklaration eines Exporter-aktualisierten Elements (Beispiel)... 141 Listing 5.5: Deklaration eines fremdaktualisierten Elements (Beispiel)... 142 Listing 5.6: Deklaration eines periodisch beobachteten Elements (Beispiel)... 142 Listing 5.7: Deklaration eines ereignisbasierten beobachteten Elements (Beispiel)... 142 Listing 5.8: Verwendung von Dienstbeschreibungen durch hierarchische ServiceTypes (Beispiel)... 144 Listing 5.9: Dienstbeschreibungen durch Attribut-Wert-Paare (Beispiel)... 145 Listing 5.10: Trader-Direktiven in einem ImportDocument (Beispiel)... 148 Listing 5.11: Dienstbeschreibungen in natürlicher Sprache (Beispiel)... 149 Listing 5.12: Dienstbeschreibung zur Einordnung in den Komponentenkatalog (Beispiel)... 150 Listing 5.13: Dienstbeschreibungen in IDL (Beispiel)... 151 Listing 5.14: WSDL-Beschreibung (Beispiel)... 153 Listing 5.15: Beschreibung einer DAML+OIL-Instanz (Beispiel)... 155 Listing 5.16: Grundstruktur eines ImportDocument... 159 Listing 5.17: Suche nach Diensttypen (Beispiel)... 160 Listing 5.18: SCL-Beispiel für die Suche über eine NVP-Dienstbeschreibung... 161 Listing 5.19: XQuery-Beispiel für die Suche über eine NVP-Dienstbeschreibung... 162 Listing 5.20: SRDL-Beispiel... 162 Listing 5.21: IDL-Suche (Beispiel)... 164 Listing 5.22: Schlüsselwortsuche (Beispiel)... 164 Listing 5.23: Suche mit regulären Ausdrücken (Beispiel)... 164 Listing 5.24: Suchanweisung über den Trader-Katalog (Beispiel)... 165 Listing 5.25: Suche durch Beschreibung einer DAML+OIL-Instanz... 166 Listing 5.26: Suche über die Angebotsnummern (Beispiel)... 166 Listing 5.27: Suche über die Suchnummern (Beispiel)... 167 Listing 6.1: CatalogueDocument (Beispiel)... 182 Listing 6.2: Trader-Direktiven für die Übermittlung von Modulen... 184 Listing 6.3: Ein durch den Exporter hinzugefügtes Beschreibungselement <OfferID> (Beispiel)... 186 Listing 6.4: ExportAnswerDocument (Beispiel)... 187 Listing 6.5: Übermittlung von Komponentendateien im Rahmen eines ExportDocument (Beispiel)... 188 Listing 6.6: WithdrawDocument (Beispiel)... 188 Listing 6.7: WithdrawAnswerDocument (Beispiel)... 188 Listing 6.8: ExportModificationDocument (Beispiel)... 190 Listing 6.9: <TimeRestriction>-Element (Beispiel)... 194 Listing 6.10: DynamicElementPullDocument (Beispiel)... 195 Listing 6.11: DynamicElementPullAnswerDocument (Beispiel)... 195 Listing 6.12: ImportAnswerDocument (Beispiel)... 197 Listing 6.13: Vom Importer-Manager im OfferDocument gespeicherte ImportIDs (Beispiel)... 198 Listing 6.14: Festlegung der Kosten im Rahmen des Exports (Beis piel)... 210 Listing 6.15: Ein Importer erhält eine IOR auf ein CORBA-Objekt (Beispiel)... 212 Listing 6.16: Übermittlung der Daten für eine mobile Komponente in einem ExportDocument (Beispiel)... 217 Listing 6.17: Beschreibung einer mobilen COM-Komponente (Beispiel)... 224 Listing 6.18: Beschreibung einer mobilen.net-komponente (Beispiel)... 225 Listing 6.19: Eingabedaten für das Access-Modul "COM" (Beispiel)... 225 Listing 6.20: Eingabedaten für das Access-Modul "DCOM" (Beispiel)... 226 Listing 6.21: Eingabedaten für das Access-Modul "CLI" (Beispiel)... 226 Listing 6.22: Eingabedaten für das Access-Modul "CLIRemoting" (Beispiel)... 227 Listing 6.23: Eingabedaten für das Access-Modul "RMI" (Beispiel)... 227 Listing 6.24: Eingabedaten für das Installation-Modul "EJB" (Beispiel)... 228 Listing 6.25: Eingabedaten für das Access-Modul "IIOP" (Beispiel)... 229 Listing 6.26: Eingabedaten für das Installation-Modul "CORBA" (Beispiel)... 229

XII Einleitung Listing 6.27: Hinzufügen eines statischen Trader-Links (Beispiel)... 230 Listing 6.28: Interworking-Direktiven für ein ExportDocument (Beispiel)... 230 Listing 6.29: Entfernen eines statischen Trader-Links (Beispiel)... 231 Listing 6.30: Interworking-Ablaufverfolgung (Beispiel)... 232 Listing 6.31: Angebot eines UDDI-Servers... 234 Listing 6.32: Speicherung des UDDI-UUID im OfferDocument... 236 Listing 6.33: Auszug aus dem ConfigurationDocument des Traders... 237 Listing 6.34: CatalogueDocument (Beispiel)... 238 Listing 6.35: Administrationselement zur Übermittlung des Trader-Katalogs an den Client... 238 Listing 6.36: Festlegung des Vokabulars (Beispiel)... 238 Listing 6.37: Administrationselement zur Übermittlung des Vokabulars an den Client... 238 Listing 6.38: Konfigurationselement für den Validation-Manager (Beispiel)... 240 Listing 6.39: Trader-Direktive des Importers zum Aufruf des Validators (Beispiel)... 240 Listing 6.40: ACLs in einem OfferDocument (Beispiel)... 241 Listing 6.41: ACLs in einem ConfigurationDocument (Beispiel)... 241 Listing 6.42: Trader-Direktive zur Berücksichtigung der Bewertungen (Beispiel)... 242 Listing 6.43: Protokoll-Konfiguration (Beispiel)... 243 Listing 8.1: Definition von Exceptions... 261 Listing 8.2: Implementierung der Klasse "Trader" (Ausschnitt)... 264 Listing 8.3: InstalledModules Ausschnitt aus der Implementierung des Module-Managers... 266 Listing 8.4: GetAllModules() Ausschnitt aus der Implementierung des Module-Managers... 267 Listing 8.5: GetModulesOfType() Ausschnitt aus der Implementierung des Module- Managers... 267 Listing 8.6: InitAllModules() Ausschnitt aus der Implementierung des Module-Managers... 268 Listing 8.7: Execute() Ausschnitt aus der Implementierung des Access-Managers... 269 Listing 8.8: ExecuteLocal() Ausschnitt aus der Implementierung des Access-Managers... 270 Listing 8.9: Implementierung des Moduls "Element.NumberOfImports"... 271 Listing 8.10: Equals() Ausschnitt aus der Implementierung des Moduls "Matching.DAMLOIL_DAMLOIL"... 274 Listing 8.11: Aussschnitt aus der Implementierung des Access-Moduls "IIOP"... 281 Listing 8.12: Ausschnitt aus der Implementierung des Access-Moduls "EJB"... 282 Listing A.1: ExportDocument für eine Komponente, die Bankleitzahlen ermittelt und prüft (Ausschnitt)...A-5 Listing A.2: ImportDocument suche nach eine Komponente, die Bankleitzahlen prüft...a-5 Listing A.3: Ein Vokabular in DAML+OIL (Beispiel)...A-9 Listing B.1: Schnittstelle "IDataStore"... B-1 Listing B.2: Schnittstelle "IOfferStore"... B-2 Listing B.3: Schnittstelle "IComponentStore"... B-2 Listing B.4: Schnittstelle "ISearchStore"... B-3 Listing B.5: Schnittstelle "IModuleRepository"... B-3 Listing B.6: Schnittstelle "IProtocolStore"... B-4 Listing B.7: Schnittstelle "IConfigurationStore"... B-4 Listing B.8: Schnittstelle "IClientStore"... B-4 Listing B.9: Schnittstelle "ISchemaStore"... B-5 Listing B.10: Schnittstelle "ICustomStore"... B-5 Listing B.11: Schnittstelle "ITraderCore"... B-6 Listing B.12: Schnittstelle "IFacade"... B-6 Listing B.13: Schnittstelle "IActiveServiceBlock"... B-6 Listing B.14: Schnittstelle "IPassiveBlock"... B-6 Listing B.15: Schnittstelle "IExporterManager"... B-8 Listing B.16: Schnittstelle "IImporterManager"... B-8 Listing B.17: Schnittstelle "IMatchingManager"... B-9 Listing B.18: Schnittstelle "IModuleManager"... B-10 Listing B.19: Schnittstelle "IConverterManager"... B-10 Listing B.20: Schnittstelle "ISchemaManager"... B-11 Listing B.21: Schnittstelle "IDynamicElementManager"... B-11 Listing B.22: Schnittstelle "IAccessManager"... B-12 Listing B.23: Schnittstelle "IAdministrationManager"... B-12

Einleitung XIII Listing B.24: Schnittstelle "ITraderProcess"... B-13 Listing B.25: Schnittstelle "IExport"... B-13 Listing B.26: Schnittstelle "IImport"... B-13 Listing B.27: Schnittstelle "IExecution"... B-14 Listing B.28: Schnittstelle "IAdminCall"... B-14 Listing B.29: Schnittstelle "ITraderClient"... B-15 Listing B.30: Schnittstelle "ITraderDoc"... B-15 Listing B.31: Schnittstellendefinitionen für Trader-Dokumente (Ausschnitt)... B-16 Listing B.32: Schnittstelle "IInternalDataStructure"... B-17 Listing B.33: Schnittstelle "IOffer"... B-17 Listing B.34: Schnittstelle "IOffer"... B-18 Listing B.35: Schnittstelle "IDescElement"... B-18 Listing B.36: Schnittstelle "ISearchElement"... B-19 Listing B.37: Schnittstelle "IMatchCall"... B-19 Listing B.38: Schnittstelle "ITrader"... B-20 Listing B.39: Schnittstelle "IModule"... B-22 Listing B.40: Schnittstelle "IElementBoundModule"... B-23 Listing B.41: Schnittstelle "IEventBoundModule"... B-23 Listing B.42: Schnittstelle "IDescriptionModule"... B-24 Listing B.43: Schnittstelle "ISearchModule"... B-24 Listing B.44: Schnittstelle "IMatchingModule"... B-24 Listing B.45: Schnittstelle "IConverterModule"... B-25 Listing B.46: Schnittstelle "ILinkingModule"... B-25 Listing B.47: Schnittstelle "IAccessModule"... B-26 Listing B.48: Schnittstelle "IInstallationModule"... B-26 Listing B.49: Weitere Schnittstellendefinitionen für Erweiterungsmodule... B-27

XIV Einleitung V. Abkürzungsverzeichnis.cab...Cabinet-Datei.class...Java-Class-Datei.dll...Dynamic Link Library.exe...Executable.jar...Java-Archive-Datei.mf...Manifest-Datei.msi...Microsoft Installationsdatei.sct...Scriptlet.tlb...Type Library.wsc...Windows Script Component ACE...Access Control Entry ACL...Access Control List ANSA...Advanced Network System Architecture API...Application Programming Interface APM...Projects Management Limited ATL...Active Template Library CAGR...Compound Annual Growth Rate CAS...Code Access Security CBD...Component Based Development CCD...CORBA Component Descriptor CCM...CORBA Component Model CCW...COM Callable Wrapper CDL...Component Description Language CDS...Cell Directory Service CGI...Common Gateway Interface CIAO...Component-Integrated Adaptive Communication Environment ORB CIDL...Comp onent Implementation Description Language CIL...Common Intermediation Language CLI...Common Language Infrastructure CLR...Common Language Runtime CLS...Common Language Specification COFF...Common Object File Format COM...Component Object Model COP...Component Oriented Programming CORBA...Common Object Request Broker Architecture COS...CORBA Object Services COSM...Common Open Service Market

Einleitung XV COT...Component Oriented Trading CPN...Coloured Petri Nets CSD...Software Package Descriptor CT...Component Trader CTS...Component Trader Subtree CXT...CORBA/XML-Transformer DA...Database Agent DAML...DARPA Agent Markup Language DARPA...Defense Advanced Research Projects Agency DCE...Distributed Computing Environment DCOM...Distributed Component Object Model DFS...Distributed File Service DIB...Directory Information Base DII...Dynamic Invocation Interface DIT...Directory Information Tree DMTF...Dis tributed Management Task Force DNS...Domain Name Server DocID...Document Identifier DQL...DAML Query Language DRYAD....Directory Adventure DSA...Directory System Agents DSTC...Distributed Systems Technology Centre DTD...Document Type Definition DTS...Distributed Time Service DUA...Directory User Agent E2A...End 2 Anywhere EJB...Enterprise Java Beans EJCCM...Enterprise Java CORBA Component Model ETS...Explorative Trading Service FDT...Formal Description Technique GAC...Global Assembly Cache GDS...Global Directory Service GMD...Gesellschaft für Mathematische Datenverarbeitung GUID...Global Unique Identifier HTTP...Hypertext Transfer Protocol i.d.r...in der Regel IDL...Interface Definition Language IEC...International Electrotechnical Commission IETF...Internet Engineering Task Force

XVI Einleitung IID...Interface Identifier IIOP...Inter-ORB Protocol IIS...Internet Information Services IOR...Interoperable Object Reference ISO...International Standardisation Organisation ITU...International Telecommunication Union J2EE...Java 2 Enterprise Edition JAAS...Authentication and Autorisation Services JAR...Java Archiv-Dateien JAXP...API for XML Processing JCA...J2EE Connector Architecture JCP...Java Community Process JDBC...Java Database Connectivity Jini...Java Intelligent Network Interface JMS...Java Message Service JMX...Java Management Extensions JNDI...Java Naming and Directory Interface JRMP...Java Remote Method Protocol JSP...Java Server Pages JTA...Java Transaction API JVM...Java Virtual Machine KDL...Kind Description Language KIF...Knowledge Interchange Format KQML...Knowledge Query Manipulation Language LAN...Local Area Network LDAP...Lightweight Directory Access Protocol LPC...Local Procedure Calls MDB...Typs Message Driven Bean MELODY...Management Environment for Large Open Distributed systems MIDL...Microsoft Interface Definition Language MOF...Managed Object Format NAICS...North American Industry Classification System o.g...oben genannt OASIS...Organization for the Advancement of Structured Information Standards OCL...Object Constraint Language ODP...Open Distributed Processing OIL...Ontology Interchange Language OLE...Linking and Embedding OMG...Management Group