Methoden der Funktionsmodellierung

Download Report

Transcript Methoden der Funktionsmodellierung

Prozess- und Funktionsmodellierung
Marc Schwärzli SS 2011
Systeme, Funktionen, Prozesse, Objekte
Mit Systemorientierung wird versucht durch Kenntnisse
über Systemzusammenhänge zu einer exakteren
Beschreibung der Systemteile und deren
Zusammenhänge zu kommen.
• Ein System ist eine Menge von Elementen zwischen denen eine
Beziehung besteht.
• Elemente sind nicht weiter zerlegbar, isolierte Elemente existieren
nicht.
• Input eines Elements ist die Summe der Einwirkungen durch andere
Elemente
• Der Output ist die Summe der Einwirkungen auf andere Elemente
2
Kennzeichen eines Systems
• Systemgerenzen teilen das System von
anderen Teilsystemen und der Umwelt ab
• Systemelemente sind Bausteine des Systems
• In- und Output sind konkrete Erscheinung der
Wechselwirkung der Systemelemente
• Systemzweck ist Grund der Existenz des
Systems.
3
4
Komplexität von Systemen in Abhängigkeit vom
Abstraktionsgrad
• Bei umfangreichen Beziehungen steigt der
Komplexitätsgrad, deshalb wurde die Theorie
großer Systeme entwickelt.
5
Große Systeme
Systeme mit einer großen Anzahl an Elementen, und/
oder komplizierten Elementen und komplexen
Wechselwirkungen werden große Systeme genannt.
• Entwurfsprinzipien:
–
–
–
–
–
–
–
–
–
–
–
Optimalität
Reduktion der Komplexität
Arbeitsteilung
Wiederverwendbarkeit
Automatisierung
Integration
Dekomposition und Komposition
Trennung von Funktion und funktionserfüllender Struktur
Strukturdisziplinierung
Modularität (große Objekte werden als austauschbare Module gestaltet).
Abstraktion (Bei Entwurf Fokus auf wesentliche Elemente)
6
Struktur des Systems
Bilaterale Verbindung der Elemente kennzeichnet die
Struktur der Elemente.
• Die strukturelle Verbindung bleiben für
definierte Zeiträume weitgehend konstant.
• ZB hierarchische Struktur einer Organisation
bleibt gleich, obwohl Mitarbeiter wechseln.
Prozesse
Je nach zu erfüllender Aufgabe gehen die Elemente
zeitweilige Beziehungen ein, die als Folge mehrstelliger
Relationen einen Prozess kennzeichnen.
Funktion
Um in einer Struktur einen entsprechenden Platz ausfüllen zu können,
muss das Element eine Dienstleistung anbieten, die auch als Service
oder Funktion bezeichnet wird.
• Elemente müssen über weitere Funktionen
verfügen, um mehrstellige Relationen in
Prozessen zur Erfüllung ihrer Aufgabe eingehen
können.
• ZB ein Gruppenleiter muss anleiten können, jedes
Mitglied muss kommunizieren können, um den
Informationsdurchlauf zu sichern.
Objekte
Ein Objekt ist eine strukturelle Zusammenfassung von Elementen und
Relationen.
• Diese können zeitlich und örtlich veränderliche
Zustände einnehmen, um Prozesse realisieren zu
können.
• Funktionalität eines Objekts ist die Menge der
Funktionen, die von einem Objekt ausgeführt
werden kann.
• Funktionalität stellt somit die
Reaktionsmöglichkeit eines Objekts auf bestimmte
Bedingungen dar.
Systemanalyse, -entwicklung, - anwendung
In der Systemanalyse resultieren unterschiedliche Vorgehensweisen
aus verschiedenen Sichten auf das System.
• Datensicht:
– Betrachtungsgegenstand sind die Daten die entstehen, existieren oder
vergehen und mit anderen Systemen ausgetauscht werden können.
• Funktionssicht
– Betrachtungsgegenstand sind Funktionen als Handlungseinheiten zur
Erreichung eines Zieles.
• Prozesssicht
– Prozesse als Handlungsabläufe zur Veränderung der definierten Zustände von
Systemen und deren Bestandteilen.
• Objektsicht
– Objekte sind komplexerer Natur als Systemelemente
– Objekte sind Gegenstände der Realität, die ein System bilden und im System
miteinander in Beziehung stehen.
– Objekte können physischer Natur sein, wie zB Kunden, Lager oder Artikel oder
aber auch immaterielle Gegenstände sein, wie Prozesse, Relationen oder
Überlegungen.
Vorgehensweise bei der Systemanalyse Vorgehensmodell
Ziel ist eine allgemeine gesicherte Vorgehensweise zu finden.
•
•
•
•
•
•
1. Problemstellung
2. Istanalyse
3. Sollkonzept
4. Entwicklung
5. Integration
Sind Personen beteiligt, so sollten Sie von Anfang bis
Ende einbezogen werden.
• Im Sinne einer systematischen Arbeitsweise ist ein
begleitendes Controlling erforderlich.
Das Phasenmodell
Das Phasenmodell ist eine weitere mögliche Vorgehensweise zur
Systemanalyse, -entwicklung und -anwendung
•
1. Vorschlagsphase
– Formulierung der Aufgabenstellung, der Ziele; Voruntersuchungen, Grundsatzentscheidungen.
•
2. Definitionsphase
– Ist-Analyse, Systemabgrenzung, Festlegung der Ziele
•
3. Konzeptphase
– Fach- und Datenverarbeitungskonzept, Prüfung auf Integration und Zielkonformität,
Entwicklung und Bewertung von Alternativen, Durchführbarkeitsstudien,
Wirtschaftlichkeitsnachweis, Verifikation, Auswahlentscheidung, Realisierungsplan.
•
4. Entwurfsphase
– Verfeinerung des Realisierungsplanes, Datenorganisation, Detailentwurf
•
5. Realisierungsphase
– Programmierung von Standardanwendungen, Programm- und Systemtests, Schulungen,
Stammdaten, Probe
•
6. Implementierungsphase
– Systemeinführung, Bestandsdaten, Verbesserung des Betriebsverhaltens.
•
7. Wartungsphase
– Stabilisierung, Optimierung, Anpassung.
Objektorientierte Vorgehensweise
Ziel der Objektorientierung ist es ein System nach dem
Baukastenprinzip zu organisieren um so hohe Flexibilität, Effizienz,
und Wiederverwendbarkeit zu sichern.
• Objekte sind Informationsträger die einen
zeitabhängigen Zustand besitzen und je nach Zustand
auf eingehende Nachrichten reagieren. Sie verfügen
über Attribute und Methoden.
• Attribute sind Eigenschaften, die Objektzustände
beschreiben.
• Methoden sind Verhaltensmuster eines Objekts in Folge
eines Nachrichteneingangs.
• Klassen sind Mengen von Objekten mit mindestens
einem gemeinsamen Attribut/ Methode.
Objektorientierte Vorgehensweise –
Weitere Eigenschaften von Objekten
• Zustandsänderungen aufgrund des Sendens und
Empfangens von Nachrichten werden Kommunikation
genannt.
• Vererbung wird der Vorgang bezeichnet bei dem Attribute
von Oberklassen an Unterklassen weitergegeben werden.
– Einfache Vererbung: Attribute/Methoden stammen von einer
Klasse
– Mehrfache Vererbung: Attribute/Methoden stammen von
mehreren Klassen
• Polymorphismus bedeutet, dass verschiedene Klassen den
gleichen Namen für Methoden benutzen, die jedoch bei
verschiedenen Objekten unterschiedliche Reaktionen
auslösen können.
Objektorientierte Vorgehensweise
• Objektorientierte Analyse
– Gliederung in Objekte und Klassen, Modellierung mittels Abstraktion
– Untersuchung der Problemanforderungen
• Objektorientierter Entwurf
– Aufbau einer Objekt- und Systemstruktur (Architektur)
– Kapselung der Objekte  gegenseitige Beeinflussung erfolgt
ausschließlich über den Austausch von Nachrichten
• Objektorientierte Entwicklung
– Umsetzung einer objektorientierten Lösung
– Aufbau eines Systems von Objekten und Klassen
• Objekte kommunizieren mittels Methoden
• Attribute werden nach Regeln zwischen Klassen vererbt
– Nutzung wiederverwendbarer Objekte – Interna sind sekundär, im
Vordergrund stehen Schnittstelle und Verhalten auf Nachrichten
Objektorientierte Vorgehensweise
Die Methode nach COAD/YOURDON zur systematischen
objektorientierten Analyse
• Bildung einer Objektschicht
– Identifizierung der relevanten Objekte
• Bildung einer Strukturschicht
– Darstellung der Beziehungen als Zusammensetzung eines Ganzen und aus
seinen Teilen.
• Bildung einer Subjektschicht
– Einführung einer Hilfsebene, in der zu Objekten Subjekte definiert werden, die
konkrete Abhängigkeiten zu komplexen Subsystemen zusammenfassen.
• Bildung einer Attributschicht
– Zuordnung der Attribute um den Objektzustand und die Abhängigkeiten zu
beschreiben.
• Bildung einer Methodenschicht
– Beschreibung des Objektverhaltens der intern und extern relevanten
Methoden.
Modellierung von
Unternehmen, Prozessen und
Funktionen
Modellierung und Modell
Im Systemtheoretischen Ansatz sind Systeme nicht isoliert, sondern in
Wechselwirkung mit der Umwelt zu sehen.
• Traditionelle Analysetechniken:
– Das Bilden von Vorstellungen über das Ganze
– Prüfen dieser Vorstellungen an Teilen des Ganzen…
Modellierung
Ein Modell ist ein abstraktes System, dass ein anderes (meist reales)
System in vereinfachter Weise abbildet.
• Beispiele:
– Beschreibung eines
Produktionssystems
durch ein Diagramm
– Netzwerkabbildungen
– Simulationen,
Animationen
Merkmale von Modellen
• Abbildung:
– Modelle sind vereinfachte Abbilder der Originale, denen sie lediglich
ähnlich sind.
• Strukturgleiche Modelle nennen sich isomorph
• Strukturähnliche Modelle homomorph
• Verkürzung
– Modelle erfassen nur Merkmale von Originalen, die dem
Modellentwickler wesentlich erscheinen.
– Vom Original können daher bewußt wie unbewußt unterschiedliche
Modelle abgeleitet werden.
– Gibt es Differenzen zwischen zwei Modellen bei identischer
Zielsetzung, so ist die Qualität der Abbildung meist unbewusst
beeinträchtigt worden oder unterschiedlicher Aufwand in der
Entwicklung betrieben worden.
• Pragmatik
– Modelle sollten einen Nutzen stiften, der einen besseren Einblick ins
Original ermöglicht.
Arten von Modellen
• Beschreibungsmodelle
– Zur Darstellung eines Zustandes
• Erklärungsmodelle
– Zur Erläuterung realer Systeme oder von
Hypothesen über reale Systeme.
• Entscheidungsmodelle
– Zur Ableitung bestimmter Aktivitäten zur
Systembeeinflussung.
Klassifizierung von Modellen
• Real- oder Idealmodell
– Das Realmodell berücksichtigt stärker Restriktionen aus
dem Verhalten des Originals.
• Physische, verbale, grafische, formale Modelle
– Formal Formeln und Gleichungen
• Deterministische und stochastische Modelle
– Stochastische Modelle verwenden zumindest eine
Zufallsvariable. Eine Wiederholung eines Modellversuches
unter gleichen Bedingungen muss nicht zum gleichen
Ergebnis führen.
• Statische und dynamische Modelle
– Statische Modelle beziehen sich auf einen Zeitpunkt,
dynamische auf einen Zeitablauf.
Modellentwicklung: Modellierung
• Wesentliche Schritte der Vorgehensweise:
– Auswahl und Bildung des Modells unter Berücksichtigung
der Zielsetzung, der Eigenschaften des Originals und der
konkreten Situation beider.
• Bearbeitung des Modells zur schrittweisen Adaption an
das Original, Durchführung von Modellexperimenten
und –bewertungen.
• Analogieschlüsse zwischen Modelleigenschaften und
Systemverhalten.
• Experimente am Original, um schrittweise die
Modellcharakteristik zu
verbessernSchlussfolgerungen für künftige
Modellierungen.
Vorgehensweise und
Fehlerquellen bei
der Modellbildung
Methoden zur Prüfung der Qualität von Modellen
Mit den nachfolgenden Methoden kann die Gültigkeit bzw die Qualität
von Modellen überprüft werden.
• Verifikation
– Prüfung der verwendeten Daten und ihrer richtigen Anwendung im Modell.
Schrittweise Anwendung im Modell bis zum Ergebnis des Modellexperiments.
•
Kalibrierung
– Angleichung des Modellverhaltens an das Verhalten des Originals unter
gleichen Bedingungen mittels Ergebnisvergleich Änderung der
Modellparameter
• Sensitivitätsanalyse
– Empfindlichkeit der Ergebnisschwankungen durch Parameteränderung 
Darstellung der Abhängigkeit zwischen Modellparameter und
Modellergebnissen.
• Validierung
– Vergleich mit alternativen Methoden oder gleichartiger Originale kann das
Modell für diese Aussagen herangezogen werden.
• Vergleich der Ergebnisse aus Modellexperimenten mit Realdaten.
Unternehmensmodell und
Geschäftsprozessmodellierung
In einem Unternehmensmodell werden Geschäftsbereiche,
Geschäftsprozesse und Organisationsstrukturen eines Unternehmens
abgebildet. Dieses ist wenn vorhanden laufend zu optimierenden.
• Ein Geschäftsprozessmodell ist Teil des Unternehmensmodells. Es
ist Grundlage für die weitere Prozessmodellierung.
• Ein Metamodell ist ein integriertes Modell mit verschiedenen
Sichten oder Submodellen bestehend aus verschmolzenen
separaten Modellen.
• Die oberste Ebene eines Metamodells besteht aus den:
– Geschäftsbereichen
– Organisationsstrukturen
– Geschäftsprozessen
Geschäftsprozessmodellierung
• Ausgangspunkt eines Unternehmensmodells
sind die Funktionen (zB Vertrieb, Leitung, …)
innerhalb eines Unternehmens.
• Anschließend werden die Prozesse festgelegt,
die diesen Funktionen entsprechen.
• Abwechselnde Prozess- und
Funktionsmodellierung ist bei komplexen
Systemen üblich.
Geschäftsprozess und Prozessmodellierung
• Aus dem Modell des
Geschäftsprozesses werden
mittels der Prozessmodellierung
die einzelnen Prozessmodelle
abgeleitet.
• Beispiel
– Objekt Vertrieb
(Funktionsbaustein)
Prozessmodell und Funktionsmodellierung
Das Prozessmodell ist die Basis für die Funktionsmodellierung, das
Funktionsmodell wiederum ist Grundlage für die Datenmodellierung.
• Funktionen sind ein Verlauf von Aktivitäten
zur Erreichung eines definierten Zieles.
Ziel der Funktionsmodellierung
Ziel der Funktionsmodellierung ist es Problemstellungen in
Unternehmen in beherrschbare abgegrenzten Subsystemen
aufzulösen, die durch Schnittstellen miteinander verbunden sind.
• Durch Komplexreduzierung wird die Beherrschbarkeit
großer Aufgabenstellungen erreicht, da Systeme sonst:
– schwer überschaubar sind
– wachsende Fehlerraten aufweisen
– unzureichend beherrschbar sind
• Ergebnis der Komplexreduzierung ist:
–
–
–
–
Teilaufgaben sind leichter zu lösen
Beziehungen der Lösungselemente werden transparenter
Durch getrenntes Lösen der Teilaufgaben sinkt die Fehlerrate
Gesamtlösung entsteht sukzessive durch Lösen der Teilaufgaben
Inhalt und Ergebnis der
Funktionsmodellierung
Inhalt der Funktionsmodellierung die einzelnen Funktionen zu
modellieren und in einer Struktur anzuordnen.
• Das Ergebnis der Funktionsmodellierung als Beschreibung
– der Zusammensetzung der Systeme aus Funktionen als aktive
Komponenten.
– des inhaltlichen Zusammenwirkens und der Abhängigkeit der
Funktionen über Schnittstellen.
– Anforderungen an die Ausführungen und Wirkungen der
einzelnen Funktionen.
– die zeitlichen Abhängigkeiten zwischen den Funktionen
– der Entscheidungs- und Steuerkompetenz gegenüber
nachfolgenden Funktionen.
Funktionsmodell und Datenmodellierung
Datenmodellierung hängt von den Unternehmensprozessen- und
Funktionen ab, beschränkt sich aber auf Schnittstellen der jeweiligen
Funktionen und den In- und Output der Daten.
Übungsfragen
Nennen Sie Ziele der Komplexreduzierung im Rahmen der
Funktionsmodellierung?
Welche möglichen Ergebnisse der Funktionsmodellierung kennen Sie?
Mit welchen Methoden kann die Gültigkeit bzw. die Qualität von
Methoden geprüft werden?
Welche Arten von Modellen kennen Sie?
Methodik der Prozess- und
Funktionsmodellierung
Vorgehensweise der Prozess- und
Funktionsmodellierung
• Erstellung des Prozessmodells
– Schrittweise Verfeinerung der Prozessmodelle, Darstellung mittels
Netzwerken oder Vorgangsketten.
• Erstellung des Funktionsmodells
– Resultate der Prozessmodellierung werden schrittweise in ein
detailliertes Funktionsmodell überführt.
• Erstellung des Datenmodells
– Das Datenmodell kann parallel mit dem Prozess- und Funktionsmodell
mitwachsen. Mit der Verfeinerung der beiden Modelle zeigt sich wo
Daten entstehen und benötigt werden.
Methoden der Modellierung
• Zu unterscheidende Aspekte sind:
– Objektsicht
– Funktionssicht
– Datensicht
– Prozesssicht
Struktursicht
Prozesssicht
• Objekt-, Funktions- und Datensicht sind
strukturbeschreibend.
• Die Prozesssicht ist ablaufbeschreibend.
Methoden der Modellierung
• Für jede Sicht kann in Anlehnung an ANSI/SPARCArchitektur (Beschreibt ein Datenbanksystem)
zwischen interner, externer und konzeptioneller
Ebene unterschieden werden.
• Externe Ebene
– Sicht des Anwenders
• Interne Ebene
– Realisierung und Implementierung
• Konzeptionelle Ebene
– Beschreibt die Schnittstelle zwischen externer und
interner Ebene
Verschiedene Methoden im Rahmen der Modellierung
• ERM und strukturiertes ERM (SERM)
– Objekt Entity
– Semantischer Zusammenhang Relation
– Wird zur Datenmodellierung verwendet
• Semantisches Objektmodell (SOM)
– Modellierung eines betrieblichen Systems mit Objekten und deren Zielen und
Aufgaben
• CIMOSA (Computer Integrated Manufactoring Open System Archtecture)
– Integrierter Modellierungsansatz für komplexe Systeme in produzierenden
Unternehmen
– Baut auf drei Modellierungsprinzipien auf
• Schrittweise Spezialisierung der Modelle (generische Dimension)
• Gestattet verschiedene Blickwinkel auf das Modell(Dimension der Ansichten)
• Fortschritt der Modellierungsaktivitäten(Dimension der Modelle)
• GRAI-Methode (Graphs with Interrelied Results)
– Nimmt besonders auf das Entscheidungssystem in einem Unternehmen
Rücksicht.
Methoden der Prozessmodellierung
Die Methoden der Prozessmodellierung gehen auf die theoretischen
Grundlagen der Aussagen- und Prädikatenlogik die BOOLEsche Algebra und
Schaltnetze, und auf die Grafen-, Netz, und Automatentheorie zurück.
•
In der Aussagen und Prädikatenlogik wird untersucht, ob die Aussage eines Satzes wahr oder
falsch ist.
–
–
–
•
BOOLEsche Algebra und Schaltnetze
–
–
•
In der Grafentheorie werden die Elemente zweier Mengen in Beziehung gesetzt.
Automatentheorie
–
–
•
Die BOOLEschen Axiome werden reduziert auf wahr oder falsch (0 oder 1)
Die BOOLEsche Algebra ist technisch realisierbar und wird auch als Schaltalgebra bezeichnet.
Grafentheorie
–
•
Bsp.: Wenn Material vorhanden ist UND ein Arbeiter an der Maschine steht kann mit der Bearbeitung
begonnen werden.
Es werden Aussagen über die Elemente einer Menge auf ihren Wahrheitsgehalt untersucht.
Eine Aussage zu mehreren Elementen wird Prädikat bezeichnet.
Ein System wird als Objekt aufgefasst, dass mit Eingangsdaten versorgt wird, innere Zustände annehmen
kann und Ausgaben erzeugen kann.
Geeignet zur Darstellung streng sequentieller Prozesse
Netztheorie
–
–
–
Bietet die Möglichkeit parallele und zeitabhängige Prozesse darzustellen.
Wird vor allem im Planungsbereich eingesetzt.
ZB CPM-Methode, Petrinetze.
Methoden in der Funktions- und Prozessmodellierung im
Vergleich
Methoden der Prozessmodellierung in
der Softwareentwicklung
Methoden der prozessorientierten
Systementwicklung
•Datenflussmodelle
•Petrinetze
•Hierarchy-Input-Process-OutputDiagramme
•Neuronale Netze
•Jackson-Diagramme
•Vorgangskettendiagramme
•Programmablaufpläne
•Ereignisgesteuerte ProzesskettenDiagramme (EPK)
•Management Information Dataflow
System (MIDAS)
•Struktogramme
Petrinetze
Petrinetze sind mathematische Strukturen, die als gerichtete Graphen
über Bedingungsknoten und Ereignisknoten verfügen.
• Bedingungen beschreiben den aktuellen Zustand des Systems
• Ereignisse sind der Übergang zwischen den Bedingungen
•Petrinetze kennzeichnen sich durch
•Lebendigkeit
•Sicherheit
•Deadlock
•Eignen sich zur Modellierung
technischer und informeller Systeme mit
parallel laufenden Prozessen.
• Sind alle Eingangsstellen mit einer Markierung belegt, kann die Transition
schalten.
• Beim Schalten wird eine Eingangsmarkierung entfernt und an jeder
Ausgangsstelle genau eine Marke hinzugefügt.
Vorgangsketten
In Vorgangsketten werden Vorgänge logisch und organisatorisch
verknüpft. Dargestellt werden die Vorgangsketten in einem
Vorgangskettendiagramm.
• Vorgangsketten können objektorientiert modelliert
werden logische Vorgangsketten werden mittels
Objekten dargestellt
• Prozessmodellierung mittels Vorgangsketten kann auch
mit einem Spaltendiagramm dargestellt werden.
– Dadurch können leicht Medienbrüche erkannt werden
– Redundanzen werden erkennbar
– Das Zusammenwirken der Organisationseinheiten wird
offenkundig
– Reihung der Vorgänge, falsche zeitliche wie logische Ordnung
ist leicht erkennbar.
EPK – Ereignisgesteuerte Prozesskette
Sind Vorgangsketten in denen prinzipiell eine Funktion durch ein
Ereignis gestartet wird und nach Beendigung ein neues Ereignis
vorliegt.
• Sind Vorgangsketten die aber formalen Vorgaben unterliegen.
EPK
•
•
•
•
•
Ereignisse und Funktionen wechseln sich ab.
Jede EPK beginnt und endet mit einem Ereignis.
Aus und in jede Funktionen läuft nur ein Kontrollflusspfeil.
Jedes Objekt muss mit einem Kontrollflusspfeil verbunden sein
Durch Konnektoren verzweigte Teilabläufe müssen durch gleichartige
Konnektoren wieder zusammengeführt werden.
• Direktverbindung von 2 Konnektoren sind erlaubt.
• Nach einem Ereignis darf kein
oder, Xoder-Konnektor stehen.
Methoden der Funktionsmodellierung Funktionsbäume
Funktionsbäume basieren auf der Graphentheorie und eignen sich
besonders zur Darstellung genereller Funktionszusammenhänge.
Schnittstellen, Funktionsinterna und Ausführungskonditionen können
allerdings nur über Modellerweiterungen dargestellt werden.
• Funktionsbäume können nach unterschiedlichen Kriterien
aufgebaut werden.
– Objektorientierte Funktionsbäume
• Objekt wird durch verschiedene Verrichtungen verändert.
– Prozessorientierte Funktionsbäume
• Reihenfolge stellt gleichzeitig eine zeitliche Abfolge der Anwendung dar.
– Verrichtungsorientierte Funktionsbäume
• Objekte in Funktionen mit der gleichen Verrichtung werden verändert.
Funktionsbäume
Methoden der Funktionsmodellierung HIPO-Diagramme
Die Hierarchy-Input-Prozess-Output-Methode hat vor allem für
informelle Systeme in Verbindung mit Prozess- und
Funktionsmodellierung Bedeutung.
• Kompletter
Aussagewert bezüglich
der
Funktionshierarchie.
• Bezüglich der Prozesse
nur relativ allgemeine
Informationen
Methoden der Funktionsmodellierung – Die strukturierte
Analyse (SA)
Die SA enthält Beschreibungselemente, die Relationen zwischen
Funktionen determinieren, wodurch die Verbindung zur
Prozessmodellierung erleichtert wird.
• Schrittweises Top-Down-Zerlegen der Funktionen bis
Elementarfunktionen durch eine Prozessspezifikation näher
zerlegt werden können.
• SA umfasst 3 sich ergänzende Beschreibungsmethoden
– Datenflussdiagramme
• Darstellung des Datenflusses zwischen den Funktionen
– Data Dictionary
• Dokumentation und Verwaltung der Daten
– Prozessspezifikation
• Inhalte der Elementarfunktionen und der bei den Datenflüssen vorkommenden
Prozessen.
Methoden der Funktionsmodellierung – Structured Analysis
and Design Technique (SADT)
SADT basiert auf Diagrammen die aus Pfeilen und Rechtecken
bestehen.
• Kästchen stehen für Objekte als Tätigkeiten oder Daten
• Pfeile für das Fließen von Daten, die Angabe von
Bedingungen, Voraussetzungen und Einflussgrößen.
• Seiten des Kästchens:
– Linke Seite: Inputseite für die Daten
– Rechte Seite: Outputseite für die Daten
– Obere Seite: Input von Größen zur Steuerung und Regelung der
Funktionsausführung (Constraints)
– Untere Seite: Mechanismus – Input von Hilfsmitteln zur Unterstützung
der Funktionserfüllung
SADT
Die duale Darstellung von Tätigkeiten in einem Teilmodell (Aktigramm)
und Daten in einem Teilmodell (Datagramm) bietet die verbesserte
Möglichkeit der Konsistenzprüfung.
Prinzip der
Modellierung nach
SADT:
Nachteile:
•Zeitliche Dimensionen sind
nicht darstellbar
•Pfeile haben keine Beziehung
zu den Implementierungsbedingungen der fließenden
Daten
•Interne Abläufe können nicht
bis zu den internen
Programmstrukturen
heruntergebrochen werden.
Komplexe modellorientierte Architekturen und Sprachen –
Systemarchitekturen mittels Modellen.
• Object Management Group, OMG
• Architecture for a Connected World
• Ziel ist die Schaffung eines allgemeinen Architecturrahmens für
objektorientierte Anwendungen
• Weiterentwicklung zu Rahmenspezifikationen wie MDA, UML, MOF,
CWM, XML Meta-Data Interchange (XMI)
• Model Driven Architectur (MDA)
• Bildet den Rahmen, um von einem plattformunabhängigen Entwurf
zu einem spezifischen plattformabhängigen Modell zu gelangen.
• Basisbegriffe (MDA)
• System, Model, Model Driven, Architecture, View Point, View,
Platform, Application, Pervasive Service.
Sprachanwendungen für die Modellierung – UML
Erfolgt die gesamte Modellierung in UML, dann kann die
Programmerstellung bzw. die Codegenerierung automatisiert werden.
• UML ist als Sprache nicht als Methode zu sehen.
• Objekte Elemente mit Identität, Struktur und
Verhalten
• Objekte haben Eigenschaften(Attribute – diese
können Werte annehmen) und können zu Klassen
zusammengefasst werden.
UML
Begriffe der Objektorientierung
Fachbegriff
auf Englisch
Bedeutung
Object
Object
Nützliches mit Identität, Struktur und Verhalten
Klasse
Class
Objekte mit gleicher Struktur, Verhalten
Abstraktion
Abstraction
Wesentliches Merkmal in Bezug auf den Zweck
Kapselung
Encapsulation
Nur notwendige Informationen werden gezeigt
Geheimnisprinzip
Information Hiding
Details bleiben versteckt
Aggregation
Aggregation
Informationen über das ganze Objekt, bzw Teile
Generalisierung
Generalization
Gemeinsamkeiten mit anderen Objekten
Spezialisierung
Specialization
Besonderheiten eines Objekts
Vererbung
Inheritance
Spezialisierte Objekte erben die gemeinsamen
Eigenschaften
Modelle in UML
• Arten von Diagrammen
• Statische Diagramme
• Dynamische Diagramme
• Funktionsdiagramme
• Es müssen nicht alle Diagramme eingesetzt werden
• UML-Diagramme
• Strukturdiagramme - Organisation
• Verhaltensdiagramme – Handlungsweise des Systems
• Interaktionsdiagramme – Wechselseitige Beziehungen
Klassifikation von UMLDiagrammen
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Klassendiagramm
Komponentendiagramm
Kompositionsstrukturdiagramm
Einsatzdiagramm
Objektdiagramm
Paketdiagramm
Aktivitätsdiagramm
Anwendungsfalldiagramm
Zustandsdiagramm
Interaktionsdiagramm
Sequenzdiagramm
Kommunikationsdiagramm
Interaktionsüberblicksdiagramm
Zeitdiagramm
Hauptanwendungen von UML
• Modellierung
– Beschreibung der realen Welt
• Design
– Entwurf konstruktiver Lösungen
• Implementierung
– Einbindung der Lösung in ein Informationssystem
•Vorgehen bei der Anwendung von UML:
•Auswahl einer Methode
•Auswahl eines UML-Tools
•Ausbildung des Personals
Übungsfragen
• Welche Diagrammgrundtypen werden bei
UML unterschieden?
• Welche Hauptanwendungen für UML sind
denkbar?
• Auf welche theoretischen Grundlagen gehen
die Methoden der Prozessmodellierung
zurück.
Übungsaufgabe 1
• Ein Unternehmen möchte den Prozess der
Warenannahme organisieren.
– Nach der Warenlieferung erfolgt die Prüfung der
Lieferunterlagen
– Sind die Lieferunterlagen fehlerhaft wird dies auf dem
Lieferschein dokumentiert
– Anschließend wird die Lieferung auf Beschädigungen hin
kontrolliert
– Bei Beschädigungen werden diese auf dem Lieferschein
dokumentiert
– Dann wird dem Lieferanten die Lieferannahme bestätigt,
die Ware eingelagert und der Warenannahmeprozess
beendet.
• Stellen Sie den Vorgang als EPK-Diagramm dar.
Lösung
•Das EPK-Diagramm beginnt
und endet mit einem Ereignis
•Ereignisse und Funktionen
wechseln einander ab
•Durch Konnektoren
verzweigte Abläufe werden
durch gleiche Konnektoren
wieder zusammengefügt