Im Laufe eines Softwareentwicklungszyklus gibt es zahlreiche Bestandteile aus denen am Ende eine funktionsfähige Software entstehen soll. Für die Darstellung von den einzelnen Bestandteilen einer Software (Klassen) werden heutzutage UML Diagramme verwendet. Es gibt verschiedene Arten von UML Diagrammen. Neben den klassischen Klassendiagrammen, die schon vorgestellt wurden in dem Kapitel „Klassen in Java“  gibt es auch noch zahlreiche andere UML Diagramme. UML Diagramme haben das primäre Ziel den Aufbau und die Funktion der Software klar darzustellen. Daraus resultiert auch eine einfachere Wartung der Software, da man durch die UML Struktur genau feststellen kann welche Bestandteile der Software betroffen sein könnten. Aber nun erst einmal zu den UML Diagrammtypen welche primär anzutreffen sind:

  • Anwendungsfalldiagramm (zeigt Beziehungen zwischen Akteuren und Anwendungsfällen)
  • Klassendiagramm (zeigt Klassen und deren Verknüpfung untereinander –> bereits bekannt)
  • Verhaltensdiagramme
  • Implementierungsdiagramme

 

Im Folgenden wird genau auf die UML Diagrammtypen eingegangen und ihre Funktion in einem Softwarezyklus erklärt. UML Diagramme spielen vor allem in der Objektorientierten Programmierung eine große Rolle, da die UML Diagramme auf die Beziehungen der Objekte untereinander genauer eingeht und diese anschaulich für alle Entwickler aufzeigt. Die UML Struktur ermöglicht dadurch ein besseres Verständnis der Entwickler für die Software. Zusätzlich ist auch eine bessere Kommunikation unter den Entwicklern möglich. 

Das Klassendiagramm ist das meistverwendete UML in der Objektorientierten Entwicklung und bildet hierbei die Basis für die Programmstruktur. Es stellt Klassen in einem System, Attribute und Vorgänge sowie die Beziehung zwischen den einzelnen Klassen dar. Klassen werden gruppiert, um Klassendiagramme zu erstellen, wenn große Software-Systeme als UML dargestellt werden sollen. Wenn du wissen willst wie man Klassendiagramme erstellt schaue nochmal in das Kapitel „Klassen in Java“.

Nun werden wir genauer auf das Anwendungsfalldiargramm eingehen. Unter einem Anwendungsfall versteht man eine Menge von Aktivitäten eines Software-Systems aus der Sicht seiner Akteure, die für die Akteure am Ende zu einem Ergebnis führen. Unter einem Anwendungsfall versteht man in der Business Welt ein Geschäftsprozess oder ein beliebigen Geschäftsfall. Es folgt eine Schritt für Schritt Anleitung wie Du zu deinem ersten eigenen Anwendungsfalldiagramm kommst. Im ersten Schritt zeichnest du einen Kasten der die Systemgrenze aufzeigt. Dann zeichnest du die verschiedenen Akteure als Strichmännchen außerhalb des gezeichneten Kastens. Nun zeichnest du in den Kasten ovale Kreise, die die Anwendungsfälle darstellen. Du kannst dafür auch schon deine vordefinierten Klassennamen verwenden, um die Übersichtlichkeit zu steigern. Im letzten Schritt stellst du nur noch die Beziehungen zwischen den Akteuren und Anwendungsfällen dar. Auch Anwendungsfälle können mit Anwendungsfällen eine Beziehung eingehen.

Was ist ein Akteur?

Akteure nehmen in einer Software bestimmte Rollen ein. Manche Akteure können auch mehrere Rollen einnehmen in einem Programm. Man könnte hierbei an einen Admin denken, der deutlich mehr Rechte hat als alle anderen Akteure (Benutzer) des Softwaresystems. Akteure können auch andere Systemsoftware sein, die von dem Programm Daten abfragt oder das Programm mit Daten versorgt. Akteure bedienen unterschiedliche Anwendungsfälle, die in einem Programm im Laufe einer Benutzung auftreten.

Was sind Anwendungsfälle?

Anwendungsfälle entstehen durch die Benutzung eines Programmes. Diese werden dann von den Akteuren ausgeführt, um ein bestimmtes Ziel zu erreichen. Die Durchführung der Anwendungsfälle erfolgt durch die Kommunikation zwischen dem Programm und den Benutzern/Akteuren. Ein Anwendungsfall wird immer durch einen Akteur gestartet.

Ein Anwendungsfall ist ein vordefinierter funktionaler Anforderungsteil der Software. Man kann hierbei einen Geldautomat als praxisbezogenes Beispiel hinzuziehen. Der Geldautomat wurde von der jeweiligen Bank vordefiniert mit bestimmten Anforderungen, die durch die Benutzung eines Geldautomaten anfallen. Der Geldautomat liefer seinen Akteuren somit immer eines oder mehrere Ergebnisse. Die Folge daraus ist, dass ein Anwendungsfall in der praxis dem Benutzer ein oder mehrere Ergebnisse liefert. Typische Systeme heutzutage umfassen 10 bis 100 verschiedene Anwendungsfälle. Außerdem kann ein Akteur neben mehreren Rollen auch an mehreren Anwendungsfällen beteiligt sein.

Das Implementierungsdiagramm

Das Implementierungsdiagramm ist dann sinnvoll, wenn man eine Software auf mehreren Maschinen implementiert. Dieses UML illustriert die Beziehung der Systemhardware mit der Software. Um Dir die Vorstellung eines solchen UMLs zu vereinfachen werden wir die im Nachfolgen zeigen wie man solch ein UML darstellt:

Zu Letzt noch das Verhaltensdiagramm, dass nur eine Überkategorie für die Folgenden Diagramme darstellt.

Das Aktivitätsdiagramm

Das Aktivitätsdiagramm stellt die Ablaufmöglichkeiten eines Software-Systems grafisch dar. Diese Art von UML stellt also einen Kontrollfluss der benutzen Klassen dar. Sie können aber auch die definierten Anwendungsfälle des Anwendungsfalldiagramms wiedergeben. Die Darstellung dieses Diagramms ähnelt der Darstellung eines Baumdiagramm mit diversen Ästen sehr stark. Nun folgt wie beim Anwendungsfalldiagramm eine Schritt für Schritt Anleitung, um Dir das Erstellen eines solchen Diagramms zu erleichtern:

  1. Zeichne einen ausgefüllten Kreis, der den Einstiegspunkt des Anwenders darstellen soll
  2. Nun verbindest du diesen Kreis mit einem abgerundeten Rechteck, das eine Aktivität darstellt
  3. Nun verbindest du alle angelegten Aktivitäten miteinander und wieder die darauffolgenden Aktivitäten. Es können selbstverständlich auch manche Aktivitäten parallel verlaufen.  Du stellst dadurch Schritt für Schritt den Fluss des gesamten Prozesses dar.
  4. Stelle alle Bedingungen mit einer Abzweigung dar, die dann entweder AND, OR oder NOR als Aufschrift hat.