Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Tristan Hafner Geändert vor über 8 Jahren
1
Vorbereitung Stimmen meine sprachlichen Regelungen mit den Aussagen aus dem SOPHIST-Buch überein?! alle ?? entfernt?! Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
2
Vorbereitung Beamer, Laptop, Maus 5 Exemplare der Diss
Anwesenheitsliste Handout IS-Artikel: Architektur OS-Artikel von Oesterreich über GePro Modellierung mit UML sprachliche Richtlinine aus Sophist-Buch kopieren Fragen? Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
3
Software Architektur-Modelle
Vorlesung Software Architektur-Modelle Grundlagen 3: UML Dr. Harald Störrle Ludwig-Maximilians-Universität München Wintersemester 2001 Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
4
Organisatorisches WWW-Angebot
Buch bitte nach der Vorlesung abholen (DM 25) (Fehler bitte melden, Erratum in Vorbereitung) Vorlesungszeit ist kostbar, und dies ist keine Anfängerveranstaltung: Vorwissen und Nacharbeit sind erforderlich! Aufgaben vom letzen Mal Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
5
Aufgaben vom letzten Mal
Geschäftsprozesse einer Bibliothek Was gibt es für welche? Welchen haben Sie vertieft? Wie sind Sie vorgegangen? Welche Notationen haben Sie verwendet? Welchen Schwierigkeiten sind Sie begegnet? Welche Erkenntnisse haben Sie daraus gezogen? Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
6
Aufgaben vom letzten Mal Beabsichtigte Lerneffekte
„Bewußtseinserweiterung“ hört sich einfach an - und ist mit das Schwerste es gibt eine Vielzahl verschiedener Notationen mit unterschiedlichen Vor- und Nachteilen Die allgemeine Verständlichkeit einer Notation ein entscheidender Vorteil, selbst wenn sie mit sonstigen Nachteilen erkauft würde. Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
7
Semestervorschau Überblick
Einleitung Architektur-Einheiten („Komponenten“) Semantik-Formalismen (CSP, PN, ES, LTS) Entwurfs-Notationen (UML, SARA) Wright Darwin UML/AM (SARA, ROOM, UML/RT, SDL,...) Elementare Methodiken Konsistenz, Verifikation Validation, Soft-Factors Rückschau Grundlagen 3 ADLs 7 Prozesse 2 Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
8
Semestervorschau Überblick (neu)
Einleitung Architektur-Einheiten („Units“) Modellierungs-Notationen (UML, ...) Semantik-Formalismen (CSP, PN; Traces, LTS, PW) Wright Darwin UML/AM Konsistenz, Verifikation S/390 („Host“) & CICS vs. EJB & Applicationserver Grundbegriffe am Beispiel Änderungsverwaltung elementare Methodiken Validation, Soft-Factors Rückschau Grundlagen 3 ADLs 5 Host vs. EJB Prozesse 3 Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
9
Semestervorschau Überblick (neu)
Einleitung Architektur-Einheiten („Units“) UML vs. Wright, Darwin, SARA, ROOM UML 2 UCM, UML/AM Wright, Darwin, SARA, ROOM Semantik-Formalismen (CSP, PN; Traces, LTS, PW) Konsistenz, Verifikation S/390 („Host“) & CICS vs. EJB & Applicationserver Grundbegriffe am Beispiel Änderungsverwaltung elementare Methodiken Validation, Soft-Factors Rückschau ADLs 5 Host vs. EJB Prozesse 3 Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
10
Ziele für heute (& nächstes Mal)
Einführung in UML Grundlagen Notationen Grundbegriffe der Methodologie Vertiefung am Beispiel „Bibliothek“ Lücken und Probleme der UML UML-Erweiterungen für Architektur-Modellierung UML-Semantik Konsistenz von Modellen Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
11
UML Übersicht Kurze Geschichte der Methodik
UML\RT UML\AM UML 2.0 UML 1.1 UML 1.4 Booch‘93 OMT‘94 OOSE‘94 (UML 1.0) StateCharts 80‘er Harel OOSE 80‘er, Jacobson et al. OMT 80‘er Jahre ROOM 94, Selic et al. SARA 70‘er, Estrin et al. Objectory 70‘er, Jacobson et al. SADT, MSC, SDL, ... UML 0.8 Booch/Rumbaugh UML 0.9 „3 Amigos“ UML 1.3 1997 2001 2002? 2000 1998 Personen erwähnen Inhaltliche Schwerpunkte: OMT: Design Booch: Analyse OOSE: Anforderungen, Prozeß SARA: Architektur Harel: Verhalten Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
12
UML Übersicht Interner Aufbau in 4 Schichten
S3 Meta-Metamodel MOF S2 Metamodell P/LMM, CDIF, CWM S1 Modell S0 System Metamodell Vererbungshierarchie Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
13
UML Übersicht Erfolgsfaktoren
Konsolidierung des Methodik-„Marktes“ durch die vereinte Anstrengung der 3 Marktführer. Dadurch wurde der Aufwand für Integration (formale) Semantik Werkzeuge überhaupt erst wirtschaftlich tragbar. Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
14
UML Übersicht Geltung, Abdeckung, Rang
Nur ein Quasi-Standard von der (Hersteller-Vereinigung) OMG, gilt aber de-facto: „UML ist die lingua franca der Software-Engineering Community“. UML definiert Notation und eine informelle Semantik, aber kein Vorgehen, keine Methodik. UML unterstützt Objektorientierung (was immer das sein mag), ist aber nicht darauf beschränkt. UML deckt recht viel von dem ab, was abgedeckt werden muß. UML ist (einigermaßen) präzise, aber (noch) nicht immer formal interpretierbar. UML hat viele Fehler und Lücken, aber es ist der beste Ansatz bislang. UML wird auf absehbare Zeit das Kommunikationsvehikel (von Architekten) sein. Abdeckung Rang Fazit Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
15
UML Übersicht Werkzeuge
Die meisten Werkzeuge sind sehr weit weg von der UML (z.B. Rational Rose, Together). Es gibt aber auch sehr gute Werkzeuge, die sich wirklich an die UML halten (insbesondere MagicDraw). Für kleine Beispiele gehen auch einfache Malwerkzeuge (Visio „Schablone „Software“, xfig). Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
16
UML Übersicht Nutzen der UML
Entscheidender Schritt von UML 0.8 zu 1.1 Integration der Notationen und Begriffswelten durch Metamodell. Das ist es, was UML wertvoll macht. Damit ist potentiell eine echte (d.h. formale und umfassende) Semantik möglich. Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
17
Notationen in der UML Nutzfalldiagramm („Anwendungsfalldiagramm“)
„statische-Struktur-Diagramme“ Klassendiagramm, Objektdiagramm Zustandsdiagramm Aktivitätendiagramm Interaktionsdiagramme Sequenzdiagramm Kollaborationsdiagramm Implementationsdiagramm Komponentendiagramm Verteilungsdiagramm Paketdiagramm Object Constraint Language (OCL) Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
18
UML Notationen 1. Nutzfalldiagramm
Gegenstand funktionale Anforderungen (inkl. Geschäftsprozesse) beliebiger Modellelemente Elemente Aktor, Nutzfall, div. Beziehungen, Systembox Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
19
UML Notationen 1. Nutzfalldiagramm
Einbettung Actor und UseCase sind Classifiers „Bounding Box“ exisitiert nicht Extend, Include, Generalisation, Association sind Relationships Semantik unklar Beziehungen zu ActionState, Subsystem und Interface? UseCaseInstance aber keine ActorInstance? Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
20
UML Notationen Nutzfälle Bibliothek
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
21
UML Notationen Kontext Bibliothek
Ebene 0 des Systems „Bibliothek“ enthält das Unterstützungssystem selber, den Leser, den Interessenten und den Bibliothekar. Der Kontext eines Systems ist die Struktur auf der übergeordneten Ebene. Beachte: Bibliothek vs. Bibliothekssystem Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
22
UML Notationen Geschäftsprozesse Bibliothek
Layout Überschneidungen Knickpunkte „Kamm“-Notation horizontal vertikal Namen System GePros („Bestandspflege“) Aktoren ->Glossar Beachte: keine Systemgrenze Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
23
UML Notationen Facharchitektur Bibliothek
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
24
UML Notationen Zuordnung GePros / Facharchitektur
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
25
UML Notationen 2. Klassendiagramm
Gegenstand statische Struktur Elemente Klasse, Schnittstelle, div. Beziehungen; Aktor, Objekt, Link Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
26
UML Notationen 2. Klassendiagramm
Einbettung Class, Interface sind Classifier, Object ist Instance Assciation, Generalisation , Flow, Dependency (und Unterklassen) sind Relationships Semantik im Prinzip: Code. Aber was ist mit AssociationClass, n-ären Assoziationen, Aggregation vs. Komposition, Analyse- vs. Implementationsklassen? Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
27
UML Notationen 2. Klassendiagramm
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
28
UML Notationen 3. Zustandsdiagramm
Gegenstand generisches Verhalten belibiger Modellelemente Elemente verschiedene Arten Zustände, Transitionen Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
29
UML Notationen 3. Zustandsdiagramm
Einbettung vollkommen separater Baum - historisch bedingt Wie könnte es anders sein? Ist ein Zustand/ein Automat generisch oder eine Instanz? Semantik Umfängliche textuelle Beschreibung, viele Lücken und unklarheiten, die aber aus den Vorläufern heraus formal interpretierbar sind. Es gibt hunderte StateChart-Semantiken... Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
30
UML Notationen 3. Zustandsdiagramm
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
31
UML Notationen 4. Aktivitätendiagramm
Gegenstand Kontroll- & Datenfluß Elemente verschiedene Arten Aktivitäten, Transitionen, Flußrelation, Daten, Schwimmbahnen Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
32
UML Notationen 4. Aktivitätendiagramm
Einbettung ActivityGraph ist eine StateMachine Swimlanes? (Achtung - „Bounding box“!) Semantik siehe StateMachine ObjectFlowStates sind im MM rein syntaktisch Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
33
UML Notationen 4. Aktivitätendiagramm
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
34
UML Notationen 4. Aktivitätendiagramm
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
35
UML Notationen 5. Sequenzdiagramm
Gegenstand Interaktion von beliebigen Modellelementen (Fokus: Zeit) Elemente Rollen, Lebenslinien, Aktivierung, Nachrichten Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
36
UML Notationen 5. Sequenzdiagramm
Einbettung eigener Baum - historisch bedingt Partielle Ordnung von Nachrichten auf einem Ensemble von Rollen Semantik lückenhaft (s. Dissertation von Alexander Knapp) Event Structures, Partielle Worte Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
37
UML Notationen 5. Sequenzdiagramm
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
38
UML Notationen 6. Kollaborationsdiagramm
Gegenstand Interaktion von beliebigen Modellelementen (Fokus: Rolle) Elemente Rollen, Verbindungen, Nachrichten (Punkt-Notation, Buchstaben) unübersichtlich, was den Ablauf angeht aber das Layout bleibt (ggf.) bestehen Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
39
UML Notationen 6. Kollaborationsdiagramm
Einbettung identisch zu Sequenzdiagramm Semantik Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
40
UML Notationen 7. Komponentendiagramm
Gegenstand statische Struktur auf Implementationsebene Elemente Komponente, Schnittstelle, div. Beziehungen Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
41
UML Notationen 8. Verteilungsdiagramm
Gegenstand Systemtopologie und Verteilung von Komponenten darauf Elemente Knoten, Verbindung, & Elemente des Komponentendiagrammes Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
42
UML Notationen 9. Paketdiagramm
Gegenstand statische Struktur von Artefakten (Modelle, Code, ...) Elemente Pakete, Schnittstellen, div. Beziehungen & Elemente des Klassendiagrammes Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
43
UML Notationen (2,) 7, 8, 9: „Implmentation“
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
44
UML Notationen 2, 7, 8, 9: Implementationsdiagramme
Einbettung Node, Component, Interface sind Classifier Dependency, Flow sind Relationships NodeInstance, ComponentInstance sind Instance Semantik Source-Code, Make-Skripte, Verzeichnisstrukturen => Abhängigkeitsgraphen, partielle Ordnung Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
45
UML Notationen 2, 7, 8, 9: Implementationsdiagramme
Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
46
UML Notationen?? 10. OCL Gegenstand
logische Randbedingungen eines Systems Elemente Schlüsselworte, Operatoren, Variablen <etwas aus dem MM> Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
47
UML Notationen?? 10. OCL Einbettung Semantik in UML 1.3: keine
in etwa getypte Prädikatenlogik erster Stufe siehe Beiträge von Knapp/Cengarle auf den letzten UML Konferenzen wird im Moment gerade zunichte standardisiert Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
48
UML Notationen 10. OCL Ein Leser darf höchstens
20 Bücher 10 Zeitschriften 10 CDs ausleihen, maximal jedoch 20 Medien. Ein Leser darf höchstens 5 Vorbestellungen aufgeben. Es kann höchstens 3 Vorbestellungen auf ein Medium geben. Die erste Mahnung ist kostenfrei, und wird erst 1 Woche nach Ablauf der Leihfrist ausgesprochen. Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
49
Ziele für heute (& nächstes Mal)
Einführung in UML Grundlagen Notationen Vertiefung am Beispiel „Bibliothek“ Lücken und Probleme der UML UML-Erweiterungen für Architektur-Modellierung UML-Semantik Konsistenz von Modellen Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
50
Architektur-Modelle und UML: Angebot / Bedarf
Geforderte Konzepte Einheiten Ports Konnektoren Protokoll ...sowie passende Notationen. Wo gibt’s das in der UML? Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
51
Architektur-Modelle und UML: Notation
Gegenstand Elemente Einbettung Semantik Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
52
UML/AM Notationen 1. SARA-Notation
Gegenstand Modellierung von großen Strukturen Elemente Einheit, Sicht, Port, Konnektor, Konfiguration, Protokoll Einbettung hierin liegt der Trick! Semantik hängt vom Verwendungszweck ab Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
53
SARA-Notation Metamodell-Ausschnitt & Einbettung
+ Sicht Einheit + + Rolle * Port Konfiguration 2..* 2..* + * Protokoll * Konnektor OH-Folie Skript Kapitel 4 Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
54
SARA-Notation Einheiten
Hülle um die Einheit Port mit Protokollrolle © Bran Selic Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
55
SARA-Notation Konfiguration
Notation zu aufwendig 3D Farbe © Bran Selic Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
56
SARA-Notation Einheit, Konnektor, Konfig., Protokoll
sender : Fax Sender receiver : Fax Channel Receiver Sender Channel Receiver call call ack ack data data © Bild: Bran Selic © Notation: Estrin et al. übernommen durch Bran Selic et al. send Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
57
Quellen ã Dr. Harald Störrle Ich empfehle (in dieser Reihenfolge):
Object Management Group: The Unified Modeling Language bzw. P:/CCI/Wissensaufbau/UML Rumbaugh, Jacobson, Booch: The UML Reference Manual Addison Wesley, 2000 Bernd Oesterreich: Objektorientierte Softwareentwicklung Oldenbourg, 2001, 5. Aufl., siehe auch Heide Balzert: Lehrbuch der Objektmodellierung Spektrum, 1999, siehe auch Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
58
Quellen ã Dr. Harald Störrle Als Hintergrund auch brauchbar:
Craig Larman: Applying UML and Patterns Prentice-Hall, 1998 D`Souza, Wills: Objects, Components, Patterns: The Catalysis Approach Addison Wesley, 1999 IEEE Architecture Working Group: P1471 pdf?isNumber=18957 Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
59
Weitere Quellen Ich rate dringend ab von: Martin Fowler: UML kompakt
Booch, Rumbaugh, Jacobson: UML Tutorial Heide Balzert: Objektorientierung in 7 Tagen Helmut Balzert: Lehrbuch der Software-Technik Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
60
Nächste beiden Male Vertiefung des Beipiels Methodik Neue Notationen
Konsistenz Semantik Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
61
Aufgabe zum nächsten Mal
Modellieren Sie die Fachlichkeit der Domäne „Bibliothek“, also die statische Struktur Objekt-Lebenszyklen typische Interaktionen mit den jeweils angemessenen Notationen. Kritisieren Sie meine Beispiele: was daran ist gut, was schlecht. Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
62
Aufgabe zum nächsten Mal für Motivierte
Modellieren Sie die Domäne „Orchester“, also den Systemkontext die statische Struktur der Domäne die Geschäftsprozesse mit den jeweils angemessenen Diagrammen. Beachte: reines Analysemodell, daher verringerte Gefahr der vorzeitigen Realisierungsorientierung. Grundlagen 3: UML VL Software Architektur-Modelle ã Dr. Harald Störrle
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.