Sie sind auf Seite 1von 34

Institut für Informatik

Betriebliche Informationssysteme

Vorlesung Softwaretechnik
- Definitionsphase, funktionale und
objektorientierte Sicht -

Prof. Klaus-Peter Fähnrich

Wintersemester 2008/2009

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 1


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Softwaretechnik Betriebliche Informationssysteme

Einführung und Überblick


LE 1
V Unternehmensmodellierung
1 Grundlagen 2 Objektorientierte
LE 24 Unternehmensmodellierung LE 25
2 LE

II SW-Management I SW-Entwicklung III SW-Qualitäts-


Management
1 Grundlagen 1 Die Planungsphase 1 Grundlagen
LE 1 LE 2 - 3 LE 9

2 Planung 2 Die Definitionsphase 2 Qualitäts-


LE 2 LE 4 - 22 sicherung LE 10

3 Organisation 3 Die Entwurfsphase 3 Manuelle Prüf-


Legende: LE 3 - 4 LE 23 - 32 methoden LE 11

4 Personal 4 Die Implementationsphase 4 Prozessqualität


= Übergabe von LE 5 LE 33 LE 12 - 13
Teilprodukten
5 Leitung 5 Die Abnahme- und 5 Produktqualität –
LE 6 - 7 Einführungsphase LE 34 Komp. LE 14 - 17
= Informationsaustausch
= Einfluss 6 Kontrolle 6 Die Wartungs- & Pflegephase 6 Produktqualität –
LE 8 LE 34 Syst. LE 18 - 19
= Unterstützung
8 LE 33 LE 11 LE
LE = Lehreinheit
IV Querschnitte und Ausblicke
Die in dieser Vorlesung 1 Prinzipien und 2 CASE 3 Wiederver- 4 Sanierung
Behandelten Themen Methoden LE 20 LE 21 wendung LE 22 LE 23
4 LE

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 2


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Lernziele Betriebliche Informationssysteme

1. Konzepte beschreiben für Funktionsbaum, Geschäftsprozess und


Datenflussdiagramm
2. Hierarchische Gliederung von Funktionen und Konstruktion eines
Funktionsbaumes für eine gegebene Problemstellung
3. Checklisten
4. Strukturierung von Geschäftsprozessen
5. Ermittlung von Schnittstellen, Funktionen, Speicher und
Informationsfluss für gegebene Problemstellung
6. Regeln für die Syntax und Semantik von Datenflussdiagrammen
(DFD)

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 3


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Überblick Betriebliche Informationssysteme

Konzepte und Sichten

Strukto-
häufig verwendet

selten verwendet

gramm
(1973)

PAP ET Aktivitäts- Kollabora-


(Programm (Entschei- diagramm tionsdia-
- dungsta- (1997) gramm
ablaufplan) belle)
(1966) (1957)

Funktions- Geschäfts- Daten- Data ER Klassen- Pseudo- Regeln Zustands- Petri- Sequenz-
baum Prozess Flussdia- Dictionary (Entity Re- diagramm code Automat Netz diagramm
(1987) Gramm (1979) Lationship) (1980/90) (1954) (1962) (1987)
(1966) (1976)

Neben- Inter-
Funktionale Arbeits- Informa- Daten- Entitäts- Klassen- Kontroll- wenn-dann Endlicher
läufige aktions-
Hierachie ablauf tions- strkturen typen & strukturen strukturen Strukturen Automat
Strukturen Strukturen
fluss Beziehungen
Objekt- Algorith- Regel- Szenario-
Funktionale Sicht Datenorientierte Sicht Zustandsorientierte Sicht
orientierte mische basierte basierte
Sicht Sicht Sicht Sicht

LE5 LE8 LE6-7 LE9 LE9-10 LE11-12 LE7

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 4


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Funktionsbaum Betriebliche Informationssysteme

• Funktion beschreibt Tätigkeit oder klar umrissene Aufgabe innerhalb eines


