UML

"Unified Modeling Language"

UML: ein visuelles Tool

„Ein Bild sagt mehr aus als tausend Worte“, diese Aussage ist wohl eine treffende Beschreibung des Unified Modeling Language (UML). Heutzutage benötigt die komplexe und progressive Welt der Softwareentwicklung bestimmte Tools, wie etwa Graphiken und Diagramme, um Systeme, Prozesse und deren Ablaufe verständlicher zu machen. Dabei sind visuelle Erklärungsmodelle hilfreich.

Eines dieser visuellen Tools ist das UML, eine Modellierungsprache, die einen direkten Bezug zu objektorientierter Analyse und Design hat und aus verschiedenen graphischen Elementen, mit Hilfe welcher unterschiedliche Perspektiven eines Systems und dessen Vorgänge  dargestellt und beschrieben werden, besteht. Es handelt sich also dabei um eine Reihe von Diagrammen, mit welchen man eine Software detailliert beschreiben kann. Des Weiteren kann UML als Kommunikationsmittel innerhalb eines Projektteams dienen.

Welche Vorteile hat das UML?

  • Das Ergründen des Systemverhaltens
  • Das Verstehen der Anforderungen an die Software
  • Das rechtzeitige Erkennen der Fehler im Lebenszyklus
  • Das Präsentieren der Designs
  • Die Kommunikation zwischen den Projektbeteiligten

Daraus lässt sich schließen, dass die UML für das Sotfware Testing geeignet ist.

Setzt man sich mit Software Testing nun näher auseinander, wird schnell klar, dass das UML bei dynamischem Test gebraucht wird. Doch worum handelt es sich beim Dynamischen Test? Der Dynamische Test wird das Objekt eines Programms überprüfen und damit Fehlverhalten aufspüren. Das Blackbox Verfahren gehört neben dem Whitebox-Verfahren zum Dynamischer Test. Im Folgenden wird allerdings nur auf das Blackbox-Verfahren eingegangen.

Das Blackbox-Verfahren: „Der Innere Aufbau des Testobjekts ist nicht bekannt und Testfälle werden aus der Spezifikation abgeleitet“.

In diesem Fall könnten die folgenden UML Diagramme angewendet werden:

Anwendungsfalldiagramm (Use Case): Dieses UML stellt eine bestimmte Funktionalität eines Systems dar. Damit kann man die Beziehungen zwischen verschiedenen Funktionalitäten zeichnen bzw. illustrieren. Diese Art von Diagrammen beschreiben hauptsächlich „Nutzer-System-Interaktionen“.

Ein wichtiges Element dieses Diagramms ist der Akteur (Externe Person außerhalb des Systems)

Siehe Bild 1

(Bildquelle: www.edrawsoft.com/de/uml-introduction.php)

Zustandsdiagramme

Zustandsdiagramme: Dieses UML beschreibt das Verhalten von Objekten und ihren aktuellen Zustand. Der Begriff „Zustand“ bezieht sich nicht nur auf das Verhalten des Objektes, sondern auf die unterschiedlichen Kombinationen der darin enthaltenen Informationen. Die Verwendung dieses Diagramms ermöglicht es den Benutzern zu einem besseren Verständnis des Systemablaufs zu gelangen.

Siehe Bild 2

Zustandsdiagramm(Bildquelle: www.edrawsoft.com/de/uml-introduction.php)

Sequenzdiagramme

Sequenzdiagramm: ist eine Art Interaktionsdiagramm, dessen Ziel es ist, das dynamische Verhalten des Informationssystems zu beschreiben, wobei die Reihenfolge der von den Objekten ausgetauschten Nachrichten hervorgehoben wird.
Es ist wichtig zu wissen, dass das Sequenzdiagramm aus der Beschreibung eines Anwendungsfalls (Use Case) erstellt wird.

Ein Sequenzdiagramm hat zwei Dimensionen: Die vertikale Achse repräsentiert die Zeit und die horizontale Achse repräsentiert die verschiedenen Objekte. Die Zeit wird vom oberen Rand des Diagramms nach unten verschoben.

Siehe Bild 3

Sequenzdiagramm

(Bildquelle: www.edrawsoft.com/de/uml-introduction.php)

UML Diagrammtypen

Es gibt insgesamt 14 UML Diagramme, die nicht nur den oben genannten Zwecken dienen:

Fazit

Zusammenfassend steht hinter UML die Idee, den Entwurfsprozess so zu organisieren, dass die am Projekt beteiligten Personen diese Entwurfsanalyse sehr leicht verstehen können. Dem Kunden wird also mithilfe von UML eine Entwurfsplanung vorgelegt, die seine Wünsche detailliert beschreibt.

Bei Software Testing ist es grundlegend, alle Details eines Projektes gewissenhaft zu analysieren und zu berücksichtigen. ProgrammiererInnen und TesterInnen sollten die Ideen der Kunden verstehen und diese aktiv erfassen, um deren Projektwünsche realisieren zu können.

Wie am Anfang erwähnt, hat sich die IT - bzw. die Software-Welt so schnell in den letzten Jahren entwickelt, sodass man Tools wie etwa das UML benötigt, um mit diesem Fortschritt mithalten zu können.

Referenzen:

  • Basiswissen Softwaretest, Kapitel 5: Dynamische Test, 5.1 Blackbox-Verfahren, Seite 114.
  • Basiswissen Softwaretest, Kapitel 5: Dynamische Test, 5.1.5 Anwendungsfallbasierte Test, Seite 145.

Zurück

Zum Seitenanfang navigieren