Zielmodellierung Melanie Langermeier Inhalt • Zielmodelle • Definitionen • Zielverfeinerung und –abstraktion • Arten von Zielen • Qualitätssicherung • Zielmodellierung und Systementwurf 2 Definitionen Problemorientiert Requirements Engineering Reverse Engineering Lösungsorientiert • Probleme: Ziele oft intensional, Konflikte zwischen Zielen • -> Konkretisieren, Präzisieren und Formalisieren von Zielen • -> Strukturierung: Eigenschaftsnetz, Zielbaum 3 Zielverfeinerung und – abstraktion Unterschied zwischen Problem und Lösung herausarbeiten Zielverfeinerung: Anforderungserhebung (“Wie?”) •Vom Ziel zur Anforderung zur Systemspezifikation •Problemabgrenzung, Systemabgrenzung •Gültigkeit und Sinn von Vorgaben und Annahmen prüfen!! •Tracing von Zielen: Zielbaum KAOS Zielabstraktion: Begründungserhebung (“Warum?”) •Erfassung von Domänenwissen durch Wozu-Fragen •Aus welchen Zielen sind Anforderungen herzuleiten, welche aus Anforderungen rekonstruierten Zielen erweitern den Gestaltungsspielraum 4 Arten von Zielen 5 Qualitätssicherung • Ziele hinsichtlich Konflikte untersuchen • Insbesondere bei feineren Zielen, konkreten Anforderungen Überprüfung nach den Kriterien der IEEE • Überprüfung mit Zielbäumen möglich • Ermöglichen Strukturierung hinsichtlich der IEEE Kriterien • Identifizieren Konflikte zwischen Zielen Beziehungen zwischen Zielen Unabhängig keit Konflikt Unterziel Ergänzen sich Sind Alternativ • Können mit Logik erfasst werden • Darstellung in Zielbäumen: Als Verweise oder durch Gruppierung 6 Zielmodellierung Vorgehen Zielmodellierung (typischerweise Top Down): •Ziele erfassen (über Interessensgruppen mittels Viewpoints) •Ziele bewerten (Kosten/Nutzen, ROI, Risiken) •Ziele priorisieren, abstimmen, festschreiben •Ziele zu konkreten Anforderungen und Annahmen verfeinern • Bewerten, verfeinern, strukturieren • Vollständig, präzise und konsistenz formulieren •Abstraktion zu begründeten Ziele und Vorgaben Bewertung von Lösungen nach Zielen •Metrik (“Stiftung Warentest” –Methode) Z1 Z2 Z3 L1 ++ + o L2 - o + 7 Zielmodellierung und Systementwurf Vorgehen: Ziel und Systemzerlegung • RE für das Gesamtsystem • Zerlegung des Gesamtsystems in Teilsysteme mit Spaltung und Erweiterung der Zielbäume für das Teilsystem-RE • Teilsystem-RE: Anforderungen für Teilsysteme ableiten (Architektur berücksichtigen) Zielverfeinerung <-> Subsystemzerlegung •Allg. Zielbäume lassen einen fließenden Übergang zwischen Problem und Lösung zu •Wie weit wagt man sich in den Entwurf der Systemarchitektur und des Datenmodells vor, um Ziele oder konkrete Anforderungen formulieren zu können? 8 Verständnisfragen • Was sind die Probleme mit Zielen? • Wie kann ich mit diesen Problemen bei Zielen umgehen? • Wofür und in welchen Schritten ist Domänenwissen notwendig? • Abgrenzung Zielabstraktion und Zielverfeinerung. • Abgrenzung Problemorientierung und Lösungsorientierung. 9 Klausurfrage I Woher kommen Ziele und welche Probleme werden mit der Zielmodellierung adressiert ? Adressierte Probleme: Zielherkunft: •Explizite, abstimmbare, bewertbare Ziele •Analyse von Zielen •Dokumentierter Entscheidungsweg zwischen Zielen und Lösungsansatz (Als Reihe von Anforderungsbegründungen) •Unterscheidung zwischen Problemstellung und Lösungsansätze: •Vermeidung von zu starker Lösungsorientierung •Systematische Anforderungserhebung •Im wesentlichen: Stakeholder •Kunde, Nutzer, Helpdesk Mitarbeiter, Geschäftsleitung •Risikogetrieben •Marketing/Vertrieb •Gesetzgeber 10 Klausurfrage II Welche Aufgaben erfüllen Zielbäume? Wozu werden Zielbäume verwendet? •Konflikte zwischen Zielen identifizieren •Strukturierung der Prüfung der Ziele nach den Kriterien der IEEE (Konsistenz, Vollständigkeit, Korrektheit, …) •Mehrstufiger, fließender Übergang zwischen Problem, abstrakter und technischer Lösung möglich •Zerlegung und Tracing von Zielen und Anforderungen •Zusammenhänge und Schwierigkeiten erkennen •Zielbaum ermöglich das Aufbauen eines Netzwerkes der Möglichkeiten für Ziele 11