Rational Rose und UML: Erstellung einer Kontoverwaltung

Slides:



Advertisements
Ähnliche Präsentationen
Business Engineering Philipp Osl, Alexander Schmidt
Advertisements

1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Organisatorisches „[SE]“ als Teil des -Betreffs
Zur Rolle der Sprache bei der Modellierung von Datenbanken
Objektorientierte Datenbanken
Die Definitionsphase -Objektorientierte Analyse - Das statische Modell
Assoziationen Verbindungen zwischen Objekten einer Klasse
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Manfred Thaller, Universität zu Köln Köln 28. Januar 2008
Visualisierung des Rechts mit UML
Seminar Rechtsinformatik
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Abhängigkeitsbeziehung
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
DOM (Document Object Model)
Methodik: Objektorientierte Analyse
Objektorientierte Konzepte und Notation in UML
Objektorientierte Konzepte
Modellierung komplexer Realität mit Objekten
Was ist eine Datenbank? ermöglicht die Eingabe von Daten
Datenmodellierung - Aufbau einer Datenbank -
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
Dieter Bergmann, Lichtenfels
UML-Klassendiagramm: Assoziationen (1)
Vorüberlegung Frühere Forderung: Möglichst alle im konzeptuellen Schema ausdrückbaren Sachverhalte sollen sich im logischen Schema wiederfinden. Forderung.
1 Klassen (1) Eine Klasse beschreibt eine Menge von Objekten mit gemeinsamer Struktur gemeinsamem Verhalten gemeinsamen Beziehungen gemeinsamer Semantik.
UML Begleitdokumentation des Projekts
Unified Modeling Language Einführung zu UML Was ist „UML“?
Objektorientierte Softwareentwicklung
Visualisierung objektrelationaler Datenbanken
Objektorientierte Modellierung
Simulation komplexer technischer Anlagen
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Spezifikation von Anforderungen
11. Vorlesung: Dynamische Konzepte am Fallbeispiel
8. Vorlesung: Klassendiagramm für Fallbeispiel
6. Vorlesung: Statische Konzepte
12. Vorlesung: Aktivitätsdiagramme
Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter.
Unified Modeling Language Repetition / Einführung zu UML
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
UML WS 09/10: Datenbanken vs MarkUp Dozent: Prof. Dr. Manfred Thaller
Objektorientierte Analyse
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #3 ER Modellierung.
SS 2012 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #3 ER Modellierung.
UML-Kurzüberblick Peter Brusten.
Unified Modeling Language
UML UML mit SiSy® Vorgehensmodell Dokumentation HTML-Export
UML Modellierung des Verhaltens von Klassen und Objekten
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Vom Geschäftsprozess zum Quellcode
Datenbanksysteme für Hörer anderer Fachrichtungen
Informatik und Programmieren 3
Vorlesung Software Engineering I
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Objektorientierte Modellierung mit UML
Die Unified Modeling Language UML
Klassen und Klassenstruktur
Unified Modeling Language UML
Abbildung UML-Schema  Rel. Schema (1)
SS 2014 – IBB4C Datenmanagement Do 17:00 – 18:30 R Vorlesung #3 ER Modellierung.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Software-Demo: CASE-Tool „Together“
Sichtbarkeit einschränken
1 Objektorientierter Entwurf E-R-Modellierung: Ausschließlich strukturelle Aspekte Verhaltensaspekte noch unberücksichtigt:  Interaktionen zwischen Objekten.
Vorlesung #3 ER Modellierung
 Präsentation transkript:

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

Agenda Grundlagen Entwicklung eines Prototyps mit Rational Rose UML und Rational Rose Objekte und Klassen Attribute und Methoden Assoziationen Entwicklung eines Prototyps mit Rational Rose Aufgabenstellung: Kontoverwaltung Grobmodell Strukturierung Vererbungsstruktur Enumeration - Aufzählungstyp Restriktionen Fazit und Ausblick

I. Grundlagen UML-Modelle

UML steht für „Unified Modeling Language“, und dient zur Modellierung, I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose UML i. UML und Rational Rose ii. Diagramm- Sprachen der UML iii. Objekte und Klassen iii. Attribute und Methoden iv. Assoziationen 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 Rational Rose ist eine UML-Werkzeug zur Beschreibung von Softwaresystemen.

Klassendiagramm Diagrammsprachen der UML I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Diagrammsprachen der UML „Wie sind Daten und Verhalten meines Systems im Detail strukturiert?“ Ein Klassendiagramm repräsentiert den Kern der gesamten Modellierungssprache und führt die wichtigsten grafischen Symbole und ihre Bedeutung ein. i. UML und Rational Rose ii. Diagramm- Sprachen der UML iii. Objekte und Klassen iii. Attribute und Methoden iv. Assoziationen Klassendiagramm Use-Case-Diagramm Aktivitätsdiagramme Sequenzdiagramm Kommunikationsdiagramm Interaktionsübersichtsdiagramm Timing-Diagramm Zustandsdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm

Identität (ist was) Statisch (hat was) Dynamisch (kann was) I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Modellierung von Klassen Objekte – die Basis von allem i. UML und Rational Rose ii. Diagramm- Sprachen der UML iii. Objekte und Klassen iii. Attribute und Methoden iv. Assoziationen 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ägungen Objekte heißen. Statisch (hat was) Dynamisch (kann was) Identität (ist was) Objekt: Klasse Objekt Attribut 1 Attribut 2 ….. : Klasse

Die Attribute beschreiben die Daten, die von den Objekten einer Klasse I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Attribute i. UML und Rational Rose ii. Diagramm- Sprachen der UML iii. Objekte und Klassen iii. Attribute & Methoden iv. Assoziationen Die Attribute beschreiben die Daten, die von den Objekten einer Klasse angenommen werden können. Methoden -Operationen Eine Operation ist eine Dienstleistung, die von einer Klasse zur Verfügung Gestellt wird. Klasse Attribut 1 Attribut 2 ….. Methode 1 Methode 2 …. Die Attribute werden mit Substantive benannt, Methoden mit Verben, die die Aktion ausdrücken.

Assoziationen – Was Klassen verbindet I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Assoziationen – Was Klassen verbindet i. UML und Rational Rose ii. Diagramm- Sprachen der UML iii. Objekte und Klassen iii. Attribute & Methoden iv. Assoziat- ionen Eine Assoziation modelliert Verbindungen zwischen Objekten einer oder mehrerer Klassen. Assoziationsname Binäre Assoziation Navigationsrichtung Objekt: Klasse X Objekt: Klasse Komposition Attribut 1 Attribut 2 ….. Attribut 1 Attribut 2 ….. Aggregation 1...* 1...* kla Klasse 3 Multiplizität Ternäre assoziation Assoziation2

II. Entwicklung eines Prototyps mit Rational Rose

Klassen Attribute Methoden I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Klassen Attribute Methoden i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen

Abhebbarer Höchstbetrag Abhebbarer Höchstbetrag I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Stoffsammlung i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer ___________ Girokonto Kontonummer Kontostand Habenszins Habenszinssatz Sollzins Sollzinssatz Dispolimit Zinsgutschrift Überziehungszins Tagesgeld-Sparkonto Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Zinsgutschrift Festgeld-Sparkonto Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Zinsgutschrift Kunde Name Vorname Geburtsdatum Straße Hausnummer PLZ Ort Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen 11

Abhebbarer Höchstbetrag Abhebbarer Höchstbetrag I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Kunde Name Vorname Geburtsdatum Straße Hausnummer PLZ Ort Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen Grobmodell (Rational Rose) Grobmodell i. Aufgabe ii. Grobmodell iii. Strukturierung iii. Vererbungs -struktur iv. Enumeration v. Restriktionen 1 0..* 0..* 1 0..* 1 Girokonto Kontonummer Kontostand Habenszins Habenszinssatz Sollzins Sollzinssatz Dispolimit Zinsgutschrift Überziehungszins Tagesgeld-Sparkonto Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Zinsgutschrift Festgeld-Sparkonto Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Zinsgutschrift 1 0..* 1 0..* 1 0..* Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer __________ 12

<<Structure>> <<Structure>> I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Struktur <<Structure>> PersonT Name Vorname Geburtsdatum __________ Hilfsklasse i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen Kunde <<Structure>> AdresseT Straße Hausnummer PLZ Ort __________ Hilfsklasse Persönliche Angaben : PersonT Anschrift: AdresseT Erstellungsdatum Kundennummer Name Vorname Geburtsdatum Straße Hausnummer PLZ Ort Erstellungsdatum Kundennummer Persönliche Angaben : PersonT Straße Hausnummer PLZ Ort Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen 13

Struktur (Rational Rose) I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Kunde Name Vorname Geburtsdatum Straße Hausnummer PLZ Ort Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen <<Structure>> PersonT Name Vorname Geburtsdatum <<Structure>> AdresseT Straße Hausnummer PLZ Ort Struktur Struktur (Rational Rose) i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen Kunde Persänliche Angaben : PersonT Anschrift : AdresseT Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen 1 0..* 0..* 1 0..* 1 Girokonto Kontonummer Kontostand Habenszins Habenszinssatz Sollzins Sollzinssatz Dispolimit Zinsgutschrift Überziehungszins Tagesgeld-Sparkonto Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Zinsgutschrift Festgeld-Sparkonto Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Zinsgutschrift 1 0..* 1 0..* 1 0..* Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer __________ 14

