Verfeinerungsmuster anlegen
Verfeinerungsmuster werden verwendet, wenn innerhalb eines bestehenden Elements untergeordnete (Kindelemente) erzeugt werden sollen.
Beim Erstellen von Mustern stellt sich jedoch oft die Frage, handelt es sich um ein Verfeinerungsmuster oder um ein Erweiterungsmuster? Diese Unterscheidung ist nicht immer auf den ersten Blick eindeutig, aber entscheidend für die korrekte Funktion des Musters. Um die passende Musterart auszuwählen, hilft es, sich zwei Fragen zu stellen:
1. Auf welchem Element(-typ) soll das Muster ausgeführt werden?
2. Soll dieses Element durch das Muster erweitert oder verfeinert werden?
Beispiel 1: Anforderung und Testfall erstellen
Ein Anwender möchte mithilfe eines Musters eine Anforderung und einen Testfall erstellen und beide Elemente miteinander in Beziehung setzen. Beantworten Sie zunächst die zwei Fragen:
Frage 1: Welches Element ist das Kontextelement?
→ ein Package (Es sollen neue Elemente erstellt werden.).
Frage 2: Wird das Package erweitert oder verfeinert?
→ Es wird verfeinert. (Innerhalb des bestehenden Packages werden untergeordnete Elemente (Anforderung und Testfall) erzeugt).
Folglich benötigen Sie für diesen Anwendungsfall ein Verfeinerungsmuster.
- Wählen Sie über das Kontextmenü eines Packages den Befehl Weitere anlegen → Muster.
- Wählen Sie unter Art des Musters Verfeinerung aus und geben unter Stereotyp des Kontext-Elements Package an.
- Speichern Sie den Dialog.
- Legen Sie zu dem Muster folgende Musterelemente an:
- eine Anforderung
- ein Testfall
- eine Beziehung zwischen Anforderung und Testfall
Die Anforderung und der Testfall erstellen Sie über das Kontextmenü des Musters mit dem Befehl Anlegen → Anforderung bzw. Testfall. Bei der Namensgebung können Platzhalter verwendet werden, die immer in geschweiften Klammern deklariert werden. Die Beziehung zwischen beiden Elementen erzeugen Sie, indem Sie ein Element auf das andere ziehen (Drag & Drop).
Das Muster sieht dann so aus:
Hier können Sie nachlesen, wie das Muster über das Kontextmenü eines beliebigen Packages angewendet wird.
Beispiel 2: Package mit Backlogsicht erstellen
Ein Anwender möchte ein Muster verwenden, das ein neues Package erzeugt, in dem sich eine Backlogsicht befindet. Diese Sicht soll außerdem einer vorhandenen Themengruppe zugeordnet werden, damit ein Schnellzugriff möglich ist.
Hier ist die Beantwortung der Frage, ob es sich um ein Verfeinerungs- oder Erweiterungsmuster handelt, nicht ganz eindeutig. Einerseits erweitert das Muster eine bestehende Themengruppe um eine zusätzliche Sicht. Andererseits soll es über das Kontextmenü eines bestehenden Packages aufgerufen werden – das heißt, das bestehende Package wird inhaltlich verfeinert.
Frage 1: Welches Element ist das Kontextelement?
→ ein übergeordnetes Package (Es sollen neue Elemente erstellt werden.).
Frage 2: Wird das Package erweitert oder verfeinert?
→ Es wird verfeinert. (Innerhalb des bestehenden Packages werden untergeordnete Elemente (Package und Backlogsicht) erstellt).
Obwohl das Muster ein neues Package erzeugt, erfolgt dies innerhalb eines bereits vorhandenen Packages. Durch die enthaltene Backlogsicht und deren Zuordnung zu einer bestehenden Themengruppe entsteht eine inhaltliche und strukturelle Verfeinerung des bestehenden Kontexts – keine Erweiterung eines einzelnen Elements.
- Wählen Sie über das Kontextmenü eines Packages den Befehl Weitere anlegen → Muster.
- Wählen Sie unter Art des Musters Verfeinerung aus und geben unter Stereotyp des Kontext-Elements Package an.
- Legen Sie zu dem Muster folgende Musterelemente an:
- ein Package
- eine Sicht
- eine Themengruppe
Das Package erstellen Sie über das Kontextmenü des Musters mit dem Befehl Anlegen → Package. Die Sicht und die Themengruppe legen Sie über das Kontextmenü des Musters mit dem Befehl Weitere anlegen → Themengruppe bzw. Sicht an. Da es sich bei der Sicht um eine Backlogsicht handelt und diese ein Kontextelement benötigt, geben Sie unter Planungskontext ein Package an – und zwar das Package, das Sie eben erstellt haben.
Haben Sie die drei Musterelemente erstellt, öffnen Sie nun den Bearbeitungsdialog der Themengruppe und wechseln in die Registerkarte Weitere Eigenschaften.
- Markieren Sie die Option IsPlaceholder. Durch die Option IsPlaceholder wird die Themengruppe später beim Anwenden des Musters angezeigt, aber nicht angelegt. Die Themengruppe im Muster muss dann durch eine bestehende Themengruppe im Projekt ersetzt werden.
- Damit die Sicht der Themengruppe später zugeordnet wird, klicken Sie die Sicht an und ziehen Sie sie per Drag & Drop auf die Themengruppe. Die Sicht erscheint als Referenz unter der Themengruppe.
Das Muster sieht dann so aus:
Hier können Sie nachlesen, wie das Muster über das Kontextmenü eines beliebigen Packages angewendet wird.