größeren Zusammenhangs. Transformiert Eingabedaten in Ausgabedaten bzw.
ändert die Struktur der Information.
• Funktionshierarchie entsteht wenn eine allgemeine Funktion in spezielle
Teilfunktionen gegliedert wird.Es entsteht ein Funktionsbaum.
Basis der Hierarchie
• Besteht-aus (meist in der Definitionsphase):
Funktions- A besteht aus B und C
name • Ruft-auf (meist in der Entwurfsphase):
A ruft B und C auf.

Grafische Darstellung
Erstellungsregeln:
• Unter einer gemeinsamen Vaterfunktion sollen nur
Funktionen (Kindfunktionen) angeordnet sein, die
A fachlich eng zusammengehörende Tätigkeiten
beschreiben
• Was eng zusammengehört kann nur mit Fachwissen
B C entschieden werden
• Auf einer Hierarchieebene sollen Funktionen
angeordnet sein, die sich auf gleichem Abstraktions-
Hierarchie niveau befinden
• Funktionsname ist i. d. R. Verb + Objekt oder
Substantiv + Verb
Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 5
SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Funktionsbaum-Beispiel: Seminarverwaltung Betriebliche Informationssysteme

v er w alte
S e m i n a re
un d K un de n

v e r w a lt e v e r w a lte b e a n tw o rte
K un de n F ir m a A n fr ag e n / F 9 0/

v e rw a lt e K u n d e n - b u c h e V e ra n s t a l - v e rw a lt e F irm e n - e rs t e l l e
d ate n tu n g d a ten F ir m e n b u c h u n g
/F 1 0 / , / D 1 0 / /F 2 0 / /F 2 3 /, /D 2 0 / /F23 /

e rf a s se e rfa ss e e rf a s se b e a rb e it e
Ne uk un de n A n m e ld u n g A b m eld u n g S t o rn ie r u n g
/F 1 0 / / F2 0/ /F2 1 / /F 2 2 /

a k t u a li s i e r e e r s t e l le A n m e ld e - e rs te lle A b m e ld e - e r s t e l le S t o r n i e -
Ku n d e nd aten b e s t ä t ig u n g b e s tä tig u n g r u n g s m i t t e i lu n g
/F 1 0 / / F1 0/ /F2 1 / /F 2 2 /

lö s c h e e r s t e l le R e c h n u n g e rs te lle e r s t e l le
Ku nde n / F1 0/ G u t sc h rift G u t s c h ri f t
/F2 1 / /F 2 2 /

e rs t e l l e e r s t e l le e r s t e l le G u t s c h r i ft s -
A d r es s au fk leb er R e c h n u n g s k o p ie ko p ie
/F 1 0 / / F1 0/ /F 2 2 /

t ra g e Z a h l u n g s - e r s t e l le
v e r z ü g e e in M it te ilu n g
/F 2 0 / , / D 2 1 / / F1 0/

L e g e n d e : / … / B e z ü g e z u m P f l i c h t e n h e ft

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 6


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Geschäftsprozesse Betriebliche Informationssysteme

Geschäftsprozesse im Großen
• Ablauforganisation eines Unternehmens
• Unternehmensprozess (business process)
o Besteht aus einer Anzahl von unternehmensinternen Aktivitäten, die
durchgeführt werden, um die Wünsche eines Kunden zu befriedigen
Geschäftsprozesse im Kleinen
• Funktionalität eines Produkts
• Definiert einen Arbeitsablauf, der mit Hilfe von Software durchgeführt wird, aber
manuelle und organisatorische Anteile besitzen kann
• use case
o Teil eines Geschäftsprozesses, der die Benutzerkommunikation mit dem
Software-System beschreibt
• Geschäftsprozess (use case) (Arbeitsablauf)
o besteht aus mehreren zusammenhängenden Aufgaben, die von einem Akteur
durchgeführt werden, um ein Ziel zu erreichen bzw. ein gewünschtes
Ergebnis zu erstellen.
Akteure
• Rollen von Menschen oder Systeme, insbesondere Computersysteme, die als
externe Beteiligte mit einem Unternehmen (Kunden) oder einem Software-
Produkt (Benutzer) kommunizieren und Daten austauschen; stets außerhalb des
Systems

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 7


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Schablone für Geschäftsprozesse Betriebliche Informationssysteme

