oo analyse und entwurf für anwender viii. beschreibungsmittel der analyse (fortsetzung) dr. michael...
Post on 05-Apr-2015
110 Views
Preview:
TRANSCRIPT
OO Analyse und Entwurf für Anwender
VIII. Beschreibungsmittel der Analyse (Fortsetzung)
Dr. Michael Löwe
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
2
Objektorientierte Analyse und Entwurf
Inhalt der Ausbildung
• Kennzeichen objektorientierter Softwareentwicklung (1)
• Projektorganisation (2)
• Architektur (2)
• Objektorientierte Analyse (4)
• Objektorientierter Entwurf (5)
• Realisierung und Test (2)
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
3
Objektorientierte Analyse und Entwurf
Lernziele
• Überblick über die Beschreibungsmittel der Analyse• Erlernen von Syntax und Semantik der Notationen• Kenntnisse über Einsatzmöglichkeiten• Kenntnisse über das Zusammenwirken• Selbständiges Arbeiten mit den Beschreibungsmitteln• Kennenlernen der Grenzen der Notationen
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
4
Objektorientierte Analyse und Entwurf
Inhalt• Modell der Fachklassen
Beziehungen (Verfeinerung)Generalisierung, Spezialisierung und MehrfachvererbungAbstrakte Klassen und Schnittstellenklassen Parametrische KlassenAggregation und KompositionAbhängigkeitsbeziehungen
• Aktivitätsdiagramme
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
5
Objektorientierte Analyse und Entwurf
Struktur der Ergebnisse
Kon
stru
kti
on (
SO
LL
)An
alyse (IST
)
Innere Architektur:Systemkomponenten, Schnittstellen
Innere Architektur:Systemkomponenten, Schnittstellen
Äußere Architektur:Kontext, Schnittstellen, Akteure
Äußere Architektur:Kontext, Schnittstellen, Akteure
Geschäftsvorfällejeder Komponente
Geschäftsvorfällejeder Komponente
Fachlexikon,Modell der Fachklassen
Fachlexikon,Modell der Fachklassen
Szenarien, Aktivitätenfür jeden Geschäftsvorfall
Szenarien, Aktivitätenfür jeden Geschäftsvorfall
Daten und OperationenDaten und OperationenFunktionen und AbläufeFunktionen und Abläufe
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
6
Objektorientierte Analyse und Entwurf
Modell der Fachklassen
Definition: Das Modell der Fachklassen ist ein Klassendiagramm. Es beschreibt die Konzepte, Gegenstände, Orte oder Personen aus der realen Welt (bzw. des Geschäftsbereichs) in einem Detaillierungsgrad, wie er vor allem von den Auftraggebern, Fachabteilungen bzw. Managern verstanden werden kann.
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
7
Objektorientierte Analyse und Entwurf
Angebot Vertrag
Kunde
AnschriftBankverbindung
11
1
1
1 [0,1]
= =
hat hat
ist Grund für ist Folge von
Versicherungsnehmer
Modell der Fachklassen, Beispiel:Klasse mit
Namen
Beziehungmit Name und Leserichtung
Kardinalität
ZusicherungPostanschrift
Rolle
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
8
Objektorientierte Analyse und Entwurf
Modell der Fachklassen enthält...
... keine Attribute ( Fachlexikon, Interaktion),
... keine Operationen ( Interaktion),
... ausschließlich fachliche Klassen,– konkrete Klassen– abstrakte Klassen– Schnittstellen
... die fachlichen Beziehungen,
... Kardinalitäten, Rollen und Zusicherungen
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
9
Objektorientierte Analyse und Entwurf
Modellierungskonzepte für (Fach-)Klassen
• (Verfeinerte Spezifikation von) Beziehungen
• Generalisierung und Spezialisierung
• Abstrakte Klassen und Schnittstellenklassen
• Parametrische Klassen
• Aggregation und Komposition
• Abhängigkeitsbeziehungen
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
10
Objektorientierte Analyse und Entwurf
Beziehung oder Assoziation
Definition: Eine Assoziation beschreibt als Relation zwischen zwei Klassen die gemeinsame Semantik und Struktur einer Menge von Objektverbindungen.
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
11
Objektorientierte Analyse und Entwurf
Syntax und Semantik
Syntax = Klassendiagramm: Person Vertrag
1 *
versicherungsnehmer
Semantik = Mögliche Objektwelten: p1:Person
p2:Person
p3:Person
v1:Vertrag
v2:Vertrag
v3:Vertrag
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
12
Objektorientierte Analyse und Entwurf
Assoziation
Rekursive Assoziation:
Mitarbeiter
1
*
führt
berichtet an
manager
sachbearbeiter
Attributierte Assoziation:
Person Vertrag spielt Rolle in
* *
Rolle
Klasse A Klasse BRolle von b für a(Rolle von a für b)
Beziehungsname 1 Beziehungsname 2 [1..5] *
MultiplizitätNormale Assoziation: Richtung
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
13
Objektorientierte Analyse und Entwurf
Mehrgliedrige Assoziationen
Zug Platz
Fahrgast
Reservierung* 1..*
1..*
Zug Platz
Fahrgast
* 1..*
1..*
Reservierung* *
*
Person Vertrag spielt Rolle in * *
Rolle
Person Vertrag
* *Rolle
1 1
spielt in
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
14
Objektorientierte Analyse und Entwurf
Generalisierung und Spezialisierung
Definition: Generalisierung und Spezialisierung sind Abstraktionsprinzipien zur hierarchischen Strukturierung der Sementik eines Modells. Eine Generalisierung (bzw. Spezialisierung) ist eine taxonomische1 Beziehung zwischen allgemeinen und speziellen Elementen (bzw. umgekehrt), wobei das speziellere weitere Eigenschaften hinzufügt und sich kompatibel zum allgemeinen verhält.
1 Taxonomie: „Einordnung in ein System“
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
15
Objektorientierte Analyse und Entwurf
Generalisierung, Beispiel:
Art
Person
Telefonnr.
Faxnr.
email-Adr.
Anschrift
*
*
*
*
hat
hat
hat
h
at
Person
Telefonnr.
Faxnr.
email-Adr.
Anschrift
Komm.-weg*hat
Diskriminator
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
16
Objektorientierte Analyse und Entwurf
Elektroauto
Notstromaggregat
{overlapping}
Diskriminatoren und Mehrfachspezialisierung
Maschine
Dampfmaschine
Verbrennungsmaschine
Elektrische MaschineMotor
incomplete
Stationäre Maschine
Bewegliche MaschineMobilitätcomplete
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
17
Objektorientierte Analyse und Entwurf
Abstrakte Klassen
Person
Telefonnr.
Faxnr.
email-Adr.
Anschrift
Kommunikationsweg{abstract}
*hat
Vertrag1Versandweg
{abstract}
Versicherungsnehmer
=
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
18
Objektorientierte Analyse und Entwurf
Generalisierung und Spezialisierung
Definition: Generalisierung und Spezialisierung sind Abstraktionsprinzipien zur hierarchischen Strukturierung der Sementik eines Modells. Eine Generalisierung (bzw. Spezialisierung) ist eine taxonomische1 Beziehung zwischen allgemeinen und speziellen Elementen (bzw. umgekehrt), wobei das speziellere weitere Eigenschaften hinzufügt und sich kompatibel zum allgemeinen verhält.
1 Taxonomie: „Einordnung in ein System“
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
19
Objektorientierte Analyse und Entwurf
Aggregation und Komposition
Definition: Eine Aggregation ist eine Assoziation, deren beteiligte Klassen eine Ganze-Teile-Hierarchie darstellen. Eine Komposition ist eine strenge Form der Aggregation, bei der die Teile vom ganzen existenzabhängig sind.
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
20
Objektorientierte Analyse und Entwurf
Aggregation, Beispiel:
Unternehmen Abteilung Mitarbeiterbesteht aus besteht aus
1 1..* 1 1..*
u1
a1 a2 a3
m1 m2 m3
Übung
2 Beispiele für Kompositionen
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
22
Objektorientierte Analyse und Entwurf
Aggregation und SpezialisierungGeneralisierung
{abstract}
Kompositum Element
k1
k3
k2 e1
k4
e2
k5
e3e5
e4
[1..*] Kontext1
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
23
Objektorientierte Analyse und Entwurf
Aktivitätsdiagramme
Definition: Aktivitätsdiagramme beschreiben die Ablaufmöglichkeiten eines Systems mit Hilfe von Aktivitäten.
Definition: Eine Aktivität ist ein einzelner Schritt in einem Ablauf. Sie stellt einen stabilen Zustand dar, während eine internen Aktion abläuft. Sie hat eine oder mehrere ausgehende Transitionen, die automatisch dem Abschluß der internen Aktion folgen.
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
24
Objektorientierte Analyse und Entwurf
Angebotsuchen
Als Vertragübernehmen
FehlendeDaten ergänzen
[Gefunden]
Kundensuchen
Vertragsdatenerfassen
[Gefunden]
Kundendatenaufnehmen
Bankverbindungsuchen&zuordnen
Postanschriftsuchen&zuordnen
Drucken bzw.Verschicken{and}
Formalisierung von Anwendungsfällen, Beispiel:
[Nichtgefunden]
[Nichtgefunden]
Aktivität
Transition
SynchronisationSplitting
EntscheidungAnfang
Ende
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
25
Objektorientierte Analyse und Entwurf
Aktivitätsdiagramme
Vor Anwendungsfällen• Geschäftsprozesse• Transition =
Wechsel des Akteurs• Aktivität =
Anwendungsfall• Transition =
Schnittstellenelement
Nach Anwendungsfällen• Verfeinerung eines Falls• Transition =
Kausale Abhängigkeit• Aktivität = Elementarer
(Dialog-) Schritt• Transition =
Kontrollfluß
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
26
Objektorientierte Analyse und Entwurf
Pragmatik beim Aktivitätsmodell
• Sicht von außen, Sicht von den Akteuren• Beschreibung des Soll- nicht des Ist-Ablaufs • Nicht zu kleine Aktivitäten• So viel Parallelität wie eben möglich• Nur so viel Sequentialisierung, wie nötig• ca. 10 - 15 Aktivitäten pro Anwendungsfall• sonst Anwendungsfall dekomponieren
Sprache der Analyse (cont)
Prof. Dr. Michael Löwe, FHDW, Hannover
27
Objektorientierte Analyse und Entwurf
Zusammenfassung
Kontextdiagramm:System und seine Akteure
Kontextdiagramm:System und seine Akteure
Anwendungsfalldiagramm:Anwendungsfälle und ihre Akteure
Anwendungsfalldiagramm:Anwendungsfälle und ihre Akteure
Anwendungsbeschreibung:Systemfunktionen und ihre Abläufe
Anwendungsbeschreibung:Systemfunktionen und ihre Abläufe
Fachlexikon:Fachbegriffe und -strukturen
Fachlexikon:Fachbegriffe und -strukturen
Fachliches Klassenmodell:Klassen und Beziehungen
Fachliches Klassenmodell:Klassen und Beziehungen
Aktivitätsdiagramme:Aktivitäten und kausale Abhängigkeit
Aktivitätsdiagramme:Aktivitäten und kausale Abhängigkeit
Fachliches Klassenmodell:Attribute und Operationen
Fachliches Klassenmodell:Attribute und Operationen
Interaktionsdiagramme:Realisierung der Aktivitäten durch Interaktion von Objekten
Interaktionsdiagramme:Realisierung der Aktivitäten durch Interaktion von Objekten
top related