Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Objektorientierte Modellierung mit UML
Gerhard Röhner 18. März 2006
2
Objektorientierter Entwicklungsprozess
Smalltalk, Eiffel, TP 5.5, Delphi, Java Entwicklung der UML Entwicklung der OO-Methodik objektorientierte Methoden ganzheitliche Gegenstände bessere Abstraktionsmöglichkeiten methodische Durchgängigkeit evolutionäre Entwicklung
3
Durchgängige Modellrepräsentation
OOA – objektorientierte Analyse (Definition) OOD – objektorientiertes Design (Entwurf) OOP – objektorientierte Programmierung (Implementierung) type Kunde = class Name: String; StrasseNr: String; PLZOrt: String; Bonitaet: integer; procedure BonitaetPruefen; end;
4
Objektorientierte Analyse
Wünsche und Anforderungen der Auftraggebers an ein neues System ermitteln und beschreiben fachliche Lösung des zu realisierenden Systems keine Implementierungsaspekte Entwicklung des Fachkonzepts
5
Objektorientierter Entwurf
Realisierung des Fachkonzepts aus OOA auf einer Plattform Effizienz und Standardisierung Realisierung der Drei-Schichten-Architektur
6
Drei-Schichten-Architektur
7
Objektorientierte Programmierung
Implementierung des OOD-Modells in einer objektorientierten Programmiersprache
8
Objekt Element des Anwendungsbereichs Geheimnisprinzip Attribute
Methoden Exemplar einer Klasse Objektidentität
9
UML-Darstellung unterteiltes Rechteck Name im Singular
zentriert, unterstrichen Attribute und Werte
10
Attribut Datenbereich eines Objekts Name und Datentyp
Wert legt Zustand des Objekts fest alle Objekte einer Klasse haben gleiche Attribute Substantiv
11
Methode Operation zum Manipulieren des Objekts Prozeduren Funktionen
Konstruktoren alle Objekte einer Klasse haben gleiche Methoden Verb oder Verb + Substantiv
12
Klasse Abstraktion gleichartiger Objekte Beschreibung der Objekte
Datentyp der Objekte
13
Stempelmetapher
14
UML-Darstellung der Klasse
unterteiltes Rechteck Name im Singular zentriert, nicht unterstrichen Attribute Methoden
15
Objekt-Klassen-Beziehung
16
Programmierung in Java
public class Mitarbeiter { private int Personalnummer; private String Name; private float Gehalt; public void einstellen() { } public void druckeAusweis() { public void erhöheGehalt(float Betrag) {
17
Programmierung in Delphi
unit UMitarbeiter; interface type Mitarbeiter = class private Personalnummer: integer; Name: String; Gehalt: real; public procedure einstellen; procedure druckeAusweis; procedure erhoeheGehalt(Betrag: real); end; implementation ... end.
18
Assoziation Kennt-Beziehung
Objektbeziehung ist Exemplar einer Assoziation Darstellung durch Strecken ungerichtet - gerichtet
19
Kardinalität - Multiplizität
Optionalität: 0 – nicht 0
20
Implementierung Assoziation
Operation Beispiel Allgemein Herstellen einer Beziehung setAuto(einAuto) link Abfragen einer Beziehung getAuto(): Auto getlink Aufheben einer Beziehung removeAuto() unlink
21
Implementierung Assoziation
public class Schueler { private Auto dasAuto; ... public void setAuto(Auto einAuto) { dasAuto = einAuto; } public Auto getAuto() { return dasAuto; public void removeAuto() { dasAuto = null;
22
Beispiel Assoziation
23
Aggregation
24
Aggregation hat-Beziehung (besteht aus, Teil-Ganzes)
Raute für Behälterobjekt Implementierung als Feld, Liste oder Vektor
25
Komposition Spezialfall der Aggregation
Teile sind existenzabhängig vom Ganzen
26
Generalisierung Beziehung zwischen allgemeiner und spezieller Klasse
Klassenhierarchie abgeleitete Klasse hat zusätzliche Attribute und Methoden Darstellung durch Pfeil mit geschlossenem Dreieck Ist-Beziehung
27
Delegation
28
Implementierung der Vererbung
Type Unterklasse = class(Oberklasse) // allgemein TAutoFormular = class(TForm) // Beispiel In Java benutzt man das Schlüsselwort extends: public class Unterklasse extends Oberklasse {} // allgemein public class Hilfskraft extends Student() // Beispiel
29
Klassendiagramm Index für Datenbanktabelle
30
Sekundarstufe I
31
Sequenzdiagramm
32
Zustandsdiagramm POP3-Protokoll
STAT liefert die Anzahl der verfügbaren s und deren Gesamtgröße LIST liefert eine nummerierte Liste der verfügbaren s samt Größe RETR # holt mit der Nummer # DELE # markiert die mit der Nummer # zum Löschen NOOP No Operation RSET alle Löschmarkierungen werden aufgehoben QUIT Verbindung beenden und markierte s löschen
33
ER-Modellierung Verhältnis ERM zu OO Problembereiche Spiele
Simulationen Anwendungen
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.