Geschäftsprozess: Name (was wird getan?)


• Ziel: Globale Zielsetzung bei erfolgreicher Ausführung des Geschäftsprozesses
• Kategorie: primär, sekundär oder optional
• Vorbedingung: Erwarteter Zustand, bevor der Geschäftsprozess beginnt
• Nachbedingung Erfolg: Erwarteter Zustand nach erfolgreicher Ausführung des
Geschäftsprozesses
• Nachbedingung Fehlschlag: Erwarteter Zustand, wenn das Ziel nicht erreicht
werden kann
• Akteure: Rollen von Personen oder andere Systeme, die den Geschäftsprozess
auslösen oder daran beteiligt sind.
• Auslösendes Ereignis: Wenn dieses Ereignis eintritt, dann wird der
Geschäftsprozess initiiert
• Beschreibung:
1 Erste Aktion
2 Zweite Aktion
• Erweiterungen:
o 1a Erweiterung des Funktionsumfangs der ersten Aktion
• Alternativen:
o 1a Alternative Ausführung der ersten Aktion
o 1b Weitere Alternative zur ersten Aktion

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 8


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Schablone für Geschäftsprozesse - Beispiel Betriebliche Informationssysteme

Geschäftsprozess: Buchen: Von Anmeldung bis Buchung


• Ziel: Anmeldebestätigung und Rechnung an Kunden geschickt
• Kategorie: primär
• Vorbedingung: -
• Nachbedingung Erfolg: Kunde ist angemeldet
• Nachbedingung Fehlschlag: Mitteilung an Kunden, dass Veranstaltung
ausgebucht, ausfällt oder nicht existiert
• Akteure: Kundensachbearbeiter
• Auslösendes Ereignis: Anmeldung des Kunden liegt vor
• Beschreibung:
o 1 Kundendaten prüfen
o 2 Veranstaltung prüfen
o 3 Anmeldebestätigung und Rechnung erstellen
• Erweiterungen:
o 1a Kundendaten aktualisieren
o 1b Wenn Kunde Mitarbeiter einer Firma ist, dann Firmendaten erfassen
• Alternativen:
o 1a Neukunden erfassen
o 2a auf alternative Veranstaltung hinweisen, wenn ausgebucht

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 9


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Geschäftsprozessdiagramm Betriebliche Informationssysteme

Geschäftsprozessdiagramm (use case diagram) :


• Beschreibt das Zusammenspiel mehrerer Geschäftsprozesse untereinander und
mit den Akteuren
• Überblick über Produkt und Umgebung auf hohem Abstraktionsniveau
• In UML gibt es drei Möglichkeiten, Geschäftsprozesse zu strukturieren: die
extend-Beziehung, die include-Beziehung und die Generalisierungsbeziehung

System

Geschäfts-
prozess 1
Akteur 1

Geschäfts- Geschäfts- Akteur 3


prozess 2 prozess 3

Akteur 2

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 10


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Struktur von Geschäftsprozessen Betriebliche Informationssysteme

extend-Beziehung

Erweiterung des
Basisgeschäftsprozess Geschäftsprozesses
«extend»
Der Kunde wünscht
Informieren Info-Material
Extension point Adressaufkleber
Nach Kundendaten erstellen
Kunden- abrufen
sachbearbeiter

• vom Basisprozess wird in den Unterprozess verzweigt, wenn bestimmte


Bedingungen erfüllt sind
• Komplexitätsreduktion des Basis-Geschäftsprozesses

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 11


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Struktur von Geschäftsprozessen Betriebliche Informationssysteme

include-Beziehung

Buchen «include» Firmen-


«include»
buchung

Zahlungsmoral
überprüfen

Mache Prozesse besitzen die gleichen Unterprozesse. Um diese nicht doppelt zu


