280 likes | 395 Views
OO Analyse und Entwurf für Anwender. IV. Anwendungsarchitektur Dr. Michael Löwe. Inhalt der Ausbildung. Kennzeichen objektorientierter Softwareentwicklung (1) Projektorganisation (2) Architektur (2) Objektorientierte Analyse (4) Objektorientierter Entwurf (5) Realisierung und Test (2).
E N D
OO Analyse und Entwurf für Anwender IV. Anwendungsarchitektur Dr. Michael Löwe
Inhalt der Ausbildung • Kennzeichen objektorientierter Softwareentwicklung (1) • Projektorganisation (2) • Architektur (2) • Objektorientierte Analyse (4) • Objektorientierter Entwurf (5) • Realisierung und Test (2) Prof. Dr. Michael Löwe, FHDW, Hannover
Lernziele • Kenntnisse über allgemeine Rahmenbedingungen einer Software-Entwicklung • Kennenlernen des Unterschieds zwischen • technischen Rahmenbedingungen (Systemarchitektur) und • fachlichen Rahmenbedingungen (Anwendungsarchitektur) • Inhalte und Form einer Anwendungsarchitektur • Inhalte und Form einer Systemarchitektur • Unterschied zw. OO-im-Großen und OO-im-Kleinen Prof. Dr. Michael Löwe, FHDW, Hannover
Inhalt • Anwendungsarchitektur vs. Systemarchitektur • Stilrichtungen für Anwendungsarchitekturen • Komponenten und Schnittstellen OO-im-Großen versus OO-im-Kleinen • Wie macht man eine Anwendungsarchitektur? Vom Arbeitsprozeß zur Anwendungsarchitektur • Zentrale Dienste einer Anwendungsarchitektur Prof. Dr. Michael Löwe, FHDW, Hannover
Anwendungs- vs. Systemarchitektur Anwendungsarchitektur gehört zur Analyse wie Systemarchitektur zum Entwurf Anwendungsarchitektur: Aufbau einer DV-Anwendungslandschaft aus fachlichen Komponenten und Schnittstellen Systemarchitektur: Aufbau einer DV-Anwendungslandschaft aus technischen Komponenten und Schnittstellen Prof. Dr. Michael Löwe, FHDW, Hannover
Anwendungsarchitektur Anwendungen Verteilung der Funktionen Zusammenspiel der Anwendungen Nutzer/Nutzergruppen Arbeitsfluß Systemarchitektur Systemkomponenten Verteilung der Verarbeitung (C/S) Technische Schnittstellen Safety and Security Workflow Management Anwendungs- vs. Systemarchitektur Prof. Dr. Michael Löwe, FHDW, Hannover
Bestand Buchungen Datenträger austausch Kunden Vertrieb Statistiken Schaden Darstellung: Anwendungsarchitektur Prof. Dr. Michael Löwe, FHDW, Hannover
MFT RVF-Oberfläche RVF-Eingang RVF-Ausgang RVF-Funktionen DBServer Darstellung: Systemarchitektur MFT DBServer Transport Feuer RV-System RVF Daten- haltung Unix-Server BS2-Server Unix-Server Unix-Server Prof. Dr. Michael Löwe, FHDW, Hannover
Stilrichtungen für Architekturen • Daten-basierte Architekturen • Workflow-basierte Architekturen • Message-basierte Architekturen • Verteilte Dienste • Verteilte Objekte • Das beste von allem Prof. Dr. Michael Löwe, FHDW, Hannover
Daten-basierte Architekturen Anwendung I Anwendung II Anwendung III Anwendung IV Anwendung n • • • • • • • Unternehmensweites Datenmodell Prof. Dr. Michael Löwe, FHDW, Hannover
Daten-basierte Architekturen • Grundlage: einheitliches Datenmodell • Analysefokus: Unternehmensdaten • Trennung von Daten und Funktion • Alle Anwendungen gleichberechtigt • kein fachliches Client/Server • Keine Funktionsschnittstellen • Ausschließlich Datenschnittstellen • Kommunikation über das Datenmodell Prof. Dr. Michael Löwe, FHDW, Hannover
Workflow-basierte Architekturen Arbeitsflüsse: Ereignisse, Vorgänge, Prozesse etc. Funktion I Funktion II Funktion III Funktion IV Funktion V Funktion VI Funktion n-1 Funktion n Datenbestände Prof. Dr. Michael Löwe, FHDW, Hannover
Workflow-basierte Architekturen • Grundlage: einheitliches Vorgangsmodell • Analysefokus: Arbeitsabläufe • Trennung von Funktionen und Prozessen • Kaum sichtbare Anwendungen • Keine Funktionsschnittstellen • Wenig Datenschnittstellen • Kommunikation über explizite Workflows Prof. Dr. Michael Löwe, FHDW, Hannover
Message-basierte Architekturen Anwendung I Anwendung II Anwendung IV Anwendung III Anwendung VI Prof. Dr. Michael Löwe, FHDW, Hannover
Message-basierte Architekturen • Grundlage: einheitliches Nachrichtenmodell • Analysefokus: Nachrichtenaustausch • Trennung von Anwendung und Kommunikation • Keine Funktions- und Datenschnittstellen • Kommunikation über asynchronen Nachrichtenaustausch Prof. Dr. Michael Löwe, FHDW, Hannover
Verteilte Dienste Dienst I Dienst II Dienst V Dienst III Dienst IV Dienst VII Dienst VI Prof. Dr. Michael Löwe, FHDW, Hannover
Verteilte Dienste • Grundlage: einheitliches Funktionsmodell • Analysefokus: Funktionszerlegung • Kaum erkennbare Anwendungen • Trennung von Funktion und Prozeß • Ausschließlich Funktionsschnittstellen • Keine Datenschnittstellen • Kommunikation über synchronen Funktionsaufruf Prof. Dr. Michael Löwe, FHDW, Hannover
Dienst VI Dienst V Dienst VI Dienst VII Dienst IX Dienst X Dienst I Dienst II Dienst III Dienst XI Dienst XII Dienst XIII Daten II Daten III Daten I Daten IV Verteilte Objekte Prof. Dr. Michael Löwe, FHDW, Hannover
Verteilte Objekte • Grundlage: einheitliches Objektmodell • Analysefokus: Zusammenfassung von Daten und zugehörigen Diensten • Anwendungen = Objekte-im-Großen • Keine Datenschnittstellen • Kommunikation über synchronen Nachrichtenaustausch Prof. Dr. Michael Löwe, FHDW, Hannover
Komponenten in einer Architektur Komponentenschnittstelle: Angebot (synchr.) Dienste Verarbeitbare asynchrone Nachrichten Gekapselte Funktionen: Inneres Verhalten Verantwortlichkeiten Gekapselte Daten: Innere Zustände Teil am Gesamtdatenmodell Schnittstelle Gekapselte Funktionen Gekapselt Daten Prof. Dr. Michael Löwe, FHDW, Hannover
Schnittstellen in einer Architektur Eigenständiger Vermittler zwischen Komponenten Realisiert durch Diensteerbringer Genutzt durch Dienstenachfrager Vertrag zwischen fach-lichem Client und Server benutzt Syn- chron Asyn- chron realisiert Prof. Dr. Michael Löwe, FHDW, Hannover
Black Box White Box Schnittstelle Gekapselte Funktionen Gekapselt Daten OO-im-Großen vs. OO-im-Kleinen Prof. Dr. Michael Löwe, FHDW, Hannover
OO-im-Kleinen Realisierung von Einzelobjekte Material u. Werkzeug Datenobjekte Beispiele: Adresse Auftrag Verteilplan OO-im-Großen Zusammenfassung gleichartiger Objekte Management Managerobjekte Beispiele: Adressverwaltung Auftragsverwaltung F+B-Management OO-im-Großen vs. OO-im-Kleinen Prof. Dr. Michael Löwe, FHDW, Hannover
Wie macht man eine Architektur? • Analyse der Arbeitsabläufe Prozeßbeschreibungen • Zerlegung in elementare Vorgänge Arbeitsgänge, die ein Sachbearbeiter erledigt • Definition der unterstützenden Dienste Clusterung der Systemdienste entlang Vorgängen • Analyse der Materialien für jeden Dienst Objektmodelle für jeden Dienst • Zusammenfassung entlang gemeinsamer Materialien Anwendungen; Objekte im Großen Prof. Dr. Michael Löwe, FHDW, Hannover
Bestandsanwendung F+B - System Maklersystem Buchungssystem KVK-Anschluß Beispiel: Abrechnungsprozeß • Unabhängige Abrechnung • für Vertrag • für Beteiligungen • für Maklerprovisionen • Vollstorno als Dienst • Unabhängigkeit von KVK • Vertragsabrechnung nutzt • F+B - Abrechnung • Maklerabrechnung • F+B nutzt • Maklerabrechnung Prof. Dr. Michael Löwe, FHDW, Hannover
Aufbauorganisation Stellen und Gruppen Rechte und Kompetenzen Delegationswege Vertretungsregelungen „Konstanten“-Service Schlüsseltabellen Servicetabellen Externe Anbieter Interne Dienste Parametertabellen Funktionstabellen Steuertabellen Kommunikationspartner Zentrale Dienste einer Architektur Prof. Dr. Michael Löwe, FHDW, Hannover
Weitere zentrale Dienste • Terminverwaltung • Auftragsdienst • Archive • Textverarbeitung • Textrecherche • Elektronische Korrespondenz • etc. Prof. Dr. Michael Löwe, FHDW, Hannover
Zusammenfassung Anwendungsarchitekturen zerlegen DV-Landschaften so in Komponenten, wie Klassen- und Objektmodelle Anwendungen zerlegen. In einer Anwendungsarchitektur drückt sich die (globale) Balance zwischen Arbeitsprozessen und bearbeiteten Materialien aus. Anwendungsarchitekturen stellen neben einem Gerüst für fachliche Komponenten ein globales „Denkschema“ und darin fachunabhängige, zentrale Dienste zur Verfügung Prof. Dr. Michael Löwe, FHDW, Hannover