Jürgen Schwab, debis Systemhaus 1
Komponenten - Markt VAA - Referenzmodell: eine komponentenorientierte Anwendungsarchitektur März 99 99 2
Die Voraussetzungen für einen Komponentenmarkt sind so gut wie nie zuvor: CORBA ist ein etablierter Standard für verteilte, plattformunabhängige Systeme Komponentenorientierte Anwendungsarchitekturen sind am Entstehen Enterprise Java Beans Corba Beans Allgemeine Spezifikationen für Business Objects liegen vor OMG Business Objects IBM San Francisco... 3
Es fehlen Spezifikationen für Komponenten von Versicherungsanwendungen Komponentenarchitekturen sind unterschiedlich, es gibt keine Steckerkompatibilität Die Spezifikationen für Komponentenarchitekturen sind noch im Fluß? Kann man heute Komponenten entwerfen, die in die Architekturen von morgen passen? 4
Ja, das technische Referenzmodell zeigt, wie! CORBA-Standards sind Basis Strukturvorgaben für Komponenten und Business Objects Typen von Business Objects und ihre Eigenschaften Definition allgemeiner Dienste für Business Objects herstellerneutral kann auf existierende Komponentenarchitekturen abgebildet werden 5
Technisches Referenzmodell Dienste BO-Transaktionen BO-Persistenz BO-Beziehungen Business Objects und Komponenten Suchen Erzeugen Löschen Parametrisierung Events... System- Architektur Technische Dienste CORBA Services Präsentation Datenbanken Technische Architektur Object Request Broker 6
Technische Dienste CORBA Services und Object Request Broker Dienste für die Präsentation Datenbanken FDie Systemarchitektur der VAA basiert auf den CORBA Services und berücksichtigt ihre Weiterentwicklungen in Richtung CORBA Beans Technische Dienste CORBA Services Präsentation Datenbanken 7
BO-Manager-Framework bildet den Lebensraum von Business Objects stellt Dienste für Business Objects zur Verfügung FDie Systemarchitektur der VAA definiert die Mindestfunktionalität eines BO-Manager - Frameworks Dienste Suchen Erzeugen Löschen BO-Transaktionen BO-Persistenz BO-Beziehungen Business Objects und Komponenten Parametrisierung Events... 8
Business Object repräsentiert einen fachlichen Ablauf oder eine fachliche Entität: Process - BO Erhöhung Versicherungssumme Entity - BO Vertrag FDie Systemarchitektur der VAA definiert grundlegende Eigenschaften von Business Objects und ihren Interaktionen Business Objects und Komponenten 9
Definition Komponente : funktional in sich abgeschlossener Softwarebaustein mit wohldefinierten Schnittstellen nach außen vermarktungsfähige Software-Einheit konfigurierbar nach fachlichen und technischen Anforderungen Vereinbarungen zwischen Komponenten, Laufzeitund Konfigurationsumgebung sind notwendig. Komponenten sind nicht unabhängig von ihrer Umgebung 10
Präsentations - Framework (Technischer Dienst) Präsentations- Komponente 1 Präsentations- Komponente 2.1 Business Object Business Object Komponente 1 Business Object Komponente 2.2 Komponente 2 BO-Manager - Framework 11
Konfigurationswerkzeuge für Framework 2 Konfigurationswerkzeuge für Framework 1 Business Object Business Object Komponente 1 Business Object Komponente 2 Business Object Business Object Komponente 1 Business Object Komponente 2 BO - Manager -Framework 2 Technische Dienste BO - Manager -Framework 1 CORBA Services Präsentation Datenbanken Object Request Broker F Die Systemarchitektur der VAA definiert Bedingungen der Interoperabilität 12
Dienste 0..1 Standard * Rufnummer Versionierbar (from LibraryPackage) VersionierbarerAkteur BO-Transaktionen BO-Persistenz BO-Beziehungen Actor-Role -Pattern Standard 0..1 an Anschrift Person 0..1 * an * Standard Ba 0..1 Bankverbindung 0..1 Technische Dienste Business Objects und Komponenten Suchen Erzeugen Löschen Object Request Broker Fachliches Referenzmodell Fachliche Komponenten Technisches Referenzmodell Parametrisierung Events... CORBA Services Präsentation Datenbanken System- Architektur Technische Architektur Fachmodell wird in Komponenten gegliedert Business Objects werden identifiziert Abläufe werden als Process Business Objects gestaltet Statuswechsel werden als Events zwischen BO s definiert Common Basic Types werden identifiziert Beziehungen werden als Verbindungen zwischen BO s gestaltet 13
EntittyBO Vertrag EntityBO Partnerrolle (= VP) Attribute VP Produkt VersNr Ablaufdatum Prämienrechner EntityBO Produkt Funktionen getversnr getablaufdatum berechneprämie Dependent Object Prämienrechner berechne 14
Beispiel: Process Business Objects Prozeß-BO Versicherungssumme erhöhen Entitäts-BO Vertrag Attribute AktSchritt EBOVertrag PBORisikoPrüfung Provision... Prozeß-BO Risiko- Prüfung (Teil-)Vorgang Funktionen start settxcontext... Dependent Objekt Provision ermitteln Andere Business Objects Vorgang 15
Fachliches Referenzmodell Versionierbar (from LibraryPackage) Actor-Role -Pattern VersionierbarerAkteur Standard 0..1 an Anschrift Person 0..1 0..1 Standard * * an Rufnummer * Standard Ba 0..1 Bankverbindung 0..1 Fachliche Komponentenmodelle Technisches Referenzmodell Enterprise Business Objects und Komponenten JavaBeans Dienste System- Architektur Technische Dienste (CORBA Services) Technische Architektur Object Request Broker 16
Fachliches Referenzmodell Versionierbar (from LibraryPackage) Actor-Role -Pattern VersionierbarerAkteur Standard 0..1 an Anschrift Person 0..1 0..1 Standard * * an Rufnummer * Standard Ba 0..1 Bankverbindung 0..1 Fachliche Komponentenmodelle Technisches Referenzmodell San Francisco Business Objects und Komponenten Dienste Technische Dienste (CORBA Services) System- Architektur Technische Architektur Object Request Broker 17
Auf Basis des Referenzmodells werden weitere Dienste spezifiziert Historisierung und Objektversionierung Ordungsbegriffe Print/Dokumentation Protokollierung/Journal... Fachmodelle werden auf Komponenten und Business Objects abgebildet 18
komponentenorientierte Architekturen konvergieren... IBM SanFrancisco Enterprise JavaBeans? CORBA Component Model Microsoft DNA? 1998 1999 2000 19
Das technische Referenzmodell der VAA bietet: eine einheitliche Form der Darstellung von Komponenten und Business Objects eine neutrale Plattform für die Definition versicherungsspezifischer Dienste einen Weg, Komponenten und Dienste auf verschiedene Plattformen abzubilden einen Weg, Anpassungsaufwand bei Plattformänderungen zu reduzieren 20