Skip to content

Latest commit

 

History

History
382 lines (223 loc) · 12.3 KB

ke03.md

File metadata and controls

382 lines (223 loc) · 12.3 KB
recall
header

Welche Diagramme dienen der Funktionsmodellierung?

Anwendungsfalldiagramme

Welche Diagramme dienen der Ablaufverhaltensmodellierung?

Interaktionsdiagramme

  • Sequenzdiagramme
  • Kollaborationsdiagramme

Was ist eine Akteur in der UML?

Eine Abtraktion eines menschlichen oder maschinellen Benutzers in einer bestimmten Rolle gegenüber einem System

Wie werden Akteure in der UML dargestellt?

Strichmännchen mit Namen den Akteurs unter dem Symbol

Was ist ein Anwendungsfall?

Eine in sich abgeschlossene Teilfunktionalität des Anwendungssystems

Wie werden Anwendungsfälle in der UML dargestellt?

Ellipsen mit Namen des Anwendungsfalls

Wie werden die optionalen Systemgrenzen in einem Anwendungsfalldiagramm dargestellt?

Rechteck mit Systemnamen um die Anwendungsfälle (Akteure außerhalb)

Welchem Schema folgt die textuelle Erfassung eines Anwendungsfalls in der UML?

use case
  actors
  precondition
  main flow
  alternative flow af1
  alternative flow af2
  ...
  alternative flow afn
  postcondition
  exceptional flow ef1
  postcondition
  ...
  exceptional flow efn
  postcondition
end

Wie unterscheiden sich alternative flow und exceptional flow?

Jeder alternative flow hat die gleiche Nachbedingung wie der main flow, jeder exceptional flow hat eine eigene

Was ist ein Szenario?

Ein konkreter Ablauf eines Anwendungsfalls

Welche Zusammenhänge können zwischen Anwendungsfällen modelliert werden?

include und extend (und Generalisierung)

Was ist eine include-Beziehung?

Eine bedingungslose Erweiterung eines Anwendungsfalls um einen anderen

Wie wird eine include-Beziehung in der UML dargestellt?

gestrichelte Linie mit offenem Pfeil vom Basisanwendungsfall zum inkludierten Anwendungsfall mit Vermerk «include» in der Mitte des Pfeils

Was ist eine extend-Beziehung?

Eine bedingte / optionale Erweiterung eines Anwendungsfalls um einen anderen

Wie wird eine extend-Beziehung in der UML dargestellt?

gestrichelte Linie mit offenem Pfeil vom Erweiterunganwendungsfall zum Basisanwendungsfall mit Vermerk «extend» in der Mitte des Pfeils, ggf. Erweiterungspunkt in () und Bedingung in []

Was ist ein extension point / Erweiterungspunkt?

In der textuellen Beschreibung von Anwendungsfällen kann mit extention points eine bedingte Erweiterung eines Anwendungsfalls um einen anderen beschrieben werden

Wie wird ein extension point / Erweiterungspunkt im Anwendungsfalldiagramm dargestellt?

horizontale Trennung der Ellipse eines Anwendungsfalls, Name des Erweiterungspunkt in der unteren Hälfte

Wie wird eine extend-Beziehung textuell beschrieben?

extend relationship
  base
    <Name des Anwendungsfalls>
  extensionPoint
    <Name des Erweiterungspunkts>
  extension
    <Name des erweiternden Anwendungsfalls>
  condition
    <Bedingung wann die Erweiterung stattfindet>

Wie wird die Generalisierung / Spezialisierung von Anwendungsfällen in der UML dargestellt?

durchgezogene Linie zum allgemeineren Fall mit geschlossener, nicht ausgefüllter Spitze

Was ist ein Mechanismus?

Ein partielles Klassendiagramm, das die an einem Anwendungsfall beteiligten Klassen darstellt. Der Anwendungsfalls selbst ist als gestrichelte Ellipse dargestellt und mit gestrichelten Linien mit den Klassen verbunden

Wozu dient die Modellierung von Anwendungsfällen?

Anforderungsermittlung, Verständigung mit dem Auftraggeber / Benutzer

Was ist der Sinn von Interaktionsdiagrammen?

Beschreiben den Ablauf von Funktionen und präzisieren die Semantik, zeigen wie Klassen zusammenarbeiten

Welche Interaktionsdiagramme bietet die UML?

  • Sequenzdiagramme
  • Kollaborationsdiagramme

Was ist die Lebenslinie eines Objekts im Sequenzdiagramm?

Eine vertikale gestrichelte Linie unterhalb des Rechtecks eines Objekts. Sie symbolisiert die Lebensdauer eines Objekts.

Wie wird der Aufruf einer synchronen Operation eines Objekts durch ein anderes im Sequenzdiagramm dargestellt?