beschreiben werden sie als selbständiger Prozess modelliert. Mehrere Prozesse
können den Unterprozess dann verwenden. Unterprozesse stehen nie für sich allein.
(Analogie zu Unterprogramme in Programmiersprachen)
Der Pfeil zeigt vom Standard- zum Unterprozess, „Buchen“ ist also z. B. der
Hauptprozess, „Zahlungsmoral überprüfen“ der Unterprozess.

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 12


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Struktur von Geschäftsprozessen Betriebliche Informationssysteme

Generalisierungs-Beziehung

Krankenhaus-
aufnahme
Einweisung Notfall-
durch Arzt aufnahme

• übergeordneter Prozess vererbt sein Verhalten an die untergeordneten Prozesse


• abstrakte vs. konkrete Prozesse
 UML : siehe Programmierung und Programmiersprachen

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 13


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Beispiel für ein Geschäftsprozessdiagramm Betriebliche Informationssysteme

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 14


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Checkliste Geschäftsprozesse Betriebliche Informationssysteme

Ergebnisse
• Geschäftsprozessdiagramm
o Alle Geschäftsprozesse und Akteure sind eingetragen
• Beschreibung der Geschäftsprozesse
o Alle Geschäftsprozesse sind umgangssprachlich oder mittels Schablone
beschrieben.
Konstruktive Schritte
1. Akteure ermitteln
o Welche Personen führen diese Aufgaben zur Zeit durch und besitzen
daher wichtige Kenntnisse über die durchzuführenden Arbeitsabläufe?
Welche Rollen spielen diese Personen?
o Welche Personen werden zukünftig diese Aufgaben durchführen und auf
welche Vorkenntnisse muss die Benutzungsoberfläche abgestimmt
werden? Welche Rollen spielen diese Personen?
o Wo befindet sich die Schnittstelle des betrachteten Systems bzw. was
gehört nicht mehr zu dem System?

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 15


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Checkliste Geschäftsprozesse Betriebliche Informationssysteme

1. Geschäftsprozesse für die Standardverarbeitung ermitteln


o Primäre und ggf. sekundäre Geschäftsprozesse betrachten
o Welche Standardverarbeitung besitzen sie?
c) mittels Akteuren (z. B. Akteur „Veranstaltungsbetreuer“: Prozess
„Veranstaltung betreuen“)
 Sind die Akteure Personen?
 Welche Arbeitsabläufe lösen sie aus?
 An welchen Arbeitsabläufen wirken sie mit?
d) mittels Ereignissen (Akteure sind externe Systeme) (z. B. Ereignis
„Anmeldung liegt vor“)
 Erstellen einer Ereignisliste
 Für jedes Ereignis einen Geschäftsprozess identifizieren
 Externe und zeitliche Ereignisse (i. d. R. intern ausgelöst)
unterscheiden
e) mittels Aufgabenbeschreibungen
 Was sind die Gesamtziele des Systems?
 Welches sind die zehn wichtigsten Aufgaben?
 Was ist das Ziel jeder Aufgabe?
2. Geschäftsprozesse für Sonderfälle formulieren
o „Erweiterungen und Alternativen“ mittels Schablone erstellen
o Aufbauend auf Standardfunktionalität mit extend die Sonderfälle
formulieren, d.h. erweiterte Geschäftsprozesse beschreiben.

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 16


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Checkliste Geschäftsprozesse Betriebliche Informationssysteme

1. Aufteilen komplexer Geschäftsfälle


o Komplexe Schritte als eigene Sub-Prozesse spezifizieren (include)
o Komplexe Geschäftsprozesse (viele Sonderfälle) in mehrere
Geschäftsprozesse zerlegen und Gemeinsamkeiten mit include
modellieren
o Umfangreiche Erweiterungen als eigene Geschäftsprozesse spezifizieren
und mittels extend an den Hauptprozess anbinden
2. Gemeinsamkeiten von Geschäftsprozessen ermitteln
o Auf redundanzfreie Beschreibung achten (include).

Analytische Schritte
1. »Gute« Beschreibung
o Verständlich für den Auftraggeber
o Extern wahrnehmbares Verhalten
o Fachliche Beschreibung des Arbeitsablaufs
o Standardfall vollständig und Sonderfälle separat
o Maximal eine Seite
2. Fehlerquellen
o Zu kleine und damit zu viele Geschäftsprozesse
o Zu frühe Betrachtung von Sonderfällen
o Zu detaillierte Beschreibung

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 17


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Beispiel: Bearbeitung Schadensfall bei Versicherung Betriebliche Informationssysteme

