In diesem Blogeintrag möchte ich ein paar Tipps für das Modellieren von Aktivitätsdiagrammen in der Use-Case Analyse geben.
Zu diesem Zweck nehmen wir ein ganz einfaches Beispiel eines Use-Case Diagramms für ein Mitarbeiterverwaltungssystem. Dieses ist im folgendem Use-Case Diagramm skizziert.
Die Mitarbeiterverwaltung soll zwei Funktionalitäten bieten, an denen die Akteure „Personalmanager“, „Mitarbeiter“ und das „Monatsende“ als Zeitpunkt beteiligt sind.
Wenn wir nun die Use-Cases mittels Aktivitätsdiagrammen detailliert beschreiben wollen, bietet es sich an Aktivitätsbereiche in den Diagrammen zu verwenden. Ein Bereich für das System – die Mitarbeiterverwaltung – und für jeden beteiligten Akteur einen weiteren Bereich. Für den Use-Case „Mitarbeiter einstellen“ könnte das wie folgt aussehen.
Wir sehen, jeder Beteiligte am Systemprozess „Mitarbeiter einstellen“ hat seinen Aktivitätsbereich, in dem die Aktivitäten modelliert sind für die er verantwortlich ist. Dabei werden die Aktivitäten durch die Informationen in das System fließen, auf der Seite des Akteurs modelliert und Informationen, die aus dem System heraus fließen in die Verantwortung des Systems gesteckt.
Schauen wir uns das Diagramm nun genauer an, dann sehen wir, dass es gleich zu Beginn zwei Aktivitäten enthält, die für die Beschreibung des Personalverwaltungssystems vollkommen unnötig sind. Damit sind die Aktivitäten „Personaldaten erfragen“ und „Personaldaten übermitteln“ gemeint. Als unnötig können wir sie deshalb bezeichnen, weil sie für das System überhaupt keine Relevanz haben. Hier ist keinerlei Interaktion mit dem System vorhanden, sondern nur zwischen den Akteuren.
Trotzdem sollte man diese Aktivität hier nicht löschen, da sie durchaus zum Verständnis des Ablaufs und zur Einordnung in die Geschäftsprozesse dienen kann. Ratsam ist es nur diese Aktivität gesondert zu markieren (z.B. durch kursive Schreibweise des Namens oder eine farbliche Unterscheidung).
Halten wir also fest: Selbst bei der Betrachtung der reinen Systemprozesse kann es für das Verständnis der Prozesse nützlich sein, einzelne Schritte der Geschäftsprozesse im Modell mit aufzunehmen.
Eine Sache müssen wir noch ansprechen! Und zwar den Akteur „Zeit“. Ich möchte an dieser Stelle nicht die Sinnhaftigkeit der Zeit als Akteur diskutieren – das wäre wohl ein eigener Diskussions-Blog – sondern die Auswirkungen auf das resultierende Aktivitätsdiagramm zeigen.
Im Aktivitätsdiagramm hat die Zeit als Akteur nämlich eine Sonderstellung. Im Gegensatz zu den anderen Akteuren bekommt die Zeit keinen eigenen Aktivitätsbereich. Die Zeit wird besser in Form eines Ereignisempfängers modelliert. In unserem Fall sähe das Aktivitätsdiagramm für den Use-Case „Gehaltsabrechnung erstellen“ folgendermaßen aus.
Wir sehen das der Ereignisempfänger reicht uns vollkommen aus, da die Zeit sonst nicht weiter an dem Use-Case beteiligt ist. Somit können wir uns einen fast leeren Aktivitätsbereich sparen. Folglich: die Zeit als Akteur benötigt im Gegensatz zu anderen Akteuren keinen Aktivitätsbereich.
Über Anregungen und einen Erfahrungsaustausch zu diesem Thema würde ich mich sehr freuen.
Viel Spaß beim Modellieren.
Carsten Pflug