Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

6. Vorlesung: Statische Konzepte

Ähnliche Präsentationen


Präsentation zum Thema: "6. Vorlesung: Statische Konzepte"—  Präsentation transkript:

1 6. Vorlesung: Statische Konzepte
Assoziationen Kardinalitäten Assoziative Klassen Aggregation Komposition Mehrwertige Assoziationen Hans-Jürgen Steffens Systemanalyse SS 04

2 Assoziation Assoziationen modellieren Verbindungen zwischen Objekten einer oder mehrerer Klassen Im Objekt-Diagramm: Hans-Jürgen Steffens Systemanalyse SS 04

3 Assoziation Konto Kunde besitzt Kontonr Name Art 1 * Eröffnung
Wird im Klassendiagramm modelliert: Ein Kunde kann mehrere Konten haben Ein Konto gehört zu genau einem Kunden In der Analyse sind Assoziationen immer bidirektional: Ein Kunde kennt seine Konten, ein Konto kennt seinen Kunden Name der Assoziation mit Leserichtung (optional) Konto Kunde besitzt Kontonr Name Art 1 * Eröffnung Kardinalität Hans-Jürgen Steffens Systemanalyse SS 04

4 Kardinalitäten (Multiplicities)
Beschreiben, mit wie vielen Partner-Objekten ein Objekt über eine bestimmte Assoziation in Verbindung stehen kann Beispiele: 1 genau 1 oder 1 * beliebig viele (auch 0) 1..* 1 oder mehr 3..* 3 oder mehr bis 2 2 genau 2 2, 4, 6 2, 4 oder 6 1..5, 8, 10..* nicht 0,6,7 oder 9 Hans-Jürgen Steffens Systemanalyse SS 04

5 Beispiele für Assoziationen
Mann ist verheiratet mit Frau 0..1 0..1 Mann Ehe Frau * * (auch frühere Ehen) Erwachsener Elternschaft Kind 2 * Besser: Person * Kind Elternschaft 2 Eltern Hans-Jürgen Steffens Systemanalyse SS 04

6 Kann- und Muss-Assoziationen
Kunde kann ein Konto haben, Konto muss zu einem Kunden gehören: Kunde muss mindestens ein Konto haben, Konto muss zu einem Kunden gehören: Wird das letzte Konto des Kunden gelöscht, muss auch der Kunde gelöscht werden Muss-Assoziation: Untergrenze > 0 Kann-Assoziation: Untergrenze 0 1 * Kunde Konto 1 1..* Kunde Konto Hans-Jürgen Steffens Systemanalyse SS 04

7 Reflexive Assoziationen
Assoziationen zwischen Objekten der selben Klasse 0..1 Angestellter Chef Rollen-Namen (bei reflexiven Assoziationen erforderlich) * Mitarbeiter Hans-Jürgen Steffens Systemanalyse SS 04

8 Reflexive Assoz. – Beispiel für Objektbeziehungen
Hans-Jürgen Steffens Systemanalyse SS 04

9 Notation für Assoziationen
Klasse 1 Name Klasse 2 k1 k2 Attribut Attribut Rolle1 Rolle2 Operation() Operation() Klasse k1 Attribut Rolle1 Operation() Rolle2 k2 Name Hans-Jürgen Steffens Systemanalyse SS 04

10 Mehrere Assoziationen zwischen gleichen Klassen
Bestehen mehrere Assoziationen zwischen denselben Klassen, sind sie durch Klassennamen oder Rollenbezeichnungen voneinander zu unterscheiden Konto 1 * Kunde Inhaber Kontonr Name Art Eröffnung * * Berechtigter Hans-Jürgen Steffens Systemanalyse SS 04

11 Mehrere Assoziationen zwischen gleichen Klassen
Fachlicher Vorgesetzter Disziplinarischer Vorgesetzter Angestellter 0..1 0..1 * * Hans-Jürgen Steffens Systemanalyse SS 04

12 Assoziative Klasse Assoziation kann zusätzlich die Eigenschaften einer Klasse haben (Attribute, Operationen, Beziehungen zu anderen Klassen) Kunde Veranstaltung * * Name Nummer Adresse Dauer Buchung Anmeldedatum Abmeldedatum Rechn.datum anmelden() abmelden() Hans-Jürgen Steffens Systemanalyse SS 04