Geschäftsprozess: bearbeite Schadensfall


• Ziel: Bezahlung des Schadens durch die Versicherung
• Kategorie: primär
• Vorbedingung: -
• Nachbedingung Erfolg: Schaden ganz oder teilweise bezahlt
• Nachbedingung Fehlschlag: Forderung abgewiesen
• Akteure: Schadenssachbearbeiter
• Auslösendes Ereignis: Schadensersatzforderung der versicherten Person
• Beschreibung:
o 1 Sachbearbeiter prüft die Forderung auf Vollständigkeit
o 2 Sachbearbeiter prüft, ob gültige Police vorliegt
o 3 Sachbearbeiter errechnet und überweist Betrag an Antragsteller
• Erweiterungen:
o 1a vom Antragsteller vorliegende Daten sind nicht vollständig,
Sachbearbeiter muss die Daten nachfordern
o 2a Antragsteller besitzt keine gültige Police, Sachbearbeiter teilt ihm dies mit
und schließt den Fall ab
o 3a Schaden durch Police unvollständig gedeckt: Sachbearbeiter errechnet
Teilbetrag und überweist diesen
• Alternativen: -

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 18


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Datenflussdiagramm Betriebliche Informationssysteme

Ein DFD (data flow diagram) beschreibt die Wege von Daten bzw. Informationen
zwischen Funktionen, Speichern und Schnittstellen und die Transformation der Daten
bzw. Informationen durch Funktionen. DFDs stellen also die „Daten-Pipeline“ dar.
Notation nach / DeMarco 79 /

Datenname
2. Datenfluss

Funktions-
name 5. Funktion oder Prozess

Speichername 8. Datenspeicher

Schnittstellen-
name 11. Schnittstelle zur Umwelt

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 19


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Datenflussdiagramm Betriebliche Informationssysteme

Quelle

Grundidee eines DFD besteht darin, dass man sich


vorstellt, das zu entwickelnde System läuft bereits.
Man macht sich keine Gedanken darüber, wie das
System initialisiert und terminiert wird. Man
konzentriert sich darauf, welche Informationen von
wo nach wo durch das System fließen.

System hat Schnittstellen mit seiner Umwelt.


Schnittstellen können Datenquellen und -senken sein

Umwelt besteht für das System aus Informations-


quellen und Informationssenken.

Speicher sind Hilfsmittel zur Ablage von


Informationen. Informationen können hineinfließen
oder herausgelesen werden (siehe Pfeilrichtungen).
Senke

Funktionen transformieren den ankommenden


Datenfluss in den abgehenden.

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 20


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Datenflussdiagramm - Beispiel Betriebliche Informationssysteme

verwalte Beantworte
Kunden- Anfragen
daten /F10/ /F90/
en
at
nd

An
d e n
e
un ng

fr
K

Au

ag
ilu
t te

en
sk
i

ün
M

ft
e
Kunde Kunden-
sach-
Kundendatei /D10/ Firmendatei /D20/ bearbeiter

Firma Firmendaten
verwalte
Firmen-
daten /F23/

Mitteilungen

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 21


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Datenflussdiagramm - Syntaktische Regeln Betriebliche Informationssysteme

Beim Zeichnen eines DFD sind folgende syntaktische Regeln einzuhalten

• Ein DFD enthält mindestens 1 Schnittstelle


• Jede Schnittstelle ist i. Allg. nur einmal vorhanden
o Ausnahme: Wird das DFD unübersichtlich, dann kann eine
Schnittstelle mehrfach gezeichnet werden
• Zwischen Schnittstellen gibt es keine Datenflüsse
Falsch:

• Jeder Datenfluss hat einen Namen


o Ausnahme: Datenflüsse, die zu Speichern
führen und keinen Namen haben, beinhalten die gesamten
gespeicherten Daten
• Zwischen Speichern dürfen keine direkten Datenflüsse gezeichnet werden
Falsch:

