Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana...

23
Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008

Transcript of Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana...

Page 1: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Rational Rose und UML: Erstellung einer Kontoverwaltung

Prof. SchätterWS 2007-2008

Lucia VillasanaBurak Türker

17.01.2008

Page 2: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

AgendaI. Grundlagen

i. UML und Rational Rose

ii. Objekte und Klassen

iii. Attribute und Methoden

iv. Assoziationen

II. Entwicklung eines Prototyps mit Rational Rose

i. Aufgabenstellung: Kontoverwaltung

ii. Grobmodell

iii. Strukturierung

iv. Vererbungsstruktur

v. Enumeration - Aufzählungstyp

vi. Restriktionen

III. Fazit und Ausblick

Page 3: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML-Modelle

Page 4: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

UML

UML steht für „Unified Modeling Language“, und dient zur Modellierung, Dokumentation, Spezifizierung und Visualisierung komplexer Softwaresysteme unabhängig von deren Fach-und Realisierungsgebiet

Die UML gilt als die Standard-Notation um ein objektorientiertes Softwaresystem zu modellieren.

UML ist als Modellierungssprache in Rational Rose verwendet

Rational Rose ist eine UML-Werkzeug zur Beschreibung von Softwaresystemen.

Rational Rose

i. UML und

Rational Rose

ii. Diagramm-

Sprachen der

UML

iii. Objekte

und Klassen

iii. Attribute und

Methoden

iv. Assoziationen

Page 5: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Diagrammsprachen der UML

Klassendiagramm•Use-Case-Diagramm

•Aktivitätsdiagramme

•Sequenzdiagramm

•Kommunikationsdiagramm

•Interaktionsübersichtsdiagramm

•Timing-Diagramm

•Zustandsdiagramm

•Komponentendiagramm

•Kompositionsstrukturdiagramm

•Verteilungsdiagramm

„Wie sind Daten und Verhalten meinesSystems im Detail strukturiert?“

Ein Klassendiagramm repräsentiert den Kernder gesamten Modellierungssprache und führtdie wichtigsten grafischen Symbole und ihreBedeutung ein.

i. UML und

Rational Rose

ii. Diagramm-

Sprachen der

UML

iii. Objekte

und Klassen

iii. Attribute und

Methoden

iv. Assoziationen

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Page 6: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Modellierung von Klassen

Objekte – die Basis von allem

Ein Objekt ist ein Gegenstand, ein individuelles Exemplar von Dingen:Objekte können Dinge (z.B Fertigunsteil) , Personen (z.B Kunde) oder Begriffe (z.B. Rechnung) sein.

Klassen – der erste Schritt der Modellierung

Eine Klasse definiert für eine Kollektion von Objekten.

Im Rahmen der UML wird eine Klasse als Typ interpretiert, dessen AusprägungenObjekte heißen.

Objekt: KlasseAttribut 1Attribut 2

…..

Objekt

: KlasseStatisch (hat was)Dynamisch (kann was)

Identität (ist was)

i. UML und

Rational Rose

ii. Diagramm-

Sprachen der

UML

iii. Objekte

und Klassen

iii. Attribute und

Methoden

iv. Assoziationen

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Page 7: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Attribute

Die Attribute beschreiben die Daten, die von den Objekten einer Klasseangenommen werden können.

KlasseAttribut 1Attribut 2

…..

Methode 1Methode 2

….

Methoden -Operationen

Eine Operation ist eine Dienstleistung, die von einer Klasse zur VerfügungGestellt wird.

Die Attribute werden mit Substantive benannt, Methoden mit Verben, die die Aktion ausdrücken.

i. UML und

Rational Rose

ii. Diagramm-

Sprachen der

UML

iii. Objekte

und Klassen

iii. Attribute &

Methoden

iv. Assoziationen

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Page 8: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Assoziationen – Was Klassen verbindet

Objekt: KlasseAttribut 1Attribut 2

…..

Objekt: KlasseAttribut 1Attribut 2

…..

Assoziationsname

Binäre Assoziation

XKomposition

Aggregation1...*

Multiplizität

Eine Assoziation modelliert Verbindungen zwischen Objekten eineroder mehrerer Klassen.

Navigationsrichtung

Assoziation2

klaKlasse 3

Ternäre assoziation

1...*

i. UML und

Rational Rose

ii. Diagramm-

