Traceability von Anfang an
- Anforderungen einheitlich beschreiben
- Spuren legen: Die Beziehung zwischen Stakeholdern, ihren Zielen und Anforderungen
- Anforderungen strukturieren: Anforderungsdiagramme nach OMG SysML™
- Noch mehr Spuren legen: Beziehung zu Modellen, die helfen, Anforderungen besser zu verstehen
- Jetzt blicken wir nach vorn: Anforderungen durch Systemelemente erfüllen
Auf unserem Streifzug durch den objectiF Requirements Modeller (jetzt objectiF RM) waren wir das letzte Mal bei Use Cases, Personas und Szenarien angekommen. In unserem 5. Beitrag der 8-teiligen Blogserie kümmern wir uns heute um die Modellierung und Beschreibung von Anforderungen.
Unser heutiges Etappenziel: Anforderungen beschreiben mit Hilfe von Anforderungsdiagrammen der OMG SysML™.
Heute kommen wir zum Kern des Requirements Engineering. Ich zeige Ihnen (teilweise wieder „live“ in kurzen Filmsequenzen), wie Sie mit dem neuen – leider noch nicht ganz fertigen – Tool Anforderungen beschreiben und modellieren. Und Sie werden erleben, wie Sie von Anfang an „Spuren legen“:
- von den Zielen der Stakeholder zu Anforderungen,
- von den Anforderungen zu Modellen, die helfen, Anforderungen besser zu verstehen,
- von den Anforderungen zu zugehörigen Testfällen,
- von den Anforderungen zu Elementen der Systemarchitektur, die die Anforderungen realisieren.
Anforderungen einheitlich beschreiben
Gehen wir ganz an den Anfang eines Entwicklungsprojekts. Nehmen wir an, Sie haben die Stakeholder bereits identifiziert, mit ihnen gesprochen, ihre Ziele in Zieldiagrammen festgehalten und dabei Abhängigkeiten und Zielkonflikte aufgedeckt und gelöst.
Aus den Zielen können Sie bereits einige Anforderungen ableiten. Die Anforderungen erfassen Sie einfach mit dem objectiF Requirements Modeller – und zwar einheitlich per Bildschirmformular. Zu einer Anforderung gehören immer eine ID, die Angabe eines Typs und eine Beschreibung. Dazu kommen die Quelle und Gewichtung, die Abnahmekriterien, Testfälle, eine Risikobetrachtung, Planungsinformationen etc. Sind Sie in-Step-Anwender? Dann kommt Ihnen das sicher bekannt vor. Klar, wir erfinden das Rad hier nicht neu. Und auch das kennen Sie, wenn Sie in-Step einsetzen: Alle Anforderungen werden zentral in einer Datenbank gespeichert, damit alle im Projektteam darauf zugreifen können. Die Ordnerstruktur dafür geben Sie vor.
Spuren legen: Die Beziehung zwischen Stakeholdern, ihren Zielen und Anforderungen
Welche Anforderungen sind aus einem Ziel eines Stakeholders hervorgegangen? In den Zieldiagrammen können Sie die Antwort darauf festhalten. Dazu übernehmen Sie eine Anforderung – per Drag & Drop oder über einen Auswahldialog – einfach in ein Zieldiagramm. Dann stellen Sie eine „derived“-Beziehung zu dem Ziel her, aus dem die Anforderung abgeleitet ist. Traceability beginnt beim objectiF Requirements Modeller also ganz früh. Schauen Sie, so sieht das aus:
Anforderungen strukturieren: Anforderungsdiagramme nach OMG SysML™
Je mehr Anforderungen entstehen, umso schwieriger ist es, Zusammenhänge zu erkennen und sich zu orientieren: Hier sind grafische Mittel hilfreich. Mit dem objectiF Requirements Modeller können Sie in Anforderungsdiagrammen festhalten,
- welche Anforderungen durch Verfeinern auseinander hervorgegangen sind und
- welche Anforderungen voneinander abgeleitet wurden.
Dazu modellieren Sie «contains»- bzw. «derive»-Beziehungen zwischen Anforderungen. Außerdem können Sie in Anforderungsdiagrammen «verify»-Beziehungen abbilden. Sie zeigen, welche Testfälle zu einer Anforderung definiert sind.
Noch mehr Spuren legen: Beziehung zu Modellen, die helfen, Anforderungen besser zu verstehen
In Anforderungsdiagrammen geht noch mehr. Stellen Sie sich vor, Sie haben eine funktionale Anforderung abgeleitet, sind aber unsicher, ob Sie die Anforderung vollständig beschrieben und richtig verstanden haben. Deshalb blicken Sie noch einmal aus Anwendersicht auf die geforderte Funktion und erstellen Sie ein Anwendungsfalldiagramm. Das Anwendungsfalldiagramm können Sie im Anforderungsdiagramm referenzieren und über eine «refines»-Beziehung mit der Anforderung verbinden. Das Anwendungsfalldiagramm wird in einer Thumbnail-Darstellung in das Anforderungsdiagramm übernommen. Ein Klick darauf – und Sie sind auch schon im Anwendungsfalldiagramm. Sie können sich das nicht so richtig vorstellen? Ich habe es für Sie aufgezeichnet:
Jetzt blicken wir nach vorn: Anforderungen durch Systemelemente erfüllen
Parallel zum Verfeinern und Präzisieren der Anforderungen können Sie mit dem objectiF Requirements Modeller die Systemarchitektur entwerfen, die die Anforderungen realisieren soll. Ein Systemelement, das modelliert wurde, um eine Anforderung zu erfüllen, verbinden Sie durch eine «satisfy»-Beziehung mit der Anforderung. Im Anforderungsdiagramm wird dann automatisch ebenfalls festgehalten, durch welches Systemelement die Anforderung erfüllt ist. Ich zeige es Ihnen am Beispiel eines SysML™-Blockdefinitionsdiagramms. Es zeigt die Komponenten eines Systems in ähnlicher Notation wie ein UML®-Klassendiagramm:
Sie merken schon: Es gibt noch einiges zu erkunden. Die Systemmodelle sind einen genaueren Blick wert. Und dann ist da noch die Auswertung der Ergebnisse der Anforderungsanalyse. Also demnächst geht es weiter. Ich hoffe, Sie sind wieder dabei.
Diskutieren Sie mit.