Entdecken Sie eBooks
Kategorien
Entdecken Sie Hörbücher
Kategorien
Entdecken Sie Zeitschriften
Kategorien
Entdecken Sie Dokumente
Kategorien
Systems Engineering
Wintersemester 09/10
Gliederung
Literatur
Die einschlägigen Kapitel der folgenden Quelle gelten als Pflichtlektüre für die Hörer der
Vorlesung:
Systems
y Engineering
g g
Justus-Liebig-Universität Gießen
Wintersemester 09/10
Prof. Dr. Axel C. Schwickert
http://wi.uni-giessen.de
Abonnieren !
Infos zu Vorlesungen
und Übungen
• Downloads
• Bookmarks
• Forum
• Evaluation
• WBT
Click !
Empfohlene Zeitschriften
c´t: Technik!
Wirtschaftsinformatik
Pflicht für Studierende
der Wirtschaftsinformatik
IT-Zeitungen
Wöchentlich!
Gliederung
4
1.2 Zur Bedeutung von Modellen und Modellierungsansätzen
6
1.3 Anvisierte Lernziele
l ..... wie IKS prozeßorientiert mit ARIS und EPKs modelliert werden,
Gliederung
10
2.1 Prozeß- und Systemgestaltung: Allgemeines Vorgehensmodell
Projektmanagement
Systemeinführung
Systemübergabe
Systemnutzung
Projektanstoß
Hauptprojekt
Detailprojekt
Systembau
Vorprojekt
Projekt- Projekt-
Projektplanung
realisierung kontrolle
11
1. Schritt Vorprojekt
2. Schritt Hauptprojekt
3. Schritt Detailprojekt
4. Schritt Systembau,
Systemeinführung und -übergabe
5. Schritt Systemnutzung
12
14
13
Phasen und Aktivitäten Ergebnisse
Projektanstoß
· Projektauftrag formulieren · Problem, Idee
· Projektorganisationsform wählen · Projektwürdigkeit
· Projektpriorität bestimmen · Projektauftrag
Vorprojekt
(allgemein)
Phasen der
· Problemstellung überprüfen
(Stahlknecht 2002)
· Untersuchungsbereich abgrenzen Systementwicklung
· Situationsanalyse / Standortbestimmung
vornehmen
· Gestaltungsmöglichkeiten abklären · Lösungsprinzipien
· Ziele erarbeiten · Vorgehenskonzept
· Lösungsprinzipien erarbeiten
· erste Wirtschaftlichkeits-
und Nutzenüberlegungen anstellen
Entwurf
Analyse
· Projektplanung erstellen
Vorphase
Einführung
Realisierung
Hauptprojekt
· Zielsetzung überarbeiten
· Gesamtkonzept (evtl. mit Varianten) · Gesamtkonzept,
erarbeiten Masterplan
· Wirtschaftlichkeit überprüfen
· Planung aktualisieren
Test
Detailprojekt
· realisierungsreife Lösungen ausarbeiten
· detaillierte Wirtschaftlichkeitsrechnung · Detailpläne
Istanalyse
erstellen
Sollkonzept
· Unterhaltsorganisation planen
Phasenbezeichnung Phaseninhalt
- Fachentwurf
Systemfreigabe
erstellen
- IV-Grobentwurf
Programmierung
Programmentwurf
Systemeinführung
Projektbegründung
Systembau
· System bauen
Programmspezifikation
- Wirtschaftlichkeitsvergleiche
Systemeinführung
· Schulung
· eingeführtes System
· Unterhaltsorganisation aufstellen
2.1 Prozeß- und Systemgestalt.: Allg. VG-Mod. - Phasen, Aktivitäten, Ergebnisse
2.1 Prozeß- und Systemgestalt.: Allg. VG-Mod. - Phasen, Aktivitäten, Ergebnisse
Projekt-
Vorphase begründung
Istanalyse
Phase Analyse
Sollkonzept
Vorghehensmodell der
Eigen- Systementwicklung
Fremdbezug
entwicklung (allgemein)
Systementwurf
Phase Entwurf
Auswahl und
Programmentwurf Anschaffung von
Standardsoftware
(Stahlknecht 2002)
System-
Phase Einführung einführung
15
Validierung 1
Fachkon-
zeption Meilen-
stein
Validierung 2
System-
konzep- Meilen-
tion stein
Validierung 3
System-
entwick- Meilen-
lung stein
Validierung 4
System-
installa- Meilen-
tion stein
Validierung 5
Zeit
16
2.1 Prozeß- und Systemgestaltung: Sequentielle Vorgehensmodelle
17
Integration
SWE 8
Integration
Integration
DV-
SWKE-
SWE 7
Integration
SW-
Kompo-
nenten-
Implementierung
SWE 6
Anforderungs-
entwurf
SWE 5
entwurf
Fein-
SWE 4
Anforderungs-
Anforderungs-
Grob-
analyse
und -Entwurf
und -Entwurf
SWE 3
SW-
System-
analyse
analyse
SWE 1
SWE 2
DV-
SWE-Aktivität
aktivität (QS)
Datenkatalog
SW-Entwurf
SWKE-Integrationsplan
Schnittstellenentwurf
SW-Anforderungen
Prüf-
SW-Architektur
DV-Integrationsplan
Systemintegrationsplan
DV-Anforderungen
Systemanforderungen
Legende:
DV-Architektur
Systemarchitektur
18
2.1 Prozeß- und Systemgestaltung: Parallel-sequentielle Vorgehensmodelle
19
Zeit
R
System-
E5
installation
V
System- R
realisierung E4
P V
h
R
a System-
E3
konzeption
s V
e
n Fach- R
konzeption E2
V Legende:
R E = Entwickeln
Situations- R = Realisieren
studie E1
V = Validieren
V
20
2.1 Prozeß- und Systemgestaltung: Evolutionäres VG-Modell “Sprialmodell”
Kumulierte
Kosten
schrittweises
Ziele, Vorgehen Alternativen und
Alternativen, Risiken bewerten,
Randbedingungen Prototypen entwickeln
festlegen
Risiko-
analyse
Risiko-
analyse
Risiko-
analyse
Prototyp
Risiko- 4
analyse Prototyp
Prototyp 3
Prototyp 1 2
Vorgehens-
konzept
Anforde-
rungen Entwurf
Reali-
sierung
Entwick- Validierung
lungsplan der Anforde-
rungen
Modul- Codie-
Integration test rung
Validierung des
und Testplan Entwurfs
Integra-
tion und
Akzeptanz- Test
Installa- test
tion
21
22
2.1 Prozeß- und Systemgestaltung: Agile Vorgehensmodelle
22a
22b
2.1 Prozeß- und Systemgestaltung: Agile Vorgehensmodelle
22c
22d
2.2 Systemtheoretische Grundlagen
23
Umweltbeziehungen Umweltelement
Systemgrenze
System
als
Umweltelement Blackbox
Umweltelement
24
2.2 Systemtheoretische Grundlagen
Strukturanalyse
Umweltbeziehungen Umweltelement
Systemgrenze
System
Umweltelement
Umweltelement
25
Gesamtsystem Problemnahe
Abstraktion Ebene
und
schrittweise Schnittstelle
Verfeinerung
Subsystem Subsystem
l Hauptsachverhalte
l Vom Allgemeinen
.....
zum Speziellen
Transformationsebene(n)
l Top-down, Schnittstelle
hierarchisch
Teilaufgabe Teilaufgabe
Maschinennahe Ebene
26
Logische Komponente: suche, lies, schreibe ...
2.2 Systemtheoretische Grundlagen
Ebene 1
Input Output
Blockkonzept,
Modularisierung Gesamtsystem
l Vollständige
Schachtelung Ebene 2
l Logische Komp. =
Bausteine, Moduln
.3
.1
ys
ys
bs
bs
.2
Su
ys
Su
bs
Su
Ebene 3
n
ul
ul
Geordnete
od
od
Sammlung
M
M
von Moduln
27
Blockkonzept,
Modularisierung Umsystem Modul Umsystem
Input 1 Output 1
Unter-
2 Modul 2
28
Interne Struktur und funktionale Einheit
2.2 Systemtheoretische Grundlagen
A
Blockkonzept, Kein Spaghetti Junction Design !
Modularisierung B
g
an
Sequenz Par 1 ng Par 4
Ei
- - - - - - - - - - - - - - - -
l Beschränkung der -
-
-
- - - - - - -
-
-
-
- - - - - - -
Strukturblockarten - - - -
l Standardisierte
us
A
gan
g
Ablaufabbildungen A B
A Par 3 Par 6
- - - - - - - - - - - - - - - -
- - - -
- - - - - - - - - - - - - - - -
- - - -
Iteration
29
Graphentheorie
l Formale Theorie, die Vorgänge und Abfolgen untersucht
l Konzentriert sich auf Beziehungen zwischen Knoten und Kanten
Eulersches Brückenproblem
l Euler 1736 in Königsberg: Gibt es einen Spazierweg über das Brückensystem
der Pregel, bei dem jede Brücke genau einmal passiert wird?
Ufer
Insel Ufer
Ufer
31
Travelling-
Salesman- Kunde 2 Kunde 4
Problem
l Ein Vertriebsbeauf-
tragter will eine
bestimmte Menge
Kunde 3
von Kunden auf einer
Rundreise mit Kunde 5
minimaler Länge Kunde 1
abklappern.
Kunde 6
Zeit-/Weg-
Depot = Startort = Zielort minimierung
32
2.3 Graphen und Petri-Netze
Touren-Problem
l Innerhalb eines best. Zeitraums ist eine best. Menge von Kunden mit einer best.
Menge Lieferwagen mit best. Produktmengen möglichst effizient zu beliefern.
Tour 2
Tour 1 Kunde 5
Kunde 1 Tour 3
Kunde 6
Zeit-/Weg-
33
und Kosten-
minimierung
$ Depot = Startort = Zielort
Transport-Problem
l Von einer best. Menge an Depots aus ist eine best. Menge von Kunden (mit
einer best. Menge Lieferwagen) mit best. Produktmengen möglichst effizient zu
beliefern (keine Transport zwischen Kunden oder zwischen Depots).
Kosten-
$ $
SNI
SNI
SNI
minimierung
Netzplantechnik (NPT)
l Große, komplexe Projekte planen, analysieren, steuern, kontrollieren, optimieren
l Ablaufstrukturplan mit zeitbeanspruchenden und zeitpunktbezogenen Elementen
muß vorher erstellt worden sein
l Zeitdauern und Vorgänger-/Nachfolgerbeziehungen sind bekannt.
2 4 F 6
5 5 30 30 45 45
S C
A H Z
S1
T I
1 3 7
A 0 0 30 30 47 47 E
R L
T
5
30 37
35
Petri-Netze
l Begründer: C. A. Petri, 1962, Ges. für Mathematik und Datenverarbeitung (GMD)
l Petri-Netze sind gerichtete Graphen.
l Petri-Netze sind keine Instrumente, um Fische zu fangen. (Stahlknecht)
36
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
Petri-Netze: Anwendungsbereiche
l Anwendungsneutral: Mit Petri-Netzen lassen sich Systeme und Abläufe
modellieren, die auf diskreten Aktionen und Abhängigkeitsbeziehungen zwischen
diesen Aktionen basieren.
l Erlauben die Simulation der Modell-Dynamik mittels Verhaltensregeln.
l Bspw. Modellierung, Analyse umd Simulation im Bereich der
Automatisierungstechnik
l Wirtschaftswissenschaften: Modellierung von betrieblichen Abläufen als
hochaktuelles Anwendungsgebiet - Geschäftsprozeß-Modellierung
l U. a.: Geschäftsprozesse, Workflow-Management-Systeme, Customizing von
Standard-Anwendungssoftware
Petri-Netze: Elemente
l Statische Knoten-Elemente: Zustände (passiv) und Ereignisse (aktiv)
l Kanten: Kausal-logische Zusammenhänge zwischen Zuständen und Ereignissen
l Dynamische Elemente: Marken (für Zustände)
37
38
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
l Eingangszustand:
l Ausgangszustand:
Richtig:
Falsch:
39
Eingangszustand Ausgangszustand
Erteiltes Auftrags-
Angebot Auftrag bearbeitung
41
Markierungssituationen in Petri-Netzen
l Wenn pro Zustand maximal 1 Marke zulässig ist, spricht man von einem
Bedingungs-/Ereignis-Netz (B/E-Netz).
l Lokalitätsprinzip: Zustände und Ereignisse werden immer nur durch ihre direkte,
lokale Umgebung beeinflußt (Kapselung, Modularisierung).
43
A
?
44
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
1 B 1 B
a b
A A
2 C 2 C
45
1 1
A A
a b
B C B C
2 2
46
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
1 a
A C
1
A C 2 b1
2 D
D
3 3 b2
B E B
E
c
47
A 1 B 2 D
C b. w.
3 E
48
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
A 1 B 2 D
a b
3
C E
49
Markenkapazität Markenkapazität
der Zustände = 1 der Zustände > 1
50
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
Kurzbeschreibung: B/E-Netze
l Zustand = Bedingung / Zustandsübergang = Ereignis
l Jeder Zustand kann maximal 1 Marke haben: Knoten-Kapazität = 1
l Marken sind nicht unterscheidbar.
l Mit jeder Ereignis-Schaltung kann max. 1 Marke gesetzt werden:
Kanten-Kapazität = 1
l Marke vorhanden / nicht vorhanden: Bedingung wahr / falsch
l Voraussetzungen für Ereignis-Schaltung: Alle Eingangsbedingungen sind wahr
(markiert), alle Ausgangsbedingungen sind falsch (nicht markiert).
l Ereignisschaltung: Allen Eingangsbedingungen wird eine Marke entnommen,
allen Ausgangsbedingungen wird eine Marke zugefügt
Eingegangene Ausgelieferte
Bestellung Ware
Mitarbeiter Geschriebene
verfügbar Bearbeitung Rechnung
der Bestellung
51
Kurzbeschreibung: S/T-Netze
l Zustand = Stelle / Zustandsübergang = Transition
l Jede Stelle kann mehr als 1 Marke haben: Stellen-Kapazität > 1
l Marken sind nicht unterscheidbar.
l Mit jeder Transitions-Schaltung können mehrere Marken transportiert werden:
Kanten-Kapazität > 1 (”Kanten-Gewichtung” gibt max. Markenmenge vor)
l Voraussetzungen für Transitions-Schaltung: Anzahl Marken in jeder
Eingangsstelle >= Kapazität der abgehenden Kante und freie Kapazität jeder
Ausgangsstelle >= Gewichtung der dort eingehenden Kante.
l Transitions-Schaltung: Allen Eingangsstellen wird diejenige Anzahl an Marken
entnommen, die der Gewichtung der abgehenden Kante entspricht.
l Transitions-Schaltung: Allen Ausgangsstellen wird diejenige Anzahl an Marken
zugewiesen, die der Gewichtung der eingehenden Kante entspricht.
52
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
K=50 K=10
Ausgelieferte
Eingegangene 1 1 Ware
Bestellung
2 1
Geschriebene
Mitarbeiter Rechnung
verfügbar K=10 Bearbeitung K=10
der Bestellung
53
Kurzbeschreibung: Pr/T-Netze
l Zustand = Prädikat / Zustandsübergang = Transition
l Prädikate repräsentieren Relationen.
l Marken nehmen Werte an und sind damit unterscheidbar.
l Marken = Tupel oder Listen von Tupeln (aus Relationen)
l Jedes Prädikat kann über mehr als 1 Marke (Relation) verfügen
Prädikats-Kapazität >= 1
l Transitionen sind Operationen, die auf ein- bzw. ausgehende Relationen
(Marken) auszuführen sind.
l Der Modelleur bestimmt, welche Prädikate welche Marken (Relationen)
aufnehmen können.
l Voraussetzungen für Transitions-Schaltung: Jedes Eingangsprädikat hat
diejenigen Tupel, die die Kanten der Ausgangsprädikate fordern und jedes
Ausgangsprädikat enthält nicht die Tupel, die die eingehende Kante fordert.
l Transitions-Schaltung: Den Eingangsprädikaten werden die durch die Kanten-
beschriftungen festgelegten Tupel entnommen und die Ausgangsprädikate wer-
den durch die Tupel ergänzt, die die jeweilige Kantenbeschriftungen fordert.
l Die Marken (Relationen) aus den Eingangsprädikaten werden in die Marken der
54 Ausgangsprädikate umgesetzt.
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
K=50 K=10
Ausgelieferte
Eingegangene Ware
Bestellung
Geschriebene
Mitarbeiter Bearbeitung der Rechnung
verfügbar K=10 Bestellung K=10
55
Vorteile Petri-Netze
l Klare Abbildung von Sequenzen, Nebenläufigkeiten und Verklemmungen in
Prozeßstrukturen
l Semantik der Petri-Netze läßt sich einfach identifizieren
l Verschiedene Abstraktionsebenen möglich (Vergröberung, Verfeinerung)
l Sowohl Statik als auch Dynamik von Prozessen modellierbar, analysierbar
l Relativ leichte Erlernbarkeit (besonders B/E-Netze)
l Mathematische Verifizierbarkeit der Netze
l Die Petri-Netz-Grundlagen (basieren auf den den Grundlagen der System- und
Graphentheorie) finden sich in der geschilderten oder in abgewandelter Form in
den Modellierungsansätzen für IKS wieder.
Nachteile Petri-Netze
l Fehlen allgemeiner Systematiken zum Vorgehen bei der Erstellung
von Petri-Netzen
l Modellierung subjektiv / keine Petri-Netz-orientierten Methoden
l Erhöhter Lernaufwand höherer Netz-Typen (Pr/T-Netze)
56
2.3 Graphen und Petri-Netze: Exkurs “Petri-Netze”
Anwendungsfelder Petri-Netze
Validierung 1
Fachkon-
zeption Meilen-
stein
Validierung 2
System-
konzep- Meilen-
tion stein
Validierung 3
System-
entwick- Meilen-
lung stein
Validierung 4
System-
installa- Meilen-
tion stein
Validierung 5
57 Zeit
58
2.4 Prinzipien für die Entwicklung von betrieblichen IKS
Projektstart Projektende
Situations- Fach- System- System- System-
studie konzeption konzeption realisierung anwendung
Zwischenergebnisse weiterentwickeln
Toolbox
Modellierungs- Konzepte, CASE-
Paradigma Prinzipien VG-Modell ansätze Notationen Werkzeuge
60
2.4 Prinzipien für die Entwicklung von betrieblichen IKS
Zwischenprodukt
Getestetes Programmsystem
Montierte Programm-Moduln
l ”Essenz” zuerst: Gut (fachlich) geplant ist
Nutzungsbereite Software
Fachliches Detailkonzept
Fachliches Basiskonzept
Gewartete Komponenten
Programmierte Moduln
l ”Inkarnation” danach: Technik und Pro-
Hardwarekonfiguration
Programmstruktur
Projektvorschlag
Datenstruktur
grammierung strikt nach Plan.
Programmsystementwurf
Hardwaresystementwurf
Anforderungsermittlung
Datensystementwurf
Tätigkeiten
Problemerkennung
Programmierung
Anforderungs-
spezifizierung
halb gewonnen.
Systemtest
Installation
Integration
Wartung
Situationsstudie
Fachkonzeption
anwendung
realisierung
Phase
konzeption
System-
System-
System-
1.
2.
3.
4.
5.
61
62
2.5 Objekt und Sichtweisen der Modellierung von betrieblichen IKS
VERTRIEB
Eigen-
KD-
fertig.
Auftrag
prüfen
KD-Bezieh. Auftrag Auftrag Auftrag Auftrag
prüfen konfig. kalkulieren terminieren bestätigen
Vertreter- Fremd-
Auftrag bezug
prüfen
Auftrags
bestätigung
64
2.5 Objekt und Sichtweisen der Modellierung von betrieblichen IKS
Kunden- Kunden-
auftrag beziehung XOR
eingetr. prüfen EF-Teile
für KDA
Kunde Auftrag V
wird konfigurieren
beliefert
FB-Teile
für KDA
65
(Ereignisgesteuerte)
XOR
Prozeßketten
Bauunterlagen Sicherheiten
prüfen prüfen
Beantragung
einer XOR XOR
weitere Hypothek
Unterlagen nicht bewilligen
beschaffen
weitere
Unterlagen Hypothek
liegen vor bewilligen
(Stahlknecht 2002)
Antrag
abgelehnt
66
2.5 Objekt und Sichtweisen der Modellierung von betrieblichen IKS
Name
Adresse
Bonität Kunde
Telefon
Telefax
stellt
Firmenname
Bestelldatum Adresse
Lieferdatum
Bestellte Menge Auftrag Hersteller Telefon
Telefax
Rabatt Entfernung
Spezialpreis
enthält liefert
Artikelbezeichnung
Lagerbestand
Artikel Mindestbestand
Einzelpreis
67 Verpackung
Geschäftsleitung
68
2.5 Objekt und Sichtweisen der Modellierung von betrieblichen IKS
Posteingang/-verteil. X
Auftrag erfassen X
Auftrag prüfen X X
Auftrag konfigurieren X X X
Auftrag kalkulieren X X
Auftrag terminieren X X X X
Auftrag bestätigen X
.
.
.
69
70
Gliederung
3. Funktionsorientierte Modellierung
Geschäftsleitung
72
Stelle Stelle Stelle Stelle
3. Funktionsorientierte Modellierung
73
l Hohe Arbeitsteilung,
l Viele Schnittstellen in der
Bearbeitungsfolge
l Lange Bearbeitungszeiten
l Hoher Koordinationsbedarf
l Hierarchiegrenzen sind
Ablaufgrenzen.
VERTRIEB Funktion
..........
VERTRIEB
Ausgangsebene Kundenauftragsführung
KD-NR.
Auftragskopf Vertr.-Nr.
Auftrags-Nr.
...Auftragsdatum
Sachbe-
arbeiter
Auftr.-Nr. Auftrags-
Rechnung
Pos.-Nr. position
Art.-Nr.
Bsp. Vertrieb: Menge.
..
Informationsmodell
Konto
Produkt-
Produkt lagerort
79
Kunden- Kunden-
Beziehung Bonität
prüfen prüfen
3.2 Funktions-
orientierte
Auftrags-
Modelle Leitdaten
erfassen
Auftrags-
Kopfdaten
Bsp. Auftrags- erfassen
bearbeitung:
Auftrags-
Pos.-Daten
Dialogstruktur erfassen
Lager-
bestand Auftrag
prüfen abschließen
Lager- Auftrag
bestand bestätigen
reservieren
Auftrag
z. Auslief.
vormerken
80
3.2 Funktionsorientierte Modelle
Auftrags- Funktionendiagramm
bearbeitung
Ebenendiagramm
Input Process Output
Kunden-
stammdaten Rechnung
Faktu-
rierung
Artikel-
stammdaten
Berichts-
wesen
Bestelldaten
Bestands-
(Stahlknecht 2002) verwaltung
Lager- Lager-
bestands- bestands-
daten daten
81
Bedingung
Strukturblock A Strukturblock A erfüllt ?
Bedingung
erfüllt ? J N
Strukturblock B J N
Strukturblock B
Struktur- Struktur-
block A block B Struktur- Struktur-
Strukturblock C Strukturblock C block A block B
Wiederholungsbedingung Fallabfrage
Fall-
N abfrage
Bedingung
erfüllt ?
J
Strukturblock A
Struktur- Struktur- Struktur- Struktur- Struktur- Struktur-
Strukturblock A block A block B block C block A block B block C
83
BEGIN
Eröffne Datei Ausgangsrechnungen
R15 = 0, R20 = 0
Vorstufe der Lies Datensatz Ausgangsrechnung
Programmierung: WHILE Datensätze vorhanden DO
Pseudocode IF Rechnungsbetrag > € 3.000
THEN Rabatt = 0,20 x Rechnungsbetrag
R20 = R20 + Rabatt
(Stahlknecht 2002) ELSE Rabatt = 0,15 x Rechnungsbetrag
R15 = R15 + Rabatt
ENDIF
Lies Datensatz Ausgangsrechnung
ENDDO
RGES = R15 + R20
Drucke RGES , R15, R20
Schließe Datei Ausgangsrechnungen
END
84
3.2 Funktionsorientierte Modelle
85
Zahlungs-
4 betrag
genehmigen
Mitteilung
6 versenden
(Stahlknecht 2002)
Zahlungs-
7 betrag
anweisen
86
3.2 Funktionsorientierte Modelle
KD
Organisatorische Laufwegesteuerung
VL
Bsp. Kundenauftragsführung
Abteilungen
BH
VS
FL
AB
- Versanddokumente schreiben
Bearbeitungsschritte:
Angebote bearbeiten
Auftragsabrechnung
Auftragsbestätigung
Aufträge bearbeiten
Aufträge verwalten
- Rückstände überwachen
- Auslieferung rückmelden
- Aufträge nachkalkulieren
- Lieferschein schreiben
- Auslieferung freigeben
- Fälligkeit überwachen
- Verfügbarkeit prüfen
- Auftragsänderungen
- Faktura erstellen
Auslieferung
- Bonität prüfen
- Reservieren
vornehmen
erstellen
- Zuteilen
87
kauf
Ein-
Reklamation
Annahme
Logistik
Service
Hier wollen wir hin.
Produktion
Kunden = Partner
ReWe
Marketing
F&E
89
Eigen-
KD-
fertig.
Auftrag
prüfen
KD-Bezieh. Auftrag Auftrag Auftrag Auftrag
prüfen konfig. kalkulieren terminieren bestätigen
Vertreter- Fremd-
Auftrag bezug
90 prüfen
3.3 Wandel zur Prozeßorientierung
Geschäftsfeld
Input Markt
Prozeß-Team
91
Wertschöpfungskette(n): EBENE 1
PC-
Marketing + Vertrieb von PCs Kunden
Geschäftsprozesse: EBENE 2
Angebot
GP Nr. 1: "Kunden aquirieren und Angebote abgeben" an
Kunde
Vorgangsketten: EBENE 3
Unter-
nehmens-
leitung
von Prozessen
betrieblichen IKS licher
Prozeß 2
Kopplung
Prozeß- Prozeß-
Verantwort- leistung
licher
93 Prozeß 3
Gliederung
Datenbestand Datenbestand
VA- VA-
Schritt Schritt
Daten- Daten-
quelle senke
VA-
VA- Schritt
Schritt nd
ta
es
te nb
Datenbestand
95 Da
SADT - Anwendungsbereiche
l Allgemeiner Ansatz, um Systeme jeglicher Art zu analysieren und zu entwerfen
l Das “WAS” eines Systems steht im Vordergrund, nicht das “WIE”.
l IKS-Entwicklung: Grobentwurf, Requirements Engineering
96
4. Datenflußorientierte Modellierung: SADT
Anwendungsfelder SADT
Situations-
studie Meilen-
stein
Entwicklungsebenen
Validierung 1
Fachkon-
zeption Meilen-
stein
Validierung 2
System-
konzep- Meilen-
tion stein
Validierung 3
System-
entwick- Meilen-
lung stein
Validierung 4
System-
installa- Meilen-
tion stein
Validierung 5
97 Zeit
SADT - Darstellungselemente
l Nur Kästchen und Pfeile für Funktionen, Tätigkeiten, Daten, Datenflüsse
l Immer duale Modelldarstellung: Aktivitäts- und Datenmodell
Aktivitätsmodell Datenmodell
(Aktigramm) (Datagramm)
Initiierendes Initiierende
Eingabeobjekt Tätigkeit
Mechanismus Mechanismus
(Prozessor) (Speicher)
98
4. Datenflußorientierte Modellierung: SADT
99
S1 (HH-Plan) S2 (Best.-Pol.)
E1 (Buchhändler) Bestellungen
Kaufe :A1 (Buchhändler)
Bücher
Rücksendungen
Bücher
Angestelltes
Personal
E3 (Personal) Verwalte
Personal :A3 (Personal)
Ausgeschiedenes
100 Personal
4. Datenflußorientierte Modellierung: SADT
Verlagsan- Bestell-
Bestelle
kündigungen belege
Bestel- Versende
Empfange lungen
Sende zurück
Bücher
101 Inventarisiere
Benutzerdatei
Bücher Rückgabebestätigung
Buchdaten Bücher zu- Reservierungsschein
rück geben
Buchdatei
102
4. Datenflußorientierte Modellierung: SADT
Kundenauftrag
Kundendaten
Auftrags- Auftragsdaten
Artikeldaten bearbeitung
Programm
Auftragsbearbeitung
Kundendaten Rechnung
Artikeldaten Fakturierung Rechnungssumme
(Stahlknecht 2002)
Programme
103 Finanzbuchhaltung
SADT - Vorteile
l Allgemeine System-Analyse und -Entwurfsmethode
l Integriert Funktionen und Daten mit Fokus auf Datenflüsse
l Konsequente schrittweise Verfeinerung, leicht erlernbar und leicht verständlich
l Im Requirements Engineering für benutzerpartizipative Grobentwürfe geeignet
SADT - Nachteile
l Aufbauorganisatorische Darstellung und Datenmodell mit anderen Methoden zu
ergänzen.
l Kontroll-/Steuerflüsse werden nicht modelliert (”WIE”). Ablauforganisatorische
Beziehungen werden somit nicht erfaßt.
l Berücksichtigt nicht Lokalitäts-/Geheimnisprinzip: Daher nicht zur Blockbildung
und Modularisierung geeignet.
l Beschränkung auf 3 bis 6 Teil-Objekte pro Verfeinerungsschritt kann
sachlogischen Erfordernissen zuwiderlaufen.
104
4. Datenflußorientierte Modellierung: SA
SA - Anwendungsbereiche
l Das “WAS” eines Systems steht im Vordergrund, nicht das “WIE”.
l IKS-Entwicklung: Grobentwurf, Requirements Engineering
105
4. Datenflußorientierte Modellierung: SA
Anwendungsfelder SA
Situations-
studie Meilen-
stein
Entwicklungsebenen
Validierung 1
Fachkon-
zeption Meilen-
stein
Validierung 2
System-
konzep- Meilen-
tion stein
Validierung 3
System-
entwick- Meilen-
lung stein
Validierung 4
System-
installa- Meilen-
tion stein
Validierung 5
106 Zeit
4. Datenflußorientierte Modellierung: SA
SADT - Darstellungselemente
l Zusätzlich zu den aus Symbolen bestehenden Graphen wird das Data Dictionary
(Datenlexikon mit sog. Minispecs) mitgeführt.
Prozeß Aus-
leihe
Speicher,
Materiallager Magazin
Datenquelle,
Benutzer
Datensenke
107
4. Datenflußorientierte Modellierung: SA
Benutzerdaten
Buchnummer
Buchdaten
1.
Benutzer SV Buchbestand
Buch
Entleihschein Leihkennzeichen
Buch Entleihschein
Magazin
108
4. Datenflußorientierte Modellierung: SA
1.2
w
Entleih-
ck
weisung
Magazin
109
4. Datenflußorientierte Modellierung: SA
Kundendaten
Lagerbestandsdatei Debitorendatei
110
4. Datenflußorientierte Modellierung: SA
SA - Vorteile
l Analyse und -Entwurfsmethode für Software-Systeme (Prozesse + Daten)
l Integriert Funktionen (Prozesse) und Daten mit Fokus auf Datenflüsse
l Schrittweise Prozeß-Verfeinerung, leicht erlernbar und leicht verständlich
l Im Requirements Engineering für benutzerpartizipative Grobentwürfe geeignet
SA - Nachteile
l Aufbauorganisatorische Darstellung und Datenmodell mit anderen Methoden zu
ergänzen.
l Kontroll-/Steuerflüsse werden nicht modelliert (”WIE”). Ablauforganisatorische
Beziehungen werden somit nicht erfaßt (Teil-Prozesse stellen keine Sequenz dar,
obwohl durchlaufend numeriert).
l Datenflüsse, -quellen und -senken werden nicht dekomponiert. Alle diese
Elemente müssen auf allen Verfeinerungsebenen mitgeführt werden.
l Darstellungen werden sehr schnell unübersichtlich.
111
Gliederung
Datenorientierte Modellierungsansätze
l Datenorientierte Modellierungsansätze für IKS konzentrieren sich auf die
betriebliche Datenstruktur, Datenrepräsentationsformen und die
Datenmanipulation.
l Datenstruktur bspw. für ein IKS: Kunden, Artikel, Lager, Vertriebsbeauftragte,
Aufträge, Lieferanten etc.
l Datenstruktur bspw. für ein IKS: Merkmale (Attribute) von Artikeln wie z. B. Preis,
Bezeichung, Menge etc. und Beziehungen z. B. zu Auftrag, Lieferant etc.
l Datenstrukturen sind i. d. R. zeitstabiler als Funktionen und eignen sich daher oft
besser für eine längerfristig gültige Modellbasis eines IKS.
l Typisches Beispiel für datenorientierte Modellierungsansätze:
- ERM (Entity Relationship Modeling)
113
5.2 Daten, Datenmanagement und Datenmodellierung
114
Daten
abstrakte, strukturierte
Darstellung der Realität,
zweckneutral
Entscheidung
Auswahl aus einer
Menge von Alternativen
Beziehungszu-
sammenhang,
g
Verarbeitung rtun
rwe
Abstraktion, Ve Umsetzung
Abbildung
Information Handlung
Wissen über die Durchführung zielgerichteter
Realität, zweckgerichtet Erzeugung Aktionen
115
5.2 Daten, Datenmanagement und Datenmodellierung
Informations-Darstellung
strukturiert unstrukturiert
statisch dynamisch
sichtbar hörbar
bewegte akust.
Daten Texte Bilder
Bilder Signale
117
5.2 Daten, Datenmanagement und Datenmodellierung
Unstrukturierte Datenspeicherung
l Beispiel Word-Dokument mit Adressen
l Bedarf keiner weiteren Erläuterung .....
119
5.2 Daten, Datenmanagement und Datenmodellierung
Programm 1 Programm 2
Daten- Daten-
beschreibung beschreibung
Daten- Daten-
Prozedur- zugriff Prozedur- zugriff
Teil Teil
Datei 1 Datei 2
120
121
5.2 Daten, Datenmanagement und Datenmodellierung
122
Programm 1 Programm 2
Prozedur- Prozedur-
Teil Teil
Strukturierte
Daten-
speicherung in
Datenbanken
Datenbank-System
Datenbank-Management-System (DBMS)
123
5.2 Daten, Datenmanagement und Datenmodellierung
Gestern/heute Heute/morgen
Spartenlösungen Integrierte Gesamtlösungen
Isolierte AW-Inseln Bereichsübergreifende AWS
Geschlossene, teilweise Sicht des Gesamtunternehmens
inkompatible Systeme Integration neuer Technologien
Begrenzte Integrierbarkeit –Bürokommunikation
neuer Techniken –Teamunterstützung
–Wissensbas. Systeme
124
Gestern/heute Heute/morgen
Begrenzte Auswertbarkeit Max. Unterstützung der Bereichs-
der Datenbestände und Unternehmensziele
Periodische Auswertungen Online-Verfügbarkeit aller
Hohe Anteil Stapelverarbeitung wesentlichen Informationen
Daten-/Dateienredundanz Umfassende, abschließende
Unterschiedl. update-Zyklen Sofortverarbeitung
Konsistente Datenbestände
Einsatz der indiv. DV
125
5.2 Daten, Datenmanagement und Datenmodellierung
Gestern/heute Heute/morgen
Hohe Redundanz bei Unternehmensweites
Daten und Funktionen Datenmodell
Unterschiedliche Standards Unternehmensweite
Abhängigkeit von Spezialisten, Standards
mangelhafte Dokumentation Toolunterstützung
Erhebl. Wartungsaufwand Wiederverwendbarkeit
Hoher Anwendungs- Schnelle Reaktions-
rückstau fähigkeit
126
l Informationen
werden zunehmend
Objekt Kunde Angebot Organisation
wettbewerbsrelevant.
l Datensicht stabiler
als Funktionssicht.
l Gefordert: Integrierte
Sichtweise auf alle
Unternehmensdaten. Vertrag Police
l Die Organisation (auf
der Basis einer
Modellierung)
bestimmt wesentlich
die Leistung der Be
En zie Schaden
betrieblichen IKS. titä hu
t ng
128
Debitoren-
129 Buchhaltung
5.3 Vorgehen bei der Datenmodellierung
Datenmodellierung: Begriff
l Formale Beschreibung von Daten und deren Zusammenhänge
l ”Business Rules” implizit im Modell enthalten
Datenmodellierung: Ziele
l Systematische, strukturierte Erfassung und Dokumentation von Informationen
l Verwaltung und Nutzung von Daten/Informationen mit einem Datenbanksystem
l Datenmodellierung ist zwingende Voraussetzung für den Entwurf und die
Implementierung von Datenbanksystemen.
Exkurs: Datenbanksysteme
l Die Konstruktionsmerkmale eines (relationalen) Datenbanksystems beeinflussen
die Modellierung der Daten, die in diesem Datenbanksystem verwaltet werden.
l 3 Schichten (Schemata) in einem (relationalen) Datenbanksystem:
- Konzeptionelles (konzeptuelles) Schema
- Externes Schema (Views, Sichten)
130 - Internes (physisches) Schema
Tab. 3 Tab. 4
Tab. 5 Tab. 6
Tab. 7
Daten-Basis
Physische
Abbildung
Organis.
Schema:
Internes
Daten-
DBMS
Phys.
Konzeptionelles
Daten-Modell
Informations-
Gesamtes
Schema:
Realwelt
modell
(ERM)
Modellierung
Benutzer-
Anwend.-
Externes
Schema:
Externes
Schema:
Externes
Schema:
Prozeß-
View 1
View 2
View 3
131
5.3 Vorgehen bei der Datenmodellierung: Exkurs Datenbanksystem
Konzeptionelles Schema
l Stellt die Beschreibung des gesamten Realitätsausschnittes (dar (Unternehmen),
der im Datenbanksystem abgebildet werden soll.
l Durch Beobachtung der Realität wird ein Informationsmodell erzeugt, aus dem
das konzeptionelle Modell (ERM) abgeleitet wird.
Internes Schema
l Stellt die physische Organisation der Datenelemente dar (bis hin zur physischen
Anordnung der Daten auf Speichermedien).
l Wird aus dem konzeptionellen Datenmodell abgeleitet/erzeugt
Externe Schemata
l Ausschnitte des konzeptionellen Modells; Separierung aufgrund bestimmter
Aufgaben, die der jeweilige Ausschnitt erfüllen soll.
l Die Aufgaben sind durch die Anforderungen einzelner Benutzer, Anwendungen
oder Prozesse festgelegt.
132 l ”Benutzersicht” auf die Daten
Internes/physisches Schema
(physisches Datenbankmodell)
Logisches Relationenmodell
1
1
(Normalisierung)
-)Schema
P
1 P
Konzeptionelles Datenmodell
(ERM)
Abgrenzung
Realitätsausschnitt
133
5.3 Vorgehen bei der Datenmodellierung: Exkurs Datenbanksystem
Konzeptionelles Datenmodell
l Modellierung des Realitätsausschnittes aus fachlicher Sicht
l Von der (technischen) Implementierung unabhängig
l Semantisches Datenmodell (z. B. mit ERM)
l Trennung von Essenz und Inkarnation
l Erlaubt die Mitwirkung von Nicht-Informatikern bei der Datenmodellierung
(Benutzerpartizipation).
Logisches Relationenmodell
l Überführung des konzeptionellen Datenmodells in ein logisches Schema (hier:
Relationenmodell), das dann direkt in ein technisches (hier: relationales)
Datenbanksystem (interne, physische Umsetzung auf Speichermedien) überführt
werden kann.
l Hier: Relationenmodell ist somit abhängig vom anvisierten (hier: relationales)
Datenbanksystem, in das es umgesetzt werden soll.
134
Datenmodellierung Normalisierung
135
5.4 ERM - Entity Relationship Modeling
ERM - Anwendungsbereiche
l Allgemeiner Ansatz, um Datenmodelle zu
entwerfen
l Unabhängig vom anvisierten Datenbanksystem
(klassisch, relational)
l Das “WAS” eines Systems steht im Vordergrund,
nicht das “WIE”.
l IKS-Entwicklung: Grobentwurf, Fach- und
136 Systemkonzeption
Anwendungsfelder ERM
Situations-
studie Meilen-
stein
Entwicklungsebenen
Validierung 1
Fachkon-
zeption Meilen-
stein
Validierung 2
System-
konzep- Meilen-
tion stein
Validierung 3
System-
entwick- Meilen-
lung stein
Validierung 4
System-
installa- Meilen-
tion stein
Validierung 5
137 Zeit
5.4 ERM - Entity Relationship Modeling
ERM - Entitätsmenge
Darstellungs-
elemente
(klassisch) erteilt
l Entitätsmengen Attribut
l Relationen
l Attribute
1 n
l Kardinalitäten Kunde bucht Leihwagen
Leihdatum
Preis
Dauer
138
Entitätsmenge
l Entitätsmenge, Entity Set, Entitätstyp, Objekttyp
l Eine Entitätsmenge enthält Entitäten (Ausprägungen)
l Entität: Individuelles, identifizierbares Exemplar von Dingen, Personen, Begriffen
der realen oder Vorstellungswelt; wird durch Eigenschaften beschrieben.
l Entitätsmenge: Zusammenfassung von Entitäten mit gleichen Eigenschaften
unter einem gemeinsamen Oberbegriff
l Symbol: Rechteck
l Beschriftung: Substantiv (Singular)
l Bsp: Kunde = Entitätsmenge / Müller, Meier, Schmidt ... = Entitäten
Entitätsmenge
139
5.4 ERM - Entity Relationship Modeling: Attribut
Attribut
l (Beschreibendes) Attribut, Property
l Fachliche Eigenschaft, die allen Entitäten einer Entitätsmenge gemeinsam ist.
l Symbol: Oval
l Beschriftung: Substantiv (Singular)
Kunde
Name
Adresse
Telefon
140
Kunden-Nr.
Name
Adresse
Telefon
141
5.4 ERM - Entity Relationship Modeling: Relation
Relation, Beziehungstyp
l Relation, Beziehungstyp, Relationstyp, Assoziation, Relationship
l Verbindet Entitätstypen / Symbol: Raute / Beschriftung: Verb (i. d. R.)
l Beziehungstypen können Attribute besitzen
l Zwei Entitätstypen können durch mehrere Beziehungstypen miteinander in
Verbindung stehen.
l Zum Beziehungstyp gehört die Kardianlität (s. ff.)
1 n
Kunde bucht Leihwagen
Leihdatum
Preis
Dauer
142
Kardinalität
l Kardinalität, Komplexitätsgrad
l Gibt an, mit wieviel A-Entitäten eine B-Entität in Verbindung stehen kann.
l Symbol: Jeweils an den verbundenen Entitäten
1 : 1 oder
1 : n oder
n:m
l Symbolplazierungen sollten modellweit in der gleichen Leserichtung erfolgen.
l Entscheidend für die Kardinalität eines Beziehungstyps sind die fachlichen
Gegebenheiten im Zusammenhang mit den zu verbindenden Entitätsmengen.
l Bsp.: Studenten müssen mehrere Klausuren schreiben und an jeder Klausur
nehmen mehrere Studenten teil.
l Bsp.: Ein Bibliotheksbenutzer leiht mehrere Bücher aus und ein Buch kann von
mehreren Benutzern ausgeliehen worden sein (hintereinander).
l Häufig: Zeitpunkt-/Zeitraumbetrachtungsproblem
143
5.4 ERM - Entity Relationship Modeling: Kardinalität
1 besteht
n
Auftrag Position
aus
Artikelbez.
Eingang Einzelpreis
Kunden-Nr. Menge
145
5.4 ERM - Entity Relationship Modeling: Kardinalität
n m
Produkt liegt Lager
Bezeichnung
Gewicht Adresse
Farbe Leiter
l Ein bestimmtes Produkt kann sowohl im Lager Mainz als auch im Lager Trier
vorgehalten werden.
l Hier fachlich gegeben: In einem bestimmten Lager können immer mehrere
Produktarten vorgehalten werden.
l 1 Lager mit genau einer Produktart müßte mit 1:1 modelliert sein.
146
Firmen- 1 leiht
n
Leihwagen
Kunde
Entleihdatum
Rückgabe am
Preis
l Zu modellieren ist: Wer hat einen bestimmten Wagen zur Zeit geliehen?
l Ein Firmenkunde hat in einem bestimmten Zeitraum keinen, einen oder mehrere
Wagen für seine Mitarbeiter ausgeliehen.
l Ein Wagen ist zu einem bestimmten Zeitraum genau an einen Kunden verliehen.
l Kann nicht beantworten: Wer hatte wann welchen Wagen geliehen?
147
5.4 ERM - Entity Relationship Modeling: Kardinalität
Firmen- n leiht
m
Leihwagen
Kunde
Name Fabrikat
Adresse Farbe
Bonität Laufleistung
148
A B
C (0,1) A B
max. genau
A B
A B
1 (1,1) A B
genau genau
MC (0,n) A B
max. max. A B
A B
A B
M (1,n) A B
genau max.
150
Kardinalität
l Beispiel: Fluggesellschaft - Passagierverwaltung
l Entitätsmenge “Passagier” mit Name, Vorname, Personalausweis-Nr., .....
l Entitätsmenge “Flug” mit Flugnummer, Datum, Reiseziel, .....
l Ein Passagier kann mit verschiedenen Flügen (Wien, Paris etc.) fliegen.
l Also 1: n ?
Merke:
Kardinalität immer von beiden Seiten betrachten.
Analyse nicht nach erstbester Interpretation abschließen.
151
5.4 ERM - Entity Relationship Modeling: Schwache Entitäten
Schwache Entitätsmengen
l Schwache Entitätsmengen enthalten Entitäten, die nur in Abhängigkeit von einer
anderen Entität existieren können.
l Voll partiziperende vs. schwache Entitätsmenge
l Symbol: Doppeltes Rechteck
Yacht- 1 n
besitzt Yacht
Eigner
Rekursive Beziehungstypen
l Entitätsmange steht mit sich selbst in Beziehung
153
5.4 ERM - Entity Relationship Modeling: Beziehung “Aggregation”
Beziehungstyp “Aggregation”
l ist-Teil-von / is-part-of / Über-Untergeordneten-Beziehung
l Vererbt von Teilen auf Ganzes, von unten nach oben
Motor-
rad Kolben
Ventile
Ventil
Motor Felge Rahmen
Gabel
Beziehungstyp “Generalisierung”
l Attribute einer Entitätsmenge (subtype) sind einer übergeordneten Entitätsmenge
(supertype) zuzuordnen (subtype relationship).
l Vererbung vom Ganzen auf´s Spezielle, von oben nach unten
Name Person
Geb.-Dat. Name
Geb.-Dat.
Problembereich
l Mehrere Studenten nehmen an einer Klausur teil.
Aber: 1 Student schreibt nur 1 Klausur? Lehrstuhl
n 1
Student Klausur
156
ERM-Beispiel: Ruderboot-Vermietung
l Ein Ruderverein hat Mitglieder, die ihre (Ein-Mann-) Ruderboote an
vereinsexterne Hobbysportler vermieten.
l Ein Vereinsmitgleid kann mehrere Boote besitzen und anbieten.
l Die Vermietung bezieht sich immer auf das Abfahren einer vorgegebenen
(sicheren) Ruder-Tour. Diese Tour ist Bestandteil des Mietvertrags.
l Der Mieter kann sich sein Boot nach Gewicht und Farbe aussuchen.
l Für jede Tour gibt es eine festgelegte Anzahl an Rudermeilen. Am Jahresende
bekommen alle Hobbysportler mit mehr als 100 Rudermeilen ein Geschenk.
157
5.4 ERM - Entity Relationship Modeling: Beispiel “Ruderboot”
Tour
Tour_nr
Ziel Starke EM
Rudermeilen
Hobbysportler Ruderboot
Mietvertrag
Kunden_Nr Boot_Name
schließt Mietvertragnr umfaßt Schwache EM
Nachname Farbe
Vorname Datum Gewicht
gehört
Ruderverein Bootsbesitzer
Vereins_Nr BB_Nr
Verein_Name BB_Nachname
V_Telefon_Nr BB_Vorname
BB_Telefon
Nicht- ident. 1:N Bzt.
158
Tour
l Jeder Vertrag ist Tour_nr
wird vereinbart in
l Jedem Vertrag ist
eindeutig eine
Tour mit best. Hobbysportler Ruderboot
Mietvertrag
Rudermeilen Kunden_Nr Boot_Name
schließt Mietvertragnr umfaßt
zugeordnet. Nachname Farbe
Vorname Datum Gewicht
gehört
Ruderverein Bootsbesitzer
Vereins_Nr BB_Nr
Verein_Name BB_Nachname
V_Telefon_Nr BB_Vorname
BB_Telefon
159
5.4 ERM - Entity Relationship Modeling: Beispiel “Segeltörn”
ERM-Beispiel: Segeltörn-Vermittlung
l In der Mitsegler-Agentur Windei GmbH werden Yachteignern Teilnehmer an
Segeltörns vermittelt. Einem Eigner können mehrere Yachten gehören, während
eine Yacht nur einem Eigentümer gehört. Jeder Törn findet mit einem
festgelegten Start- und Endedatum statt.
l Jede Jacht kann während der Saison für mehrere Törns verplant werden. Jeder
Törn hat genau ein Reiseziel, das aber von mehreren Törns angelaufen werden
kann. Der Preis des Törns ist abhängig vom Reiseziel und von der Yacht.
l Jeder Mitsegler kann während der Saison an mehreren Törns teilnehmen. Er
schließt dazu für jeden Törn einen Vertrag mit dem betreffenden Yachteigner.
ERM-Beispiel: Segeltörn-Vermittlung
schließt ab schließt ab
Yachteigner Vertrag_Törn Kunde
161
5.4 ERM - Entity Relationship Modeling: Beispiel “Segeltörn”
Yacht
Törn
Yacht_nr
Yachteigner_nr (FK) Törn_nr
Yacht _Name Yacht_nr (FK) fährt zu / Rei seziel
wird eingeplant für /
Baujahr findet statt mit Yachteigner_nr (FK) wird angefahren von Reiseziel_nr
Modell Dauer
Inselname
Farbe Mittagessen
Hafen
Max_teilnehmer Komfortkl asse
Beschreibung
Motor Reiseziel_nr (FK)
Sandstrand
Y_Preiskategorie Startdatum
Klima
Endedatum
Meilen
Preiskategorie
Yachteigner Kunde
Yachteigner_nr Kunden_nr
Vertrag_Törn
Name_YE Name_kd
Yachteigner_nr (FK) Adresse_Kd
Adresse_YE Vertrag_nr
Schiffschein schließt schl ießt Geburtstag
Törn_nr (FK) Kundenklasse
Erf ahrung
Kontoverbindung Preis Werbung_erwünscht
Versicherungsschutz
Sonderleistungen
162
Relationenmodell
Relationenmodell
Konzeptuelles Schema
Konzeptuelles Schema
(sem. Datenmodell)
(logische Ebene) Internes/physisches
Internes/physisches
Schema
Schema
l Érstellen von Entitätsmengen l ERWin löst n:m-
l Erstellen von Relationstypen Beziehungen auf l Ziel-DBMS angeben
l Konkretisierung von l Konkretisierung der l Generierung per
Kardinalitäten (auch n:m) Datentypen Knopfdruck
l Hinzufügen von Attributen l Physical Model
(ohne Datentypen)
l Hinterlegung von
Informationen zu Attributen
l Logical Model
164
165
5.4 ERM - Entity Relationship Modeling: Tool “ERWin”
ERWin:
Physical
Model
(Relationen-
schema,
normalisiert)
166
Datenmodellierung Normalisierung
167
5.4 ERM - Entity Relationship Modeling: Exkurs “Normalisierung”
Der Normalisierungsprozeß
l Relationenschemata prüfen und ggfs. ohne Informationsverlust in
mehrere Basis-Relationenschemata zerlegen
l Normalerweise: „Normalisierende“ Nachbearbeitung eines ERM
l Nachfolgend: Vorbereitung Unnormalisiert 1. 2. 3. NF
168
ReNr ReDat KNr KName KStr KPlz KOrt ANr ABez APreis AMe
002 12.05.00 543 Meier A-Weg 5 55128 Mainz 125 ZIP-100 198,00 4
120 PC-800 999,00 1
003 12.05.00 123 Krause B-Straße 8 55131 Mainz 300 CD-300 248,00 1
004 13.05.00 379 Schulze C-Allee 4 55131 Mainz 200 DVD-10 448,00 1
930 HUB-20 110,00 3
250 HDD-40 598,00 1
005 13.05.00 224 Meier D-Platz 3 55116 Mainz 200 DVD-10 448,00 2
006 13.05.00 123 Krause B-Straße 8 55131 Mainz 310 SCA-63 799,00 1
169
5.4 ERM - Entity Relationship Modeling: Exkurs “Normalisierung”
Rechnungs-Daten
Artikel-Daten
ReNr ReDat KNr ANr AMe
Kunden-Daten ANr ABez APreis
002 12.05.00 543 120 1
KNr KName KStr KPlz KOrt 120 PC-800 999,00
125 4
125 ZIP-100 198,00
123 Krause B-Straße 8 55131 Mainz 003 12.05.00 123 300 1
200 DVD-10 448,00
224 Meier D-Platz 3 55116 Mainz 004 13.05.00 379 200 1
250 HDD-40 598,00
379 Schulze C-Alle 4 55131 Mainz 250 1
300 CD-300 248,00
543 Meier A-Weg 5 55128 Mainz 930 3
310 SCA-63 799,00
005 13.05.00 224 200 2
930 HUB-20 110,00
006 13.05.00 123 310 1
170
ReNr ReDat KNr ANr AMe ReNr ReDat KNr ANr AMe
1. Normalform: Rechnungs-Daten
Redundante Mehrfacheinträge ReNr ReDat KNr ANr AMe
in ReDat und KNr
002 12.05.00 543 120 1
002 12.05.00 543 125 4
003 12.05.00 123 300 1
004 13.05.00 379 200 1
004 13.05.00 379 250 1
004 13.05.00 379 930 3
005 13.05.00 224 200 2
006 13.05.00 123 310 1
172
KNr KName KStr KPlz KPlz KOrt ANr ABez APreis ReNr ReDat KNr ReNr ANr AMe
123 Krause B-Straße 8 55131 55116 Mainz 120 PC-800 999,00 002 12.05.00 543 002 120 1
224 Meier D-Platz 3 55116 55128 Mainz 125 ZIP-100 198,00 003 12.05.00 123 002 125 4
379 Schulze C-Alle 4 55131 55131 Mainz 200 DVD-10 448,00 004 13.05.00 379 003 300 1
543 Meier A-Weg 5 55128 250 HDD-40 598,00 005 13.05.00 224 004 200 1
300 CD-300 248,00 006 13.05.00 123 004 250 1
310 SCA-63 799,00 004 930 3
930 HUB-20 110,00 005 200 2
006 310 1
Kunden
Kunden(KNr,
(KNr,KName,
KName,KStr,
KStr,KPlz)
KPlz)
Orte (KPlz, KOrt)
Orte (KPlz, KOrt)
Artikel (ANr,ABez,
Artikel(ANr, ABez,APreis)
APreis)
Rechnungsköpfe (ReNr,ReDat,
Rechnungsköpfe (ReNr, ReDat,KNr)
KNr)
Rechnungspositionen (ReNr,ANr,
Rechnungspositionen(ReNr, ANr,AMe)
AMe)
176
Organisation ?
Abteilung
Unter- Unter- Unter-
funktion funktion funktion
Daten Steuerung ?
Lehrstuhl
2 Sachgebiete:
OOA-Modell
nach 1: Auftraggeber
2: Auftrag
Coad/Yourdon 3: Mitarbeiter
1 3
180
Situations-
studie Meilen-
stein
Entwicklungsebenen
Validierung 1
Fachkon-
zeption Meilen-
stein
Validierung 2
System-
konzep- Meilen-
tion stein
Validierung 3
System-
entwick- Meilen-
lung stein
Validierung 4
System-
installa- Meilen-
tion stein
Validierung 5
183 Zeit
6.1 Zum Paradigma der Objektorientierung: Chronologie
Chronologie: OO-Entwicklung/-Programmierung/-Codierung
l Von der Programmierung (Entwicklung, Implementierung, 70er) über Entwurf
(Systemkonzeption, 80er) zur Analyse (Fachkonzeption, Situationsanalyse, 90er)
l 1967: Objektorientierte Programmierung mit SIMULA 67
l 1976: Programmiersprache Smalltalk; erstmals Begriff “Objektorientierung”
l 1985: Programmiersprache C++
70er Jahre:
l 1989 bereits ca. 88 oo/-basierte/oo-erweiterte Sprachen
(Eiffel, Oberon, Objective-C, Pascal, Modula-2, Lisp etc.) OO-Codierung
Chronologie: OO-Entwurf/-Design/-Konzeption
l Ausrichtung der Systemkonzeption (Design, Entwurf) 80er Jahre:
nach den Grundgedanken der Objektorientierung
(nicht mehr nach der Funktions-/Prozedur-Orientierung) OO-Design
l 1977: Beschreibungssprache DELTA
l 1981: OO-Entwurf von Booch auf Basis von ADA
l 1988: OO-Design nach Wirfs-Brock 90er Jahre:
184
l 1992: BON (Better Object Notation) von Nerson OO-Analyse
185
6.1 Zum Paradigma der Objektorientierung: Ziele
186
Wiederverwendbarkeit / Modularität
Fehler,
Kosten,
Komplexität,
Entwicklungszeit
reduzieren
Durchgängigkeit Verständlichkeit
- Objektbildung
- Kapselung
- Klassenbildung
- Assoziationen
- Vererbung
- Nachrichtenaustausch
- Polymorphismus
188
Attribute: Operationen:
Objekt: - Farbe (weiß) - Melken
Elsa Euter - Beine (4) - Füttern
- Milchmenge (15) - Fortpflanzen
189
6.2 Grundelemente der Objektorientierung: Objektbildung
190
Objekt: Schlüssel
Objekt: Tür
Objekt: Haus
192
Klasse Kuh
Objekte
6.2 Grundelemente
6.1 Zum Paradigma
der Objektorientierung:
der Objektorientierung
Assoziationen
: Kunde : Auftrag
Name = Meier 1 erteilt n Nummer = A-12345
Status = aktiv Datum = 15. Mai 2001
eMail = Meier@home.de Wert = 200.000 [DM]
1 1
verantwortlich für “Objektdiagramm” gehört zu
n 1
: Kundenbetreuer : Rechnung
Name = Müller n hat m Nummer = R-232323
Persnr = P-987654321 Betrag = 300.000 [DM]
Branche = Maschinenbau Zahlungsart = Bar
195
6.2 Grundelemente der Objektorientierung: Assoziationen
: Fahrrad 0..*
Bauteil
Bezeichung = Berglust
Artikelnr = AR-1245 0..*
Kategorie = Mountainbike besteht aus
1 1
hat hat
1 n
: Rahmen : Bremse
Bezeichnung = Longlast Bezeichnung = LX-20
Rahmennr = R-9987 Hersteller = Hercules
Material = Aluminium Kategorie = Handbremse
196
: Auftrag
Nummer = A-12345
Datum = 15. Mai 2001
Wert = 200.000 [DM]
1 1
hat gehört zu
1 n
: Auftragsposition : Rechnung
Posnr = PO-98765 Nummer = R-232323
Artikelnr = AR-1245 Betrag = 300.000 [DM]
Menge = 300 Zahlungsart = Bar
197
6.2 Grundelemente der Objektorientierung: Vererbung
Insekten
Ur-Insekten Flug-Insekten
Borstenschwänze Libellen
Vererbung: Einfachvererbung
l Bei der “Einfachvererbung” hat jede Klasse genau 1 direkte Oberklasse (mit
Ausnahme der Wurzel).
l Es entsteht eine Hierarchie in Form eines (umgedrehten) Baumes.
Unterklasse
PKW LKW
Oberklasse
201
6.2 Grundelemente der Objektorientierung: Vererbung
Vererbung: Mehrfachvererbung
l Bei der “Mehrfachvererbung” (multiple Vererbung) kann jede Klasse mehrere
direkte Oberklassen haben (mit Ausnahme der Wurzel).
l Problem: Eine Klasse kann z. B. zwei Attribute oder Operationen gleichen
Namens von verschiedenen Oberklassen erben. Konfliktlösung erforderlich.
Unterklasse
Landfahrzeug Wasserfahrzeug
Oberklasse
202
Nachrichtenaustausch: Grundlegendes
l Die Funktionalität (das dynamische Verhalten) eines objektorientierten Systems
ist in den Operationen seiner Objekte hinterlegt.
l Die Realisierung dieser Funktionalität setzt voraus, daß die Operationen
verkettet werden können.
l Dazu müssen Beziehungen zwischen den beteiligten Objekten bestehen. Die
Objekte müssen “sich kennen” (Vererbungsbeziehungen, Assoziationen).
l Die Operationen der Objekte müssen “aufgerufen, initialisiert” werden.
l Dies geschieht über “Botschaften” (Nachrichten) als “Operationsausführungs-
anweisungen” zwischen den beteiligten Objekten.
l Die Botschaft (message) trägt den Namen der Operation, die sie aufruft.
Nachrichtenaustausch: Polymorphismus
l Der Empfänger interpretiert die Botschaft, führt seine Operation aus und schickt
das Ergebnis an den Sender zurück.
l Der Sender weiß nicht, wie die Operation vom Empfänger ausgeführt wird.
l Die Menge der Botschaften, auf die die Objekte einer Klasse reagieren können,
wird als Protokoll der Klasse bezeichnet.
l Polymorphismus: Bei der Versendung 1 Botschaft an Objekte verschiedener
Klassen können verschiedene Operationen mit verschiedenen Ergebnissen
ausgelöst werden.
l Bspw. “drucken ()” gesendet an die Klassen “Auftrag” und “Buch”
System
210
Entwurf
System
Implement.
211
6.3 Die Unified Modeling Language (UML): Charakteristika
212