Anforderungen verwalten
Anforderungen verwalten
Inhalte dieser Lerneinheit
Zweck und Definition von Attributierungsschemata kennen
Wichtige Attributtypen für Anforderungen kennen
Sichten auf Anforderungen können und anwenden
Vorgehen zur Priorisierung von Anforderungen kennen
Techniken zur Priorisierung von Anforderungen können und anwenden
Nutzen der Verfolgbarkeit von Anforderungen kennen
Klassen von Verfolgbarkeitsbeziehungen können und anwenden
Repräsentationsformen von Verfolgbarkeitsbeziehungen können und anwenden
Die Versionierung von Anforderungen können und anwenden
Die Bildung von Anforderungskonfigurationen können und anwenden
Die Bildung von Anforderungsbasislinien können und anwenden
Die Bedeutung von Anforderungsänderungen kennen
Aufgaben und Vertreter des Change-Control-Board kennen
Aufbau eines Änderungsantrages für Anforderungen können und anwenden
Klassen von Änderungsanträgen können und anwenden
Vorgehen zur Bearbeitung von Änderungsanträgen können und anwenden
Die Wichtigkeit von Anforderungsmessung kennen.
Attributierung von Anforderungen
Um die Anforderungen an ein System über den gesamten Lebenszyklus des Systems hinweg verwalten zu können, ist es notwendig, die Informationen zur Anforderung als Attribute möglichst strukturiert zu erfassen. Die Definition der Attributstruktur für Anforderungen erfolgt über ein Attributierungsschema, das entweder tabellarisch oder in Form eines Informationsmodells definiert werden kann.
Typische Attribute sind:
Identifikator
Name
Beschreibung
Quelle
Stabilität
Risiko
Priorität
Die "rechtliche Verbindlichkeit" kann ebenfalls anhand eines Attributes als zusätzliche Information zur Anforderung gespeichert werden.
Attributierungsschemata werden dabei häufig projektspezifisch auf Basis bestimmter Rahmen-bedingungen definiert bzw. angepasst. Hierzu gehören:
Spezifische Merkmale des Projekts
Vorgaben seitens des Unternehmens
Vorschriften des Anwendungsgebiets
Randbedingungen des Entwicklungsprozesses
Sichten auf Anforderungen
In der Praxis zeigt sich, dass die Anzahl der Anforderungen in Projekten und die Zahl der Abhängigkeiten zwischen diesen Anforderungen stets steigen. Um die Komplexität der Anford-erungsbasis für die einzelnen Projektmitarbeiter beherrschbar zu halten, ist daher der reduzierte Zugriff und somit das Filtern von Anforderungen in Abhängigkeit von der Verwendung unerlässlich. Es werden zwei Ausprägungsformen der Sichtenbildung unterschieden:
Selektive Sichten: Darstellung einer Teilmenge der Attributwerte von über definierte Selektionskriterien ausgewählten Anforderungen.
Verdichtende Sichten: Darstellung verdichteter Informationen zu den über definierte Selektionskriterien ausgewählten Anforderungen.
Priorisierung von Anforderungen
Anforderungen werden zu verschiedenen Zeitpunkten in verschiedenen Aktivitäten nach unter-schiedlichen Kriterien priorisiert. Die Vorbereitung der Priorisierung von Anforderungen basiert auf einer einfachen Systematik:
Bestimmung der Ziele und Randbedingungen der Priorisierung
Bestimmung der Priorisierungskriterien
Bestimmung der relevanten Stakeholder
Auswahl der zu priorisierenden Artefakte
Auf Grundlage dieser Festlegungen werden dann eine oder mehrere Techniken zur Priorisierung ausgewählt und die eigentliche Priorisierung durchgeführt. Zu den Priorisierungstechniken zählen:
Ranking und Top-Ten-Technik
Ein-Kriterium-Klassifikation
Kano-Klassifikation
Wiegers’sche Priorisierungsmatrix
Verfolgbarkeit von Anforderungen
Im Rahmen der Verwaltung von Anforderungen werden Verfolgbarkeitsinformationen von Anforderungen aufgezeichnet, organisiert und gepflegt.
Der Nutzen der Verfolgbarkeit von Anforderungen bezieht sich auf:
Vereinfachung der Nachweisbarkeit
Identifikation von unnötigen Eigenschaften im System
Identifikation von unnötigen Anforderungen
Unterstützung der Auswirkungsanalyse
Unterstützung der Wiederverwendung
Unterstützung der Festlegung der Zurechenbarkeit
Unterstützung der Wartung und Pflege
Hinsichtlich der Verfolgbarkeitsbeziehungen von Anforderungen werden drei Klassen von Verfolgbarkeitsbeziehungen unterschieden:
Pre-Requirements-Specification-Traceability
Post-Requirements-Specification-Traceability
Traceability zwischen Anforderungen
Es sollten nur solche Informationen aufgezeichnet werden, für die eine klare Verwendung existiert. Die Verfolgbarkeitsinformationen von Anforderungen können unterschiedlich repräsentiert werden. Typische Repräsentationsformen sind:
Textuelle Referenzen und Hyperlinks
Verfolgbarkeitsmatrizen
Verfolgbarkeitsgraphen
Versionierung von Anforderungen
Die Versionierung und Konfiguration von Anforderungen ermöglicht es, über den Lebenszyklus eines Systems oder Produktes hinweg, spezifische Entwicklungsstände von Anforderungen und Anforderungsdokumenten verfügbar zu halten. Die Versionsnummer einer Anforderung besitzt dabei mindestens zwei Bestandteile:
Version
Inkrement
Eine Anforderungskonfiguration fasst eine definierte Menge logisch zusammengehöriger Anforderungen zusammen, wobei jede Anforderung maximal in einer Version in der Anforderungskonfiguration enthalten ist. Die Bildung von Anforderungskonfigurationen wird dabei entlang zweier Dimensionen definiert:
Produktdimension: die einzelnen Anforderungen der Anforderungsbasis
Versionsdimension: die verschiedenen Versionsstände einer Anforderung
Anforderungskonfigurationen besitzen einige typische Eigenschaften:
sachlogischer Zusammenhang der Anforderungen einer Konfiguration
Konsistenz der Anforderungen innerhalb der Anforderungskonfiguration
Eindeutiger Identifikator der Anforderungskonfiguration
Unveränderbarkeit der Anforderungen innerhalb der Anforderungskonfiguration
Grundlage für das Rücksetzen auf frühere Versionen der Anforderungsbasis
Anforderungsbasislinien sind ausgezeichnete Anforderungskonfigurationen, die stabile Versionen von Anforderungen umfassen und oftmals auch Auslieferungsstufen des Systems (Systemreleases) definieren.
Verwaltung von Anforderungen
Über den gesamten Lebenszyklus eines Systems hinweg verändern sich die Anforderungen. Die Änderungen an den Anforderungen werden in einem systematischen Änderungsmanagementprozess verwaltet und bearbeitet. In diesem Änderungsmanagementprozess ist das Change-Control-Board für die Bearbeitung eingehender Änderungsanträge verantwortlich. Die Aufgaben des Change-Control-Boards sind:
Klassifikation eingehender Änderungsanträge
Bestimmung des Aufwands einer Änderung
Beurteilung der Änderungsanträge hinsichtlich Aufwand/Nutzen
Definition neuer Anforderungen auf Basis eingehender Änderungsanträge
Entscheidung über Annahme oder Ablehnung eines Änderungsantrags
Priorisierung der angenommenen Änderungsanträge
Zuordnung der Änderungen zu Änderungsprojekten
Typische Vertreter im Change-Control-Board sind Änderungsmanager, Auftraggeber, Architekt, Nutzervertreter, Qualitätsbeauftragter und Anforderungsingenieur.
Für notwendig erachtete Änderungen von Anforderungen werden in Form von Änderungsanträgen dokumentiert und an das Change-Control-Board übermittelt. Ein Änderungsantrag umfasst dabei mindestens die folgenden Informationen:
Identifikator des Änderungsantrags
Titel des Änderungsantrags
Beschreibung der notwendigen Änderung
Begründung für die Notwendigkeit der Änderung
Datum der Beantragung
Antragssteller
Priorität der Änderung aus Sicht des Antragsstellers.
Es gibt drei Arten von Änderungsanträgen:
Korrektive Änderungen
Adaptive Änderungen
Ausnahmeänderungen.
Das Vorgehen des Änderungsmanagement sieht folgende Tätigkeiten vor:
Auswirkungsanalyse und Beurteilung des Änderung
Priorisierung der Anforderungsänderung
Zuordnung der Änderung zu einem Änderungsprojekt
Kommunikation der Annahme/Ablehnung des Änderungsantrags
Anforderungsmessung
Die Qualität von Anforderungsdokumenten kann anhand von Information aus Anforderungsvalidierung und –verwaltung, wie z.B. Fehler, Attribute, Verfolgbarkeitsbeziehungen oder Änderungen, analysiert werden. Darauf aufbauend können Verbesserungen identifiziert werden. Typische Messdaten sind
Änderungsraten von Anforderungen
Fehler in Anforderungen