Sprachen der

UML

iii. Objekte

und Klassen

iii. Attribute &

Methoden

iv. Assoziat-

ionen

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Page 9: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

II. Entwicklung eines Prototyps mit Rational Rose

Page 10: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Klassen Attribute Methoden

Page 11: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Stoffsammlung

KundeName

VornameGeburtsdatum

StraßeHausnummer

PLZOrt

ErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

Tagesgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Festgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Girokonto

KontonummerKontostandHabenszins

HabenszinssatzSollzins

SollzinssatzDispolimit

ZinsgutschriftÜberziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

___________

Page 12: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Grobmodell (Rational Rose)

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

i. Aufgabe

ii. Grobmodell

iii. Strukturierung

iii. Vererbungs

-struktur

iv. Enumeration

v. Restriktionen

Grobmodell KundeName

VornameGeburtsdatum

StraßeHausnummer

PLZOrt

ErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

Tagesgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Festgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Girokonto

KontonummerKontostandHabenszins

HabenszinssatzSollzins

SollzinssatzDispolimit

ZinsgutschriftÜberziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

__________

1

0..* 0..*

10..*

1

1

0..*

1

0..*

1

0..*

Page 13: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Persönliche Angaben : PersonT

StraßeHausnummer

PLZOrt

ErstellungsdatumKundennummer

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Struktur

Kunde

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

<<Structure>>PersonT

NameVorname

Geburtsdatum

__________

Hilfsklasse

<<Structure>>AdresseT

StraßeHausnummer

PLZOrt

__________

Hilfsklasse

Persönliche Angaben : PersonT

Anschrift: AdresseT

ErstellungsdatumKundennummer

NameVorname

GeburtsdatumStraße

HausnummerPLZOrt

ErstellungsdatumKundennummer

Page 14: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Struktur (Rational Rose)Struktur

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

KundeName

VornameGeburtsdatum

StraßeHausnummer

PLZOrt

ErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

Tagesgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Festgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Girokonto

KontonummerKontostandHabenszins

HabenszinssatzSollzins

SollzinssatzDispolimit

ZinsgutschriftÜberziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

__________

1

0..* 0..*

10..*

1

1

0..*

1

0..*

1

0..*

KundePersänliche Angaben : PersonT

Anschrift : AdresseTErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

<<Structure>>PersonT

NameVorname

Geburtsdatum

<<Structure>>AdresseT

StraßeHausnummer

PLZOrt

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Page 15: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Überziehungszins

Abhebbarer Höchstbetrag

SollzinsSollzinssatzDispolimit

Vererbung

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Tagesgeld-Sparkonto

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Zinsgutschrift

Festgeld-Sparkonto

Zinsgutschrift

Girokonto

KontonummerKontostandHabenszins

HabenszinssatzSollzins

SollzinssatzDispolimit

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Abhebbarer Höchstbetrag

KontonummerKontostandHabenszins

HabenszinssatzAbhebbarer Höchstbetrag

Gemeinsame Attribute/Methoden:übertragen auf Eltern-Modell

ZinsgutschriftÜberziehungszins

KontoKontonummer

KontostandHabenszins

Habenszinssatz

Zinsgutschrift

Page 16: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Vererbung

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Tagesgeld-Sparkonto

Abhebbarer Höchstbetrag

Festgeld-Sparkonto

Abhebbarer Höchstbetrag

Girokonto

SollzinsSollzinssatzDispolimit

Überziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

__________

KundePersänliche Angaben : PersonT

Anschrift : AdresseTErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

<<Structure>>PersonT

NameVorname

Geburtsdatum

<<Structure>>AdresseT

StraßeHausnummer

PLZOrt

0..*

1

0..*1Gemeinsame Attribute…

Gemeinsame Methoden….

KontoKontonummer

KontostandHabenszins

Habenszinssatz

Zinsgutschrift

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Page 17: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Girokonto

SollzinsSollzinssatzDispolimit

Überziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

__________

KundePersänliche Angaben : PersonT

Anschrift : AdresseTErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

<<Structure>>PersonT

NameVorname

Geburtsdatum

<<Structure>>AdresseT

StraßeHausnummer

PLZOrt

0..*

1

0..*1Konto

KontonummerKontostandHabenszins

Habenszinssatz

Zinsgutschrift

Tagesgeld-Sparkonto

