1 / 41

OO Analyse und Entwurf für Anwender

OO Analyse und Entwurf für Anwender. V. Systemarchitektur 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).

Download Presentation

OO Analyse und Entwurf für Anwender

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. OO Analyse und Entwurf für Anwender V. Systemarchitektur Dr. Michael Löwe

  2. 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

  3. 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

  4. Inhalt • Anwendungsarchitektur vs. Systemarchitektur • Komponentenmodelle vs. Modelle für Komponenten • Stilrichtungen von Komponentenmodellen • Client-Server-Architektur • Softwaretechnisch • Hardwaretechnisch • „Unsere“ Client/Server-Architektur • WWW, (Dynamic) HTML, Browser und Java • Architektur der Datenhaltung • Zentrale Dienste einer Systemarchitektur Prof. Dr. Michael Löwe, FHDW, Hannover

  5. 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

  6. RVF-Oberfläche RVF-Eingang RVF-Ausgang RVF-Funktionen DBServer Darstellung: Systemarchitektur MFT MFT DBServer Transport Feuer RV-System RVF Daten- haltung Unix-Server BS2-Server Unix-Server Unix-Server Prof. Dr. Michael Löwe, FHDW, Hannover

  7. RVF-Oberfläche MFT MFT RVF-Eingang RVF-Ausgang RVF-Funktionen DBServer Transport DBServer Feuer RV-System RVF Daten- haltung Unix-Server BS2-Server Unix-Server Unix-Server Die zwei Dimensionen dieser Darstellung DVS/FB DVS/TR Oberfläche Anwendungslogik Arbeitsplatzrechner Eingang Geschäftsobjekte RVF Zerlegung in Komponenten Zerlegung der Komponenten Netz Daten- haltung Daten- haltung Ausgang RVA Zentralrechner Prof. Dr. Michael Löwe, FHDW, Hannover

  8. Komponentenmodelle Technische Realisierung der Anwendungsarchitektur Aufbau eines Systems aus uniformen Teilen Zusammenspiel von unterschiedlich realisierten Komponenten Austauschbarkeit von Systemteilen Modelle für Komponenten Technische Realisierung einer jeden Komponente Aufbau einer Komponente aus heterogenen Teilen Zusammenspiel und Realisierung von Oberfläche, Logik und Datenhaltung Austauschbarkeit von Komponententeilen Zwei Dimensionen der Systemarchitektur Prof. Dr. Michael Löwe, FHDW, Hannover

  9. DBMS 2 K 1 DBMS 1 DBMS 2 DBMS 1 DBMS 2 DBMS 2 K 4 K 3 DBMS 1 DBMS 1 DBMS 2 K 5 DBMS 1 Zwei Dimensionen der Systemarchitektur – Austauschbarkeit – K 2‘ K 2 Prof. Dr. Michael Löwe, FHDW, Hannover

  10. Stilrichtungen für Systemarchitekturen • Daten-basierte Architekturen • Verteilte Dienste Remote Procedure Call (RPC) • Verteilte Objekte Common Object Request Broker Architekture (CORBA) • „Unsere“ Komponentenarchitektur Prof. Dr. Michael Löwe, FHDW, Hannover

  11. Daten-basierte Anwendungsarchitektur Ablauf der Anwendungen Anwendung I Anwendung II Anwendung III Anwendung IV Anwendung n • • • • • • • Unternehmensweites Datenmodell Prof. Dr. Michael Löwe, FHDW, Hannover

  12. Daten-basierte Architekturen • Grundlage: einheitliches Datenmodell • Analysefokus: Unternehmensdaten • Trennung von Daten und Funktion • Alle Anwendungen gleichberechtigt • kein fachliches Client/Server • Keine Funktionsschnittstellen • Ausschließlich Daten- und Dialogschnittstellen • Kommunikation über das Datenmodell Prof. Dr. Michael Löwe, FHDW, Hannover

  13. Klassische Ho(r)st-Systemarchitektur Transaktionsmonitor Programm I Programm II Programm III Programm IV Programm n • • • • • • • Datenbankmanagementsystem Prof. Dr. Michael Löwe, FHDW, Hannover

  14. Architektur als Verteilte Dienste Dienst I Dienst II Dienst V Dienst III Dienst IV Dienst VII Dienst VI Prof. Dr. Michael Löwe, FHDW, Hannover

  15. 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

  16. Remote Procedure Call Dienst I (Client) Client Program Ruft lokal auf Ergebnisrückgabe Client Stub generiert benutzt Funktionspezifikation z.B. IDL in DCE Transport- Infrastruktur benutzt generiert Server Stub Ruft lokal auf Ergebnisrückgabe Dienst II (Server) Server Program Prof. Dr. Michael Löwe, FHDW, Hannover

  17. Remote Procedure Call • Realisiert diensteorientierte Anwendungsarchitektur • Systemweit einheitliche Funktionsspezifikation • Unterstützt heterogene Diensterealisierungen • Unterstützt unterschiedliche Plattformen • Dynamische Bindung von Servern möglich • Erhöhter Realisierungsaufwand • Performanzverluste durch Transportdienst Prof. Dr. Michael Löwe, FHDW, Hannover

  18. 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

  19. 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

  20. 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

  21. benutzt Syn- chron Asyn- chron realisiert Schnittstellen in einer Architektur Eigenständiger Vermittler zwischen Komponenten Realisiert durch Diensteerbringer Genutzt durch Dienstenachfrager Vertrag zwischen fach-lichem Client und Server Prof. Dr. Michael Löwe, FHDW, Hannover

  22. Object Request Broker (ORB) Language Mapping benutzt Client Stub Syn- chron Asyn- chron IDL ORB (Transportdienst) Server Stub realisiert Language Mapping Prof. Dr. Michael Löwe, FHDW, Hannover

  23. Object Request Broker (ORB) • Realisiert objektorientierte Anwendungsarchitektur • Systemweit einheitliche Objektspezifikation (OO-im-Großen) • Unterstützt heterogene Objektrealisierungen • Unterstützt unterschiedliche Plattformen • Dynamische Bindung von Servern möglich • Erhöhter Realisierungsaufwand • Performanzverluste durch Transportdienst • Standard und doch kein Standard (Inter-ORB-Protokoll) • Derzeit die Systemarchitektur mit größter Flexibilität Prof. Dr. Michael Löwe, FHDW, Hannover

  24. 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

  25. Beispiel: Workflow „unter“ ORB 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

  26. Workflow Objekt Request Broker Server 1 Client 1 Client 2 Server 2 Client 3 Server 3 Client 4 Server 4 Server 5 Client 5 Funktion n Funktion V IV, VI, n-1 I und III Funktion II Beispiel: Workflow „unter“ ORB Prof. Dr. Michael Löwe, FHDW, Hannover

  27. „Unsere“ Komponentenarchitektur Rahmenanwendung (in SmallTalk): Navigieren, Suchen und Beziehungsaufbau registrieren Anwendung I Anwendung II Anwendung III Dienste I Dienste II Dienste III Objektwelt I Objektwelt II Objektwelt III Entfernte Beziehung Prof. Dr. Michael Löwe, FHDW, Hannover

  28. Client/Server-Architektur Softwaretechnisch Hardwaretechnisch benutzt Netz Syn- chron Asyn- chron realisiert Prof. Dr. Michael Löwe, FHDW, Hannover

  29. C/S – hardwaretechnisch – • Abgrenzung zu „Alles passiert auf einem Rechner“ • Trennung „Single-User“ von „Multi-User“ • Hardware-Struktur soll orthogonal zu Software-Struktur sein • Wer Client und Server ist, entscheidet die Software • Client/Server in Hardware behindert die Architektur • Mainframe ist Datenserver für PC • PC ist Textserver für Mainframe • Client/Server versus Distributed Computing Prof. Dr. Michael Löwe, FHDW, Hannover

  30. Oberfläche, Anwendungslogik und Persistenzschicht in SmallTalk (VA) DDE DBServer (SQL + TM) Unsere Client/Server-Struktur PC TCP/IP-Netz Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Prof. Dr. Michael Löwe, FHDW, Hannover

  31. Unsere Client/Server-Struktur • Fat Client • Kapselung der DBMS-Klienten Server: Informix, Oracle, Sybase, Upic/UTM Client: VA, VSE, ISA-DM, C, Word • Betriebssysteme Server: Unix oder NT oder BS2000 oder .... Client: NT (Desktop oder Winframe-Server) • Batchverarbeitung in derselben (Hardware-) Architektur (Z. B. Textformatierung oder Auftragskommunikator) Prof. Dr. Michael Löwe, FHDW, Hannover

  32. Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Architektur mit Anwendungsserver PC PC Oberfläche, Anwendungs- logik und Persistenzschicht in SmallTalk (VA) PC Oberfläche Oberfläche DDE TCP/IP-Netz DBServer (SQL + TM) Anwendungslogik Geschäftsobjekte TCP/IP-Netz TCP/IP-Netz Prof. Dr. Michael Löwe, FHDW, Hannover

  33. Vorteile Softwareverteilung Datensicherheit Verfügbarkeit Skalierbarkeit Netzwerkfähigkeit Ressourcen-Sharing Administration Operating Schnelle Netzte Nachteile Multi-User Konkurrenz Architektur mit Anwendungsserver Prof. Dr. Michael Löwe, FHDW, Hannover

  34. Oberfläche, Anwendungslogik und Persistenzschicht in SmallTalk (VA) DDE DBServer (SQL + TM) Beispiel: Winframe NT-Oberflächenemulation TCP/IP-Netz, WAN Anwendungs- server TCP/IP-Netz Datenbank- Server Datenbank- Server Datenbank- Server Datenbank- Server Prof. Dr. Michael Löwe, FHDW, Hannover

  35. WWW, HTML, Browser und Java Verteilte Klassen versus verteilte Objekte Prof. Dr. Michael Löwe, FHDW, Hannover

  36. Architektur der Datenhaltung • DBMS-Clustering • DB Verteilung • DB Fragmentierung • horizontal • vertikal • DB Replikation • asymmetrisch • symmetrisch Prof. Dr. Michael Löwe, FHDW, Hannover

  37. Fragmentierung Horizontal Vertikal Teilbestand Gesamtbestand Teilinformation Teilinformation Gesamtinformation Teilbestand Teilbestand Prof. Dr. Michael Löwe, FHDW, Hannover

  38. Replikation Asymmetrisch Symmetrisch Kopie vom Original- bestand Original- bestand I Original- bestand II Original- bestand ¿ Konflikte ? Prof. Dr. Michael Löwe, FHDW, Hannover

  39. Architektur der Datenhaltung Empfehlungen: • Zentraler Bestand • Jedes Datum möglichst nur einmal • Keine selbstverwalteten Spiegelbestände • Replikation nur asymmetrisch zum Lesen • Datenkaufhaus • WWW • Clustering und Fragmentierung zum Tuning Prof. Dr. Michael Löwe, FHDW, Hannover

  40. Zentrale Dienste einer Systemarchitektur • Global Directory aller Principals • Nutzer und • Rechner • Time-Service • Security Services • Transaktionsdienste • Suchdienste Prof. Dr. Michael Löwe, FHDW, Hannover

  41. Zusammenfassung Systemarchitekturen haben zwei Dimensionen • Technische Realisierung der Anwendungsarchitektur • Verfeinerte technische Strukturierung der einzelnen Komponenten einer Anwendungsarchitektur Systemarchitekturen beschreiben • den Aufbau eines Systems aus Softwarekomponenten • die Hardware-Architektur • die Abbildung der Software- auf die Hardware-Architektur Systemarchitekturen beschreiben insbesondere Mangement der Daten Prof. Dr. Michael Löwe, FHDW, Hannover

More Related