Falsch:

• Zwischen Schnittstellen und Speichern dürfen


keine direkten Datenflüsse gezeichnet sein

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 22


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Datenflussdiagramm - Semantische Regeln Betriebliche Informationssysteme

• Das DFD beschreibt den Datenfluss, nicht den Kontrollfluss, daher enthält es weder
Entscheidungen noch Schleifen
• Steht eine Schnittstelle für eine Vielzahl von beliebig vielen Instanzen, dann wird sie
als eine Schnittstelle dargestellt, z. B. „Kunde“
• Wird das System durch eine eng begrenzte Anzahl von gleichartigen Schnittstellen
begrenzt, die sich aber durch unterschiedliche Datenflüsse auszeichnen, dann ist eine
getrennte Darstellung sinnvoll
• Eine Schnittstelle ist so zu wählen, dass sie die ursprüngliche Quelle
oder Senke einer Information angibt
• Bei der Wahl einer Schnittstelle wird von der konkreten Ein- oder Ausgabe einer
Information in das System vollständig abstrahiert (z. B. Drucker, Tastatur)
• Ein Datenflussname besteht aus einem Substantiv oder einem Adjektiv und einem
Substantiv
• Datenflussnamen enthalten niemals Verben
• Die Datenflussnamen sind so zu wählen, dass sie nicht nur die Daten, die fließen,
beschreiben, sondern etwas darüber aussagen, was über die Daten bekannt ist (z. B.
statt „Rechnungsnummer“ „gültige Rechnungsnummer“)
• Ein Funktions- bzw. Prozessname besteht aus einem einzigen Aktions-Verb gefolgt von
einem einzigen konkreten Objekt oder einem konkreten Substantiv gefolgt von einem
Aktions-Verb (z. B. „Rechnung erstellen“ oder „erstelle Rechnung“)
• Funktionsnamen repräsentieren Aktionen

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 23


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Übersicht Basiskonzepte Betriebliche Informationssysteme

B as is - F un k ti ona le A rb eits ab lau f In fo rm a ti on sflu s s


k on zep t H ie rac h ie

N o ta ti on F un k tion s ba um G es c h äftsp ro zes s (GP ) D a ten fl uss dia gr am m

»M uster«
de r Ba um h iera ch ie N e t z ( UM L) M u s t er/ Sc h a b lo n e N et z
N o ta ti on

E lem e nte G e s c h ä ft sp ro z es s:
F u n k tion Z ie l: F un kt io n/
GP Spe ic h er
K at eg o rie : P roze s s
Vo rbe ding u n g :
A k te u r N ac h be d ing u n g
Ko m m un ika tio n
(A s so zia tio n) E rfo lg:
S yst e m / N ac h be d ing u n g Da te nflus s Sc h n it ts t e lle
P rod u k t F eh ls c h la g :
«in clude » A k te u re:
A us lö s e n d es E reig n is: Be is p iel :
B esch re ibu n g:
G e n era lis ie ru n g «ex t e n d » 1
B eis pie l: G P-D iag ra m m 2
E rw eit eru n g en :
1a
GP 1 A lt ern a tiv en :
1a
GP 2

«ex t en d »

GP 3

M e th od isc he s to p- do w n Von d en A k te u ren au s g e h en d Von de n Sc h n it t s te llen


Vorg eh en ( ou t s id e-in ) a us g eh e nd ( ou t s id e-in )

R e gel n Z u e in er Va te r- G P -N a m e: G eru n dium o d er Su bst an t iv -Verb Nu r D at en flus s b e s chreib en ,


f kt . n u r fa ch lic h od e r A n fa n g-E n de k einen Ko n tro llflu s s
e n g z u s am m e n - Z u e rst S ta n da rd fa ll, d ann So nd e rfä lle Sch n itt st elle is t Q u elle /Se nke
ge h ö rig e F kt . G e m eins a m es Verh a lt e n: «in clu de »-B ez ieh u n g v on In form at io n en
P ro H iera ch ie- Erw eit ert es Ve rh a lt en : «ext e nd »-B ez ieh u n g Nu r Fu nkt ion en/ Pro zesse
e bene g leic h e s g reifen au f Sch nit ts te llen
A b st rak t io n s - u nd Sp eic her zu
n iv ea u

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 24


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Zusammenfassung Betriebliche Informationssysteme