Abhebbarer Höchstbetrag

Festgeld-Sparkonto

Abhebbarer Höchstbetrag

Enumeration

≈Hilfsklasse „Enumeration“ für Aufzählungen nutzenEinziger Unterschied zwischen den Sparkonto-Klassen:

Sparkontoart

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Page 18: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Girokonto

SollzinsSollzinssatzDispolimit

Überziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

__________

KundePersänliche Angaben : PersonT

Anschrift : AdresseTErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

<<Structure>>PersonT

NameVorname

Geburtsdatum

<<Structure>>AdresseT

StraßeHausnummer

PLZOrt

0..*

1

0..*1Konto

KontonummerKontostandHabenszins

Habenszinssatz

Zinsgutschrift

Tagesgeld-Sparkonto

Abhebbarer Höchstbetrag

Festgeld-Sparkonto

Abhebbarer Höchstbetrag

Enumeration

Sparkonto

Kontoart : SparkontoartTAbhebbarer Höchstbetrag

<<Enumeration>>SparkontoartT

TagesgeldFestgeld

Hilfsklasse

+

Zusammenfassen zu

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Page 19: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Girokonto

SollzinsSollzinssatzDispolimit

Überziehungszins

Kontobewegung

Abgehobener BetragBuchungsdatum

Buchungsnummer

__________

KundePersänliche Angaben : PersonT

Anschrift : AdresseTErstellungsdatumKundennummer

Kontostand abfragenGeld ein-/auszahlen

Konto auflösen

<<Structure>>PersonT

NameVorname

Geburtsdatum

<<Structure>>AdresseT

StraßeHausnummer

PLZOrt

0..*

1

0..*1Konto

KontonummerKontostandHabenszins

Habenszinssatz

Zinsgutschrift

Tagesgeld-Sparkonto

Abhebbarer Höchstbetrag

Festgeld-Sparkonto

Abhebbarer Höchstbetrag

Tagesgeld-Sparkonto

Abhebbarer Höchstbetrag

Festgeld-Sparkonto

Abhebbarer Höchstbetrag

<<Enumeration>>SparkontoartT

TagesgeldFestgeld

Sparkonto

Kontoart : SparkontoartTAbhebbarer Höchstbetrag

Hilfsklasse

Enumeration

Page 20: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Restriktionen

i. Aufgabe

ii. Grobmodell

iii. Struktur

iii. Vererbung

iv. Enumeration

v. Restriktionen

Werden definiert, um:

Sinngemäße Beziehungen von Attributwerten immer gewährleisten zu können

Attributwerte innerhalb des Modells zu berechnen (abgeleitetes Attribut)

Beispiele:

Girokontostand > DispolimitSparkontostand > 0Abgehobener Betrag (Girokonto) > Kontostand – DispolimitSumme (Monatlich abgehobene Beträge) < Monatlich abhebbarer HöchstbetragKontostand = alter_Kontostand + Kontobewegungsbetrag

Page 21: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Datenverwaltungsaufwand vs Laufzeit

Grobmodell

Strukturierung

Vererbungsstruktur

Enumeration

Lauf

zeit

zune

hmen

d

Verw

altu

ngsa

ufw

and

abne

hmen

d

…Aufgrund der Datenfülle im Grobmodell ist hier eine großer Verwaltungsaufwand gegeben,wobei eine gute Laufzeit erreicht wird, da keine großen Datenwegen aufkommen

…Durch die zunehmende Strukturierung nimmt der Verwaltungsaufwand, jedoch die Laufzeit aufgrund der Datenlaufwege zu

Page 22: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose

Fazit und Ausblick

Rational Rose…

…ist ein mächtiges Tool zur schnellen und effektiven Erstellung von Software-Prototypen

…ermöglicht sie frühzeitige Erkennung von kritischen Bestandteilen und Beziehungen einer Software

…ist nicht zur Erstellung von ganzheitlichen und kompletten Lösungen gedacht und sollte nicht als Solche verwendet werden

…ist ein Simulationsverfahren und profitiert von den Vorzügen einer Simulation

Page 23: Rational Rose und UML: Erstellung einer Kontoverwaltung Prof. Schätter WS 2007-2008 Lucia Villasana Burak Türker 17.01.2008.

Vielen Dank für eure Aufmerksamkeit…….noch Fragen?