13 Assoziative Klasse - Beispiel
Ehe DatumHochzeit DatumScheidung Mann * * Frau Hans-Jürgen Steffens Systemanalyse SS 04

14 Auflösung von assoziativen Klassen
a) b) Unterschied: Im Fall a) gibt es für jede Kombination von Objekten der Klassen A und B nur genau ein Objekt der Klasse C. Im Fall b) ist es möglich für eine bestimmte Kombination von A und B mehrere Objekte der Klasse C anzulegen. * * A B A B 1 1 C * C * Hans-Jürgen Steffens Systemanalyse SS 04

15 Qualifizierte Assoziation
Auftrag Auftrag 1 Produktnr 1 1..* 0..1 Qualifizierendes Attribut Position Position Niedrigere Kardinalität * * 1 1 Produkt Produkt Produktnr Name Produktnr Name Auftrag kann mehrere Positionen enthalten Im linken Beispiel könnte man mehrere Positionen für das gleiche Produkt anlegen Rechts ist dargestellt, dass es nur eine Position pro Produktnr. geben darf Höherer Informationsgehalt des Modells Hans-Jürgen Steffens Systemanalyse SS 04

16 Abgeleitete Assoziationen
Abgeleitete Assoziationen lassen sich aus anderen Assoziationen berechnen (sind insofern redundant) Werden mit Präfix / gekennzeichnet Hans-Jürgen Steffens Systemanalyse SS 04

17 Aggregation Gerichtete Beziehung im Sinne von „ist Teil von“
Drückt eine Rangordnung aus Aggregat Komponente Hans-Jürgen Steffens Systemanalyse SS 04

18 Eigenschaften von Aggregationen
Es gelte: Daraus folgt Zyklen sind verboten: (Transitivität): (Azyklischer Gerichteter Graph) x x x Hans-Jürgen Steffens Systemanalyse SS 04

19 Shared Aggregation (Weak Ownership)
Mehrfache Zuordnung ist bei Aggregations i.d.R. erlaubt Komponente kann auch ohne das Aggregat existieren (keine Existenzabhängigkeit) Hans-Jürgen Steffens Systemanalyse SS 04

20 Komposition Starke Form der Aggregation Zusätzlich zur Aggregation:
Auftrag Kardinalität braucht nicht angegeben werden, ist immer 1 * Auftragsposition Starke Form der Aggregation Zusätzlich zur Aggregation: Strong Ownership: Jede Komponente darf zu einem Zeitpunkt nur zu einem Aggregat gehören Existenzabhängigkeit: Die Komponente kann nicht alleine existieren, wird das Aggregat gelöscht, muss auch die Komponente mit gelöscht werden Hans-Jürgen Steffens Systemanalyse SS 04

21 Aggregationen und Komposition
Dokument * * * * * Kapitel Bemerkung Abbildung Hans-Jürgen Steffens Systemanalyse SS 04

22 Mehrwertige Assoziationen
Mehrwertige Assoziationen können keine Kompositionen oder Aggregationen bilden Ergebnis AnzahlTore Verein * * Fußball-Spieler * Jahr Hans-Jürgen Steffens Systemanalyse SS 04

23 Zusammenfassung Assoziationen repräsentieren Verbindungen zwischen Objekten einer oder mehrerer Klassen Mit Hilfe von Kardinalitäten wird dargestellt, wie viele Objekte der beteiligten Klassen jeweils miteinander eine Beziehung eingehen können Assoziationen können selbst Operations, Attribute und Beziehungen haben (Assoziative Klasse) Aggregationen sind gerichtete Beziehungen im Sinne von „ist Teil von“ Kompositionen sind Aggregationen, wobei jede Komponente genau zu einem Aggregat gehört und existenzabhängig von diesem ist Hans-Jürgen Steffens Systemanalyse SS 04

24 Übungsfragen Wie werden Kardinalitäten angegeben und was bedeuten sie?
Was ist eine reflexive Assoziation? Wie werden Restriktionen bzgl. Assoziationen angegeben? Wozu benötigt man Assoziationsklassen? Wie kann man diese auflösen? Erläutern Sie Aggregation und Komposition und grenzen Sie sie voneinander ab! Was ist eine mehrwertige Assoziation? Hans-Jürgen Steffens Systemanalyse SS 04


Herunterladen ppt "6. Vorlesung: Statische Konzepte"

Ähnliche Präsentationen


Google-Anzeigen