Alle Wege führen nach Rom – Anforderungen anlegen
Woher kommt eigentlich das oft zitierte Sprichwort “Alle Wege führen nach Rom”?
So manch ein Historiker vermutet, dass es sich auf eine alte Bronzesäule bezieht, die der erste römische Kaiser Augustus im Forum Romanum im Jahr 20 vor Christus aufstellen ließ. Die Säule sollte dabei angeblich als Referenzpunkt dienen, um Distanzen zwischen Rom und den anderen Hauptstädten des weiten römischen Reiches abzustecken. Diese Theorie ist aber nur eine unter vielen – und wahrscheinlicher ist wohl auch, dass es sich lediglich um ein Denkmal zur Selbstverherrlichung handelte…
Wie dem auch sei, das Sprichwort scheint dennoch nie aus der Mode zu kommen – und interessanterweise trifft es auch auf unsere IT-Lösungen für Requirements Engineering zu: objectiF RPM und objectiF RM. Wie das, fragen Sie sich? Heute zeige ich Ihnen verschiedene Routen für das Anlegen von Anforderungen mit unseren Tools.
Eine Anforderung ist bekanntlich eine Eigenschaft oder Bedingung, die ein System oder eine Systemkomponente erfüllen muss. Anforderungen ergeben sich manchmal ganz schnell, zum Beispiel in einem Gespräch mit Ihrem Kunden.
Es gibt viele Möglichkeiten, solche Anforderungen in objectiF RPM & objectiF RM anzulegen. Hierzu stelle ich Ihnen übersichtlich diverse Methoden vor. Und wer weiß, vielleicht lernen Sie noch ein paar kleinere (und größere) Tricks und Kniffe kennen, die Ihnen die Arbeit mit unseren Tools zusätzlich erleichtern.
Also, Wanderstock und Verpflegung dabei? Unsere Reise beginnt in 3…2…1…
Anforderungen anlegen über das Kontextmenü eines Packages
Der offensichtlichste Weg erfolgt über das Kontextmenü eines Packages im Fenster Produkte. Darin zeigt der Produktebaum hierarchisch in Ordnern den gesamten Projektinhalt an – angefangen bei den Anforderungen über Diagramme bis hin zu Abfragen und Dokumenten.
Um Anforderungen anzulegen, öffnen Sie mit einem Rechtsklick das Kontextmenü eines Packages, in dem Sie die gewünschten Anforderungen anlegen möchten. Über Anlegen > Anforderung öffnet sich dann das Anforderungs-Dialogfenster, um Anforderungen wie gewohnt zu editieren.
Anforderungen ableiten über das Kontextmenü eines Anwendungsfalls
Ein Anwendungsfall beschreibt die Funktionalität eines Systems, die ein Akteur ausführen muss, um ein Ziel zu erreichen oder ein Ergebnis zu erhalten – und daran gekoppelt können natürlich auch Anforderungen sein. Sie haben zwei Möglichkeiten, Anforderungen mit dem entsprechenden Anwendungsfall über das Kontextmenü in Beziehung zu setzen:
1) In einem Anwendungsfalldiagramm
2) Über den Anwendungsfall im Package des Produktebaums
In beiden Fällen öffnen Sie mit einem Rechtsklick auf den Anwendungsfall wieder das Kontextmenü und klicken anschließend auf Anforderung > Ableiten.
Im folgenden Dialogfenster geben Sie lediglich noch den Speicherort der Anforderung an und bestätigen mit OK. Anschließend öffnet sich auch hier wieder das bekannte Dialogfenster zum Anlegen einer neuen Anforderung.
Anforderungen ableiten über das Kontextmenü eines Ziels oder einer Anforderung
Wenn Sie in Ihrem Projekt bereits Ziele und Anforderungen angelegt haben, können Sie dazu im Produktebaum oder in einem Anwendungsfalldiagramm, Anforderungsdiagramm oder Zieldiagramm wie zuvor beschrieben ebenfalls über das Kontextmenü Anforderungen ableiten.
Sobald Sie den Befehl ausführen, öffnet sich ein Dialog, über den Sie den Ablageort der Anforderung bestimmen. Im Folgedialogfenster gehen Sie dann wie gewohnt vor, indem Sie der Anforderung alle notwendigen Informationen zuweisen.
Übrigens habe ich noch einen praktischen Tipp:
Ab der Version 5.2 von objectiF RPM können Sie alle Anforderungen eines kompletten Packages auch auf einmal ableiten. Und das mit nur wenigen Klicks. Hierzu nutzen Sie auf einem Package den Kontextmenübefehl Anforderungen > Anforderungen ableiten. Befinden sich weitere Packages mit Anforderungen im ausgewählten Package, werden auch diese Anforderungen abgeleitet, inklusive der ursprünglichen Package-Hierarchie.
Anforderungen anlegen über die Toolbar in einem Diagramm
Eine bequeme Möglichkeit, Anforderungen anzulegen, bietet die Toolbar bei Anwendungsfalldiagrammen, Anforderungsdiagrammen und Zieldiagrammen. Klicken Sie hierzu einfach in der Toolbar auf der linken Seite auf das entsprechende Icon mit dem Befehl Anforderung anlegen. Sobald Sie den Mauszeiger auf die Arbeitsfläche ziehen, haben Sie die Möglichkeit, die Anforderung an einer gewünschten Stelle zu platzieren.
Mit einem Mausklick öffnet sich das Dialogfenster Anforderung anlegen. Anschließend können Sie die Anforderung mittels UML zum Beispiel mit Stakeholdern oder Anwendungsfällen in Beziehung setzen.
Anforderungen anlegen über einen Button in der Themenleiste
Die Themenleiste in objectiF RPM und objectiF RM ist sehr nützlich, da Sie hier häufig benötigte Diagramme, Sichten, Abfragen, Muster und Kommandos für einen schnellen Zugriff zusammenfassen und somit schnell darauf zugreifen können. Standardmäßig wird in einem neuen Projekt immer eine Anforderungen-Themengruppe in der Themenleiste erzeugt. In dieser Themengruppe finden Sie über das Plus-Symbol einen Button, mit dem Sie ganz einfach Anforderungen in Ihrer Domäne anlegen können.
Nachdem Sie im Anforderungs-Dialogfenster alle für Sie notwendigen Informationen eingetragen und im Anschluss mit OK bestätigt haben, wird die Anforderung automatisch in dem damit verknüpften Ordner hinterlegt. Sie können dieses Kommando aber auch ganz nach Ihren Wünschen in anderen Themengruppen der Themenleiste hinzufügen. Wie das funktioniert, zeige ich Ihnen im nächsten Schritt…
Das Kommando „Anforderung anlegen“ manuell in der Themenleiste anlegen
Sie möchten das zuvor beschriebene Kommando zum Anlegen einer neuen Anforderung in einem Themenordner Ihrer Wahl erzeugen? Kein Problem, der Befehl lässt sich schnell und einfach in jedem Themenordner anlegen.
Klicken Sie dazu in der Themenleiste mit einem Rechtsklick auf eine Themengruppe und wählen Sie Anpassen. Es öffnet sich das Dialogfenster Themen bearbeiten. Wählen Sie dort die gewünschte Themengruppe aus, in der Sie den Befehl Anforderung anlegen künftig verwenden möchten. Wenn Sie mit der Maus auf den Ordner zeigen, haben Sie jetzt die Möglichkeit, ein Kommando, einen Link und / oder ein Muster hinzuzufügen.
Klicken Sie auf Kommando hinzufügen. Es öffnet sich das Dialogfenster Kommando anlegen. Hier geben Sie dem Kommando einen semantischen Namen (zum Beispiel Anforderung anlegen). Über Kontext wählen Sie über die […]-Schaltfläche ein Kontextelement an. Das Kontextelement bestimmt, welche Befehle Sie unter Kommando auswählen können und vor allem, wohin das Element gespeichert wird.
Unter Kommando werden Ihnen über das Dropdown-Menü Befehle zum Anlegen für Anforderungen, Testfälle, Anwendungsfälle etc. angeboten. Bitte beachten Sie, dass die Befehle je nach zuvor gewähltem Kontext voneinander abweichen können. Zusätzlich können Sie für das Kommando noch ein beliebiges Icon einfügen. Klicken Sie dazu auf die graue Schaltfläche und wählen Sie eine passende Grafik aus.
Mit OK bestätigen Sie den Dialog und schließen dann das Themen bearbeiten-Fenster wieder. Et voila, Sie haben nun den neuen Befehl Anforderung anlegen im gewünschten Ordner erzeugt. Abgespeichert werden Ihre Anforderungen im zuvor ausgewählten Kontext. Sie können den Kontext aber auch später über die Eigenschaften im Themen bearbeiten-Fenster wieder anpassen.
Anforderungen anlegen über Kommandos in Abfragen
Sie haben nicht nur die Möglichkeit, Kommandos als eigenen Befehl in der Themenleiste anzulegen, sondern auch in Abfragen. Das kann Ihnen auf Dauer ebenfalls eine Zeitersparnis bringen.
Öffnen Sie hierzu mit Rechtsklick das Kontextmenü der entsprechenden Abfrage wie zum Beispiel einer Anforderungsliste, in der Sie künftig das Kommando nutzen möchten. Klicken Sie anschließend auf Bearbeiten. Es öffnet sich das Dialogfenster Abfrage bearbeiten. Klicken Sie dort auf die Registerkarte Kommandos & Muster und dort auf das Plus-Symbol unter Konfigurierte Kommandos.
Es öffnet sich auch hier wieder der Dialog Kommando anlegen. Wie bereits im vorherigen Szenario beschrieben, geben Sie wieder Name, Kontext und Kommando an. Nach Bestätigung mit OK und dem Schließen des Dialogfensters Abfrage bearbeiten, steht Ihnen das Kommando in der oberen Leiste über das neu erzeugte Plus-Symbol zur Verfügung.
Anforderungen per Muster anlegen
Stellen Sie sich vor, Sie haben eine umfangreiche Liste mit Stakeholdern auf Ihrem Bildschirm und wollen für einige noch zusätzliche Anforderungen anlegen. Natürlich können Sie das über das Kontextmenü Ihres Anforderungspackages tun, indem Sie dort – wie eingangs beschrieben – neue Anforderungen anlegen und diese anschließend mit den Stakeholdern in Beziehung setzen. Was halten Sie aber davon, sich diese Schritte zu sparen und den Vorgang stattdessen über wenige Klicks zu bewerkstelligen? Was Sie dafür tun müssen? Lediglich einmalig ein einfaches Muster erstellen!
Muster eignen sich besonders bei Tätigkeiten, die in einem Projekt wiederholt durchgeführt werden. Sie erfüllen den Zweck einer Vorlage, in der spezifische Bestandteile bereits fertig angelegt sind. Die Bestandteile eines Musters können Elemente wie Testfälle, Abfragen und Projektsichten sein – oder eben auch Anforderungen.
Alle projektrelevanten Einstellungen, wie Dokumentvorlagen oder eben Muster werden im Fenster Einstellungen verwaltet, das Sie über das Auge-Symbol öffnen. Bitte beachten Sie: Um das Fenster zu öffnen, benötigen Sie Administratorrechte.
Im folgenden Beispiel erstellen wir ein einfaches Muster für Anforderungen anlegen. Über Weitere anlegen / Muster legen Sie im Musterkatalog ein neues Muster an. Im Dialogfenster Muster bearbeiten geben Sie dem Muster einen Namen. Bei Art des Musters wählen Sie Erweiterung aus. Geben Sie noch eine kurze Beschreibung an, damit weitere Anwender den Zweck des Musters später nachvollziehen können. Bestätigen Sie anschließend, um das Muster zu erstellen.
Dann geben Sie den Inhalt des Musters an:
In unserem Beispiel wären das also ein Stakeholder sowie eine Anforderung. Über das Kontextmenü des Musters können Sie durch Anlegen > Stakeholder bzw. Anlegen > Anforderung beides unverzüglich erzeugen.
Öffnen Sie dann über das Kontextmenü das Stakeholder bearbeiten-Dialogfenster und setzen Sie in der Registerkarte Weitere Eigenschaften bei IsPatternContext ein Häkchen. Damit stellen Sie sicher, dass das Muster nur im Kontext eines Stakeholders mit dem entsprechenden Stereotypen angeboten wird.
Anschließend müssen Sie lediglich den zuvor erzeugten Stakeholder mit der Anforderung in eine Interessiert-Beziehung setzen. Am schnellsten geht das über Drag & Drop, indem Sie im Produktebaum eines der beiden Elemente auf das andere ziehen und die Beziehung im Dialogfenster bestätigen.
Unsere Mustervorlage ist nun fertig und wartet darauf, fleißig angewendet zu werden. Öffnen Sie hierzu Ihre Stakeholderliste oder ein Stakeholderdiagramm und klicken Sie mit Rechtsklick auf denjenigen Stakeholder, für den Sie weitere Anforderungen anlegen möchten. Über Muster anwenden wählen Sie Ihr zuvor erzeugtes Anforderungs-Muster aus und können in einem separaten Dialogfenster bei allen Stakeholdern auf diesem Weg eine Anforderung erzeugen.
Praktisch, oder? Und natürlich sind Muster nicht auf Stakeholder beschränkt. Lassen Sie Ihrer Fantasie einfach freien Lauf.
Anforderungen über „Anforderungen verfeinern“ anlegen
Anforderungen von Kunden sind häufig vielschichtig und bestehen gerne mal aus weiteren Anforderungen. Anforderungen sollten jedoch atomar sein – und sie sind nur dann atomar, wenn sie nicht in weitere Anforderungen aufgespaltet werden können. Daher sollten zu umfassende Anforderungen in weitere Anforderungen zerlegt werden, damit diese beispielsweise im Zeitraum von 1-5 Tagen innerhalb eines Sprints umgesetzt werden können.
Sie können hierzu neue Anforderungen über Verfeinern erzeugen. Gehen Sie dazu folgendermaßen vor:
Wählen Sie in einem Diagramm oder im Produktebaum über das Kontextmenü einer Anforderung den Befehl Anforderung > Verfeinern. Wählen Sie im Folgedialog über die […]-Schaltfläche das Package aus, in das die verfeinerte Anforderung abgelegt werden soll. Ferner können Sie der Anforderung noch einen Stereotyp zuweisen. Bestätigen Sie anschließend mit OK. Im Bearbeitungsdialog geben Sie der verfeinerten Anforderung einen neuen Namen und tragen weitere Informationen ein. Bestätigen Sie erneut mit OK. Das Dialogfenster schließt sich und die neue Anforderung wird im Package angelegt und sofort mit der ursprünglichen Anforderung in eine Enthält-Beziehung gesetzt.
Anforderungen mittels Drag & Drop erstellen und in Beziehung zueinander setzen
Zum Schluss habe ich noch einen nützlichen Tipp für Sie:
Sie haben ein Anwendungsfalldiagramm erstellt und wollen dieses mit bereits angelegten Anforderungen weiter füllen? Sie möchten zwei Anforderungen im Produktebaum miteinander in Beziehung setzen, ohne über das Kontextmenü gehen zu müssen? Sie wollen Varianten einer Anforderung erzeugen?
Nutzen Sie dafür doch einfach mal die im Tool integrierte Drag & Drop-Funktion.
Schieben Sie die entsprechende Anforderung hierzu per Mausklick auf die zu verknüpfenden Anwendungsfälle oder Anforderungen. Oder aber Sie ziehen die Elemente im Produktebaum aufeinander. Und die neue Beziehung ist fast fertig. Es erscheint jeweils nur noch ein Dialogfenster, um die Beziehung zu bestätigen bzw. die gewünschte Aktion zu bestimmen (zum Beispiel Als Teilanforderung hinzufügen). Um Varianten, verfeinerte oder abgeleitete Anforderungen zu erzeugen, ziehen Sie ebenfalls die Anforderung einfach per Mausklick auf das Ziel-Package und es erscheint das Aktionsfenster Welche Aktion möchten Sie ausführen?
Sie sehen also, die Drag and Drop-Funktion ist sehr nützlich.
Fast am Ziel…
So, und damit sind wir auch schon fast in Rom angekommen. Haben Sie trotzdem noch ein wenig Lust auf einen kleinen Abstecher, bevor Sie so langsam im Forum Romanum eintrudeln?
Im Blogbeitrag “Beam them up Scotty” zeigen wir Ihnen die Möglichkeiten des Daten-Imports mit MS Excel oder MS Word, mit dem Sie beispielsweise externe Anforderungen ganz einfach in objectiF RPM und objectiF RM importieren können. Und wenn Sie noch nicht ganz außer Puste sind, zeigen wir Ihnen im Beitrag “Anforderungen direkt aus E-Mails erzeugen”, wie das gelingt. Sehr praktisch, um langwieriges Abtippen „per Hand“ zu vermeiden.
Fazit
Wir hoffen, dass wir Ihnen etwas Erleuchtung und neue Erkenntnisse auf Ihren Weg durch den Anforderungsdschungel mitgeben konnten. Falls Ihnen die eine oder andere Lösung zugesagt hat oder Sie Ideen haben, wo Anforderungen auch noch angelegt werden könnten, hinterlassen Sie uns gerne einen Kommentar. Außerdem können Sie uns natürlich mitteilen, welche der hier vorgestellten Varianten Sie am häufigsten nutzen. Und wer weiß, vielleicht nehmen wir Sie beim nächsten Mal mit auf den Jakobsweg?
Bis dahin freudiges Ausprobieren.
Diskutieren Sie mit.