Die funktionale Sicht auf ein zu entwickelndes Produkt kann durch die
hierarchische Gliederung von Funktionen, angeordnet in einem
Funktionsbaum, beschrieben werden.

Durch Geschäftsprozesse können die Arbeitsabläufe von Akteuren mit dem


Produkt auf einer hohen Abstraktionsebene beschrieben werden. Die
Dokumentation erfolgt in UML durch Geschäftsprozessdiagramme. Zur
Spezifikation einzelner Geschäftsprozesse kann eine Geschäftsprozess-
Schablone eingesetzt werden.

Durch DFD kann der Informationsfluss zwischen Funktionen, Speicher und


Schnittstellen zur Umwelt dargestellt werden.

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 25


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Überblick LE 6 Betriebliche Informationssysteme

LE 5: Funktionale Sicht

LE 6: OO-Sicht

• Lernziele
• Objektorientierte Konzepte
• Zusammenfassung

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 26


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Lernziele Betriebliche Informationssysteme

1. Begriff „Objektorientierte Software-Entwicklung“ kennen


2. Begriffsdefinition an Beispielen: Klasse, Objekt, Attribut,
Operation
3. Klassifikation von Operationen
4. Aufstellen von UML-Diagrammen für gegebene Problemstellung
5. CASE-Werkzeuge einsetzen können

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 27


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Überblick Betriebliche Informationssysteme

Konzepte und Sichten

Strukto-
häufig verwendet

selten verwendet

gramm
(1973)

PAP ET Aktivitäts- Kollabora-


(Programm (Entschei- diagramm tionsdia-
- dungsta- (1997) gramm
ablaufplan) belle)
(1966) (1957)

Funktions- Geschäfts- Daten- Data ER Klassen- Pseudo- Regeln Zustands- Petri- Sequenz-
baum Prozess Flussdia- Dictionary (Entity Re- diagramm code Automat Netz diagramm
(1987) Gramm (1979) Lationship) (1980/90) (1954) (1962) (1987)
(1966) (1976)

Neben- Inter-
Funktionale Arbeits- Informa- Daten- Entitäts- Klassen- Kontroll- wenn-dann Endlicher
läufige aktions-
Hierachie ablauf tions- strkturen typen & strukturen strukturen Strukturen Automat
Strukturen Strukturen
fluss Beziehungen
Objekt- Algorith- Regel- Szenario-
Funktionale Sicht Datenorientierte Sicht Zustandsorientierte Sicht
orientierte mische basierte basierte
Sicht Sicht Sicht Sicht

LE5 LE8 LE6-7 LE9 LE9-10 LE11-12 LE7

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 28


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Querverweis zu anderen Vorlesungen Betriebliche Informationssysteme

Vorlesung Programmierung und Programmiersprachen

Die Vorlesung führt ein in grundlegende Konzepte der objektorientierten


Programmierung und Modellierung am Beispiel von Java.

5.Grundlagen der objektorientierten Systemanalyse


6.Java - Grundbegriffe
7.Klassen, Objekte, Methoden
8.Abstraktionen, Generalisierungen, Schnittstellen
9.Vererbung und Polymorphie
10.Konzepte der Parallelverarbeitung

Wichtigste OO-Konzepte sind : Objekte, Klassen, Attribute, Operationen,


Assoziationen, CRC-Karten, Vererbung, Pakete, Botschaften, Szenarios

Wir behandeln nur CRC-Karten und Pakete da die anderen Konzepte in der oben
genannten Vorlesung schon ausführlich behandelt wurden.

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 29


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
CRC-Karten Betriebliche Informationssysteme

CRC-Karten (Class/Responsibility/Collaboration-Karten) sind Hilfsmittel zur OO-


