Vorlesung 3 + 4 Flashcards
Lebenszyklus von Anwendungssystemen (8)
1) (strategische) Planung
2) (Anforderungs-)Analyse
3) (Software-) Entwurf
4) Implementierung
5) Testen
6) Einführung
7) Betrieb
8) Wartung und Pflege
Zwecke der Modellierung (8)
1) Unterstützung bei der Software Entwicklung
2) Dokumentation und Präsentation von Daten, Funktionen, Prozessen sowie von Information-und Anwendungssystemen
3) Grundlage für die Integration von Daten, Funktionen, Prozessen etc.
4) Unterstützung der Konfiguration und Einführung von Standardanwendungssoftware oder BPM-Systemen
5) Analyse & Optimierung von Geschäftsprozessen
6) Einführung von Prozesskostenrechnung
7) Simulation
8) Lösen von (math. Optimierungs-)Problemen/ betirebswirtschaftlichen Planungsproblemen
Welche Aufgaben erfüllt die UML
Anwendungssystem oder dessen Bestandteile sollen spezifiziert, visualisiert, entworfen und dokumentiert werden
- dient weiterhin zur Modellierung fachlicher Aspekte und kann teilweise auch außerhalb der Anwendungsentwicklung eingesetzt werden
- universeller Anspruch
- verbreiteter Industriestandard
Meta Modell der UML
- gliedert sich in verschiedene Modellierungstechniken
- alle UML Diagramme werden in einer einheitlichen meta-Sprache, der Meta Object Facility definiert
- für den Datenaustausch und die Verarbeitung von UML Modellen gibt es ein Metadatenaustauschformat: XMI
Four Layer Metamodel Architecture -M3
Meta-Meta Modellebene: Die Infraksturktur/ Notation um Meta-Modelle zu beschreiben
Definition der Sprache zur Meta-Modellierung
Beispiel: MetaClass, MetaAttribute,MetaOperator
Four Layer Metamodel Architecture -M2
Meta-Modellebene
Instanz der Meta Meta-Modellebene; Sprache zur Modellierung von Modellierungssprachen
Beispiel: MOF, Class, Attribute, Operator
Four Layer Metamodel Architecture -M1
Modellebene Instanz der Meta-Modellebene; Modellierugnssrpachen für bestimmte Anwendungsdomänen Class: Customer attribute: name Operator: order
Four Layer Metamodel Architecture -M0
Objektebene
Instanzen der Modellebene
Objekte
Beispiel: Max Meir, Waldweg 28 etc
Abbildung statisch-struktureller Aspekte (Diagramme)
1) Klassendiagramme
Darstellung der Klassen und deren Beziehungen (Assoziation und Vererbungshierarchien)
2) Objektdiagramme
Darstellung der Zusammenhänge zwischen Objekten und deren Zustand
3) Komponentendiagramme
Architektur von Softwaresystemen
4) Verteilungsdiagramme
Darstellung der Verteilung der verschiedenen Komponenten auf unterschiedliche Ressourcen
5) Use-Case Diagramme
Benennen der Aufgabe/Anwendungsfälle eines Anwendungssystems
6) Aktivitätsdiagramme
Beschreiben von Aktivitäten, Funktionen oder Prozessen
7) Interaktionsdiagramme
Beschreibung des Nachrichtenaustauschs zwischen Objekten
8) Zustandsautomaten/ Statecharts
Beschreiben der Zustände und Zustamndsänderungen in einem System
UML Klassendiagramme- Bestandteile (5)
1) Klassifikation –> Bildung von Klassen
2) Generalisierung / Spezialisierung –> Vererbung, Bildung von Ober-und Unterklassen
3) Assoziation –> Beziehung zwischen Objekten einer oder mehreren Klassen
4) Aggregation –> Spezialfall der Assoziation, Objekte sind Bestandteile eines anderen Objekts
5) Komposition –> Spezialfall der Assoziation, Aggregation, Abbildung einer existenziellen Abhängigkeit
durch was werden Attribute beschrieben? (5)
1) Sichtbarkeit: + (public) # (protected) - (private)
2) Name
3) Datentyp (oder Klasse)
4) Initialwert
5) Zusicherungen
wie werden Methoden beschrieben?
1) Sichtbarkeit: + (public) # (protected) - (private)
2) Name
3) Parameterliste, Syntax wie bei Attributen
4) Rückgabewert
wie werden Klassenattribute/Klassenmethoden dargestellt?
Klassenattribute/Klassenmethoden gehören nicht zu einem Objekt, sondern zur Menge aller Objekte einer Klasse- werden unterstrichen dargestellt
Was sind abgeleitete Attribute?
abgeleitete Attribute sind Attribute deren Werte aus den Werten anderer Attribute abgeleitet werden können. Die Namen abgeleiteter Attribute beginnen mit einem Flash /
Assoziationsklassen
werden benutzt um Assoziationen mit Attributen und Methoden zu verknüpfen
werden gebildet, wenn es für eine Assoziation Daten und Methoden, die der Beziehung und nicht einer der Klassen zugeordnet werden können (werden in gestrichelter Linie dargestellt)
Generalisierung/ Vererbung, Gültigkeitsbereich
Bei der Vererbung erbt die Substanz Klasse die Eigenschaften und Methoden der Basisklasse
Gültigkeitsbereich muss beachtet werden!
Bei Protected und Public können Methoden und Eigenschaften sowie Daten der Basisklasse direkt angesprochen werden
Wird privat definiert, so wird für ein Objekt der Sub-Klasse der Speicher hierfür reserviert. In der Substanz Klasse müssen die Daten dann über z.B Getter und Setter Methoden, die in der Basisklasse zu definieren sind, angesprochen zu werden
Abstrakte Klassen und Interface
sind Klassen, von denen keine Objekte erzeugt werden können
in Interface werden Methoden definiert, aber nicht implementiert. Sie werden von Klassen implementiert