ScholarGate
Assistent

Anforderungsmanagement

Anforderungsmanagement ist die Disziplin des Entdeckens, Analysierens, Dokumentierens, Validierens und Verwaltens dessen, was ein Softwaresystem leisten muss und unter welchen Einschränkungen es betrieben werden muss.

Thema finden mit PaperMindDemnächstFind papers & topics
Tools & resources
Folien herunterladen
Learn & explore
VideoDemnächst

Definition

Anforderungsmanagement ist der systematische Prozess des Erfassens, Analysierens, Spezifizierens, Validierens und Verwaltens der Dienste, die ein Softwaresystem bereitstellen soll, sowie der Einschränkungen seines Betriebs und seiner Entwicklung.

Scope

Dieser Bereich umfasst die Erfassung der Bedürfnisse von Stakeholdern; die Analyse und Verhandlung widerstreitender Ziele; die Unterscheidung zwischen funktionalen und nicht-funktionalen (Qualitäts-)Anforderungen; Spezifikationstechniken, die von natürlichsprachlichen Aussagen bis hin zu formalen Modellen reichen; Validierung durch Überprüfung und Prototyping; sowie das Management von Anforderungsänderungen und die Nachvollziehbarkeit über den gesamten Lebenszyklus hinweg.

Sub-topics

Core questions

  • Wie werden die tatsächlichen Bedürfnisse der Stakeholder entdeckt und disambiguiert?
  • Wie sollen funktionale und nicht-funktionale Anforderungen präzise und dennoch verständlich spezifiziert werden?
  • Wie werden widersprüchliche Anforderungen erkannt, verhandelt und gelöst?
  • Wie werden Anforderungen validiert und bei Änderungen konsistent gehalten?

Key theories

Funktionale versus nicht-funktionale Anforderungen
Anforderungen werden in funktionale Aussagen darüber, was das System tun muss, und nicht-funktionale (Qualitäts-)Einschränkungen wie Leistung, Sicherheit und Benutzerfreundlichkeit unterteilt, die oft das gesamte System betreffen und die Architektur bestimmen.
Zielorientiertes Anforderungsmanagement
Systeme werden anhand von Stakeholder-Zielen analysiert, die in Unterziele verfeinert und in Anforderungen operationalisiert werden, wodurch Begründung, Konflikterkennung und Nachvollziehbarkeit von der übergeordneten Absicht bis zu den Systemfunktionen gewährleistet werden.

Clinical relevance

Anforderungsfehler gehören zu den kostspieligsten Defekten, da sie sich in Design und Code fortpflanzen; rigoroses Anforderungsmanagement reduziert Nacharbeit, stimmt die gelieferte Software mit den Bedürfnissen der Stakeholder ab und bildet die Grundlage für Akzeptanztests und vertragliche Vereinbarungen.

Evidence & guidelines

ISO/IEC/IEEE 29148 spezifiziert Prozesse des Anforderungsmanagements und die Inhalte von Anforderungsspezifikationen, und der Wissensbereich Software Requirements des SWEBOK bietet eine konsensbasierte Referenz.

History

Das Anforderungsmanagement entwickelte sich aus den strukturierten Analysemethoden der 1970er Jahre zu einer anerkannten Teildisziplin in den 1990er Jahren, gekennzeichnet durch spezielle Konferenzen (RE) und Fachzeitschriften, den Aufstieg der ziel- und szenariobasierten Modellierung und eine zunehmende Beachtung nicht-funktionaler Anforderungen und der Stakeholder-Verhandlung.

Debates

Vorausschauende versus emergente Anforderungen
Planungsgetriebene Praktiken bevorzugen die gründliche Spezifikation von Anforderungen vor der Implementierung, während agile Praktiken Anforderungen als emergent betrachten und durch Iteration verfeinern; der Kompromiss hängt von Volatilität, vertraglichen Einschränkungen und den Kosten später Änderungen ab.

Key figures

  • Axel van Lamsweerde
  • Bashar Nuseibeh
  • Steve Easterbrook
  • Michael Jackson

Related topics

Seminal works

  • vanlamsweerde2009
  • nuseibeh2000
  • sommerville2015

Frequently asked questions

Warum sind Anforderungsfehler so kostspielig?
Eine missverstandene oder fehlende Anforderung wird oft erst spät entdeckt, nachdem Design und Code darauf aufgebaut wurden, sodass ihre Korrektur eine Rückabwicklung nachfolgender Arbeiten erfordert; empirische Studien zeigen durchweg, dass die Kosten für die Behebung eines Defekts stark ansteigen, je später er gefunden wird.
Betreiben agile Projekte Anforderungsmanagement?
Ja, aber anders. Agile Projekte erfassen, analysieren und validieren Anforderungen kontinuierlich durch User Stories, Backlog-Verfeinerung und häufiges Feedback, anstatt im Voraus ein großes Spezifikationsdokument zu erstellen.

Methods for this concept

Related concepts