Modellierung in Form von Karteikarten. Oben auf der Karte wird der Name der Karte
eingetragen. Restliche Karte wird in zwei Teile geteilt. Auf der einen Hälfte werden die
Verantwortlichkeiten (responsibilities) der Karte notiert und auf der anderen die
Kollaborationen (notwendige Klassen)

Class Sparkonto
Responsibilities Collaborations
verwaltet ein Sparkonto Kontobewegung
delegiert Aufgaben an
Kontobewegung

Sparkonto
Kontobewegung
Kontonummer
Habenzins
1
* Betrag
/Kontostand Datum

eröffnen()
einzahlen()
abheben()
gutschreibenZinsen()
auflösen()

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 30


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Pakete Betriebliche Informationssysteme

• Pakete sind Strukturierungsmechanismus und erlauben es, Komponenten zu


einer größeren Einheit zusammenzufassen
• in UML zur Strukturierung beliebiger Modellelemente eingesetzt (Paketdiagramm)

Beispiel: Pakete eines Handelssystems

Handelssystem

Einkauf Verkauf

Abhängigkeit
Lager

Änderung an „Lager“ erfordert evtl. Veränderungen an „Einkauf“ und „Verkauf“

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 31


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Methode zur Paketbildung Betriebliche Informationssysteme

Kriterien: Das Paket soll eine logische Einheit bilden, d.h. es soll so strukturiert sein,
dass es...
1. den Leser durch das Modell führt
2. einen Themenbereich enthält, der für sich allein betrachtet und verstanden
werden kann
3. Klassen enthält, die logisch zusammengehören
z.B. Artikel, Lieferant und Lager
4. für sich entworfen und evtl. implementiert werden kann, wobei eine
wohldefinierte Schnittstelle zur Umgebung vorhanden ist.

Die Schnittstelle soll...


• Vererbungsstrukturen nur in vertikaler Richtung schneiden, d.h. zu jeder
Unterklasse sollen alle Oberklassen in dem Paket enthalten sein
• keine Aggregation durchtrennen
• möglichst wenig Assoziationen enthalten

Die Kopplung zwischen den Klassen – innerhalb eines Pakets – soll möglichst groß und
zwischen Paketen möglichst gering sein
• Jedes potenzielle Paket prüft man auf seine Kopplungseigenschaft.
• Verbesserungen durch Verschieben von Elementen zwischen den Paketen möglich

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 32


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Zusammenfassung Betriebliche Informationssysteme

Objektorientierte SW-Entwicklung basiert auf einer Reihe von


Grundkonzepten. Hier werden verschiedene Diagrammarten benutzt, um
unterschiedliche Aspekte darzustellen. Als grafische Notation wird UML
verwendet.

OO-Konzepte sind gut geeignet für Datenkapselung

Für die Wartbarkeit des entstehenden Software-Systems ist es entscheidend,


dass das Konzept der Vererbung sinnvoll eingesetzt wird

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 33


SWT – funktionale und objektorientierte Sicht
Institut für Informatik
Literatur Betriebliche Informationssysteme

• Balzert H., Lehrbuch der Softwaretechnik, 2. Auflage, Spektrum


Akademischer Verlag,Heidelberg, 2000.

• Booch G., Rumbaugh J., Jacobson I., The Unified Modeling


Language User Guide, Addison-Wesley, 1999
• Booch G., Object-Oriented Analysis and Design with Applications,
2. Auflage, The Benjamin/Cummings Publishing Company,
Redwood City, 1994
• DeMarco T., Structured Analysis and System Specification,
Yourdon Press, Englewood Cliffs, 1979
• Balzert Heide, Lehrbuch der Objektmodellierung – Analyse und
Entwurf, Spektrum Akademischer Verlag, Heidelberg, 1999
• Jacobson I, Ericson M., Jacobson A., The Object Advantage
Buisness Process Reengineering with Object Technology,
Addison-Wesley, Workingham, 1994
• OMG Unified Modeling Language Specification, Version 1.3, June
1999, http://www.rational.com

Prof. K.-P. Fähnrich (nach Balzert) Vorlesung: 5 Seite 34