Konto Vererbung Gemeinsame Attribute/Methoden: I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Konto Vererbung i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen Kontonummer Kontostand Habenszins Habenszinssatz Zinsgutschrift Gemeinsame Attribute/Methoden: übertragen auf Eltern-Modell Girokonto Tagesgeld-Sparkonto Festgeld-Sparkonto Sollzins Sollzinssatz Dispolimit Kontonummer Kontostand Habenszins Habenszinssatz Sollzins Sollzinssatz Dispolimit Abhebbarer Höchstbetrag Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Kontonummer Kontostand Habenszins Habenszinssatz Abhebbarer Höchstbetrag Abhebbarer Höchstbetrag Zinsgutschrift Zinsgutschrift Zinsgutschrift Überziehungszins Überziehungszins 15

Gemeinsame Attribute… I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose <<Structure>> PersonT Name Vorname Geburtsdatum <<Structure>> AdresseT Straße Hausnummer PLZ Ort Vererbung Kunde Persänliche Angaben : PersonT Anschrift : AdresseT Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen 1 0..* Konto Kontonummer Kontostand Habenszins Habenszinssatz Zinsgutschrift Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer __________ 1 0..* Gemeinsame Attribute… Gemeinsame Methoden…. Girokonto Tagesgeld-Sparkonto Abhebbarer Höchstbetrag Festgeld-Sparkonto Sollzins Sollzinssatz Dispolimit Überziehungszins 16

I. Grundlagen UML –Modelle. II I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose <<Structure>> PersonT Name Vorname Geburtsdatum <<Structure>> AdresseT Straße Hausnummer PLZ Ort Enumeration Kunde Persänliche Angaben : PersonT Anschrift : AdresseT Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen 1 0..* Konto Kontonummer Kontostand Habenszins Habenszinssatz Zinsgutschrift ≈ Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer __________ 1 0..* Hilfsklasse „Enumeration“ für Aufzählungen nutzen Einziger Unterschied zwischen den Sparkonto-Klassen: Sparkontoart Girokonto Tagesgeld-Sparkonto Abhebbarer Höchstbetrag Festgeld-Sparkonto Sollzins Sollzinssatz Dispolimit Überziehungszins 17

+ Hilfsklasse Enumeration 1 0..* Zusammenfassen zu 1 0..* I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose <<Structure>> PersonT Name Vorname Geburtsdatum <<Structure>> AdresseT Straße Hausnummer PLZ Ort Enumeration Kunde Persänliche Angaben : PersonT Anschrift : AdresseT Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen Tagesgeld-Sparkonto Abhebbarer Höchstbetrag Festgeld-Sparkonto 1 Abhebbarer Höchstbetrag 0..* Zusammenfassen zu Konto Kontonummer Kontostand Habenszins Habenszinssatz Zinsgutschrift Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer __________ 1 0..* <<Enumeration>> SparkontoartT Tagesgeld Festgeld Hilfsklasse Sparkonto Kontoart : SparkontoartT Abhebbarer Höchstbetrag + Girokonto Sollzins Sollzinssatz Dispolimit Überziehungszins 18

Hilfsklasse Enumeration 1 0..* 1 0..* I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose <<Structure>> PersonT Name Vorname Geburtsdatum <<Structure>> AdresseT Straße Hausnummer PLZ Ort Enumeration Kunde Persänliche Angaben : PersonT Anschrift : AdresseT Erstellungsdatum Kundennummer Kontostand abfragen Geld ein-/auszahlen Konto auflösen i. Aufgabe ii. Grobmodell iii. Struktur iii. Vererbung iv. Enumeration v. Restriktionen 1 0..* Konto Kontonummer Kontostand Habenszins Habenszinssatz Zinsgutschrift Kontobewegung Abgehobener Betrag Buchungsdatum Buchungsnummer __________ 1 0..* Hilfsklasse Tagesgeld-Sparkonto Abhebbarer Höchstbetrag Festgeld-Sparkonto <<Enumeration>> SparkontoartT Tagesgeld Festgeld Sparkonto Kontoart : SparkontoartT Girokonto Tagesgeld-Sparkonto Abhebbarer Höchstbetrag Festgeld-Sparkonto Sollzins Sollzinssatz Dispolimit Überziehungszins 19

Girokontostand > Dispolimit Sparkontostand > 0 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 > Dispolimit Sparkontostand > 0 Abgehobener Betrag (Girokonto) > Kontostand – Dispolimit Summe (Monatlich abgehobene Beträge) < Monatlich abhebbarer Höchstbetrag Kontostand = alter_Kontostand + Kontobewegungsbetrag 20

Verwaltungsaufwand abnehmend I. Grundlagen UML –Modelle II. Entwicklung eines Prototyps mit Rational Rose Datenverwaltungsaufwand vs Laufzeit Grobmodell Strukturierung Verwaltungsaufwand abnehmend Laufzeit zunehmend Vererbungsstruktur Enumeration …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 21

…ist ein mächtiges Tool zur schnellen und effektiven Erstellung von 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 22

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