durchgezogener Pfeil mit geschlossener, ausgefüllter Spitze. Name der Operation am Pfeil

Wie wird der zeitliche Ablauf von Nachrichten in einem Sequenzdiagramm deutlich gemacht?

Je weiter unten ein Pfeil liegt, desto später im Ablauf findet diese Operation statt

Was ist Selbstdelegation?

Eine Nachricht eines Objekts an sich selbst

Wie werden bedingte Operationen im Sequenzdiagramm dargestellt?

in [] am Pfeil vor dem Namen der Operation

Wie werden Iterationen für einzelne Operationen im Sequenzdiagramm dargestellt?

[counter:=from..to] operationsName

Wie werden Iterationen für eine Menge von Operationen im Sequenzdiagramm dargestellt?

Rechteck um die betreffenden Operationen, unten links Iterationsausdruck

Wie wird das Erzeugen von Objekten im Sequenzdiagramm dargestellt?

Pfeil auf das Objektsymbol (Rechteck / Stereotyp-Symbol) mit Aufruf der Klassenmethode erzeuge()

Wie wird das Zerstören von Objekten im Sequenzdiagramm dargestellt?

Pfeil auf die Lebenslinie, die dort (oder weiter unten) mit einem großen Kreuz terminiert wird (es können Nachrichten zwischen dem Nachrichteneingang von zerstöre() und dem Kreuz vom zerstörten Objekt abgesetzt werden)

Wie nennt man die Gesamtheit aller Pfeile in einem Sequenzdiagramm?

Interaktion

Was beschreibt eine Interaktion?

Den konkreten Ablauf einer Funktion der Anwendung

Wie kann man nähere Beschreibungen des Ablaufs in ein Sequenzdiagramm einbringen?

Kommentare am linken Rand auf Höhe der Operation, die sie beschreiben

Was sind synchrone Nachrichten?

Nachrichten, bei denen die dienstnutzende Instanz auf den Abschluss der Operation wartet

Wie kann "Beschäftigung" eines Objekts im Sequenzdiagramm verdeutlicht werden?

Aktivierungsbalken

Wie kann der Abschluss einer aufgerufenen Operation im Sequenzdiagramm dargestellt werden?

getrichelter Pfeil mit offener Spitze vom aufgerufenen Objekt zum aufrufenden Objekt

Was sind asynchrone Nachrichten?

Nachrichten bei denen der Dienstnutzer nicht auf den Abschluss der Operation wartet und sich anderen Dingen zuwenden kann.

Wie werden synchrone Nachrichten im Sequenzdiagramm dargestellt?

durchgezogener Pfeil mit geschlossener, ausgefüllter Spitze

Wie werden asynchrone Nachrichten im Sequenzdiagramm dargestellt?

durchgezogener Pfeil mit offener Spitze

Wie sehen Kollaborationsdiagramm aus?

Wie Objektdiagramme, aber mit nummerierten Pfeilen an den Assoziationen, die Nachrichten zwischen den Objekten darstellen

Wie wird der zeitliche Ablauf in einem Kollaborationsdiagramm verdeutlicht?

Nummerierung der Pfeil zwischen den Objekten

Wie wird eine Nachricht in einem Kollaborationsdiagramm dargestellt?

kurzer durchgezogener Pfeil mit ausgefüllter Spitze zwischen Objekten

Wie werden neue erzeugte Objekte im Kollaborationsdiagramm markiert?

{new} unter dem Namen im Rechteck

Wie werden zerstörte Objekte im Kollaborationsdiagramm markiert?

{destroyed} unter dem Namen im Rechteck

Wie werden nur zeitweilig existierende Objekte im Kollaborationsdiagramm markiert?

{transient} unter dem Namen im Rechteck

Welche Schemata für die Nummerierung von Nachrichten im Kollaborationsdiagramm gibt es?

  • Ordinalzahlen (einfach Durchnummerieren)
  • hierarchische Dezimalnotation (1.5.2 ist die zweite Operation innerhalb der fünften Operation während der ersten Nachricht)

Wie unterstützen Sequenzdiagramme die Anwendungsfälle?

Anwendungsfallbeschreibung meist sehr textuell, unübersichtlich und nicht allzu präzise, damit Anwender / Kunde den Inhalt auch versteht. Aus dem Sequenzdiagramm wird hier das Zusammenspiel von Klassen deutlicher. Wenn möglich gering detaillierte Sequenzdiagramme zur Beschreibung eines Anwendungsfalls erstellen

Wozu dient ein Zustandsdiagramm?

Darstellung aller Zustände (Attributkombinationen) eines Objekts und die Übergänge und Aktionen zwischen den Zuständen

Was ist ein Zustand?

Die Abstraktion einer Menge von Zustandskombinationen in denen sich ein Objekt vergleichbar verhält

Wie wird ein Zustand in der UML dargestellt?

abgerundetes Rechteck mit Namen des Zustands in der Mitte

Wie verhalten sich gleich abgebildete Zustände zueinander?

  • kein Bezeichner: unterschiedliche Zustände
  • gleicher Bezeichner: gleicher Zustand

Was ist ein Eregnis?

Eintreten eines Sachverhalts zu einem bestimmten Zeitpunkt mit vernachlässigbarer Zeitdauer

Welche vier Ereginisse werden in der UML unterschieden?

  • Aufruferereignis (CallEvent)
  • Änderungsereignis (ChangeEvent)
  • Zeitereignis (TimeEvent)
  • Signalereignis (SignalEvent)

Was ist ein Aufrufereignis (CallEvent)?

Empfang einer synchronen oder asynchronen Nachricht, die zur Ausführung einer Operation führt

Was ist ein Änderungsereignis (ChangeEvent)?

  • Objektänderungen wie erzeugen, zerstören oder verbinden
  • Benutzerinteraktionen
  • Beginn und Ende eines Vorgangs
  • Grenzwerterreichen von Attributen

Was sind Zeitereignisse (TimeEvent)?

Ablauf von Zeitperioden oder Erreichen von Zeitpunkten

Was sind Signalereignisse (SignalEvent)?

Empfang eines asynchron gesendeten Objekts (Beispiel: Exceptions)

Was ist ein reflexiver Zustandsübergang?

Zustandsübergang mit gleichem Ausgangs- und Endzustand

Wie wird ein Zustandsübergang in der UML dargestellt?

durchgezogener Pfeil mit offener Spitze. Name des Ereignisses am Pfeil

Was ist ein Zustandsdiagramm mathematisch gesehen?

gerichteter Graph

Was ist eine Wächterbedingung?

ein prädikatenlogischer Ausdruck, der sich auf Parameter eines Ereignisses oder den Zustand eines Objekts bezieht und so Zustandsübergange an Bedingungen koppeln kann

Wie werden Wächterbedingungen in Zustandsadiagrammen der UML dargestellt?

in [] hinter dem Ereignisnamen

Was ist eine Aktion im Zustandsdiagramm?

Eine Operation, die bei einem Ereignis durchgeführt wird

Was ist eine interne Transition

ein Ereignis, das eine Aktion, aber keinen Zustandsübergang auslöst

Was sind Eingangs- und Ausgangsaktionen?

Aktionen, die beim Betreten / Verlassen eines Zustands ausgeführt werden und so nicht an jedem eingehenden / ausgehenden Zustandsübergang notiert werden müssen

Wie werden Eingangs- und Ausgangsaktionen in der UML dargestellt?

entry / Aktionsname bzw. exit / Aktionsname

Wie unterscheiden sich interne Transitionen und reflexive Übergänge?

bei internen Transitionen werden Eingangs- und Ausgangsaktionen nicht ausgeführt. Bei einem reflexiven Übergang die Ausgangsaktion, dann die Aktion des Zustandsübergangs, dann die Eingangsaktion

Wie lautet die vollständige Beschriftung eines Zustandsübergangs?

Ereignis [Wächterbedingung] / Aktionsfolge ^ Sendeaktion

Was ist eine Sendeaktion?

Das Versenden einer Nachricht in der Form Zielausdruck.Nachrichtenname(Argumente) bei einem Zustandsübergangs. Zielausdruck ist ein Objekt / Menge von Objekten / Gesamtsystem

Was ist ein Initialzustand?

Startpunkt eines Zustandsdiagramm mit genau einem ausgehenden Pfeil. Dieser Zustandsübergang wird ausgeführt und damit implizit das Objekt erzeugt (keine Wächterbedingung, kein Ereignis)

Was ist ein Terminalzustand?

Zustand nach der Zerstörung eines Objekts, kann mehrere im Zustandsdiagramm geben. Sie haben nur eingehende Pfeile.

Wie wird ein Initialzustand in der UML dargestellt?

ausgefüllter schwarzer Kreis

Wie wird ein Terminalzustand in der UML dargestellt?

schwarz gefüllter Doppelkreis

Was sind zusammengesetzte Zustände (Zustandsdiagramm)?

Hierarchische Darstellung von Zuständen in einem Über-Zustand. Zusammengesetzte Zustände haben stets einen Initialzustand

Wie werden zusammengesetzte Zustände in der UML dargestellt?

großes abgerundetes Rechteck um einige Zustände

Was bedeutet ein Pfeil vom Rand eines zusammengesetzten Zustands zu einem inneren Zustand?

Dieser Pfeil beschreibt den Zustandsübergang durch ein Ereignis, das von jedem inneren Zustand aus beschritten werden kann.

Wo endet ein Zustandsübergang der auf den Rand eines zusammengesetzten Zustands führt?

Startzustand im inneren des zusammengesetzten Zustands