Navigation
FIDA-Blog
Wissen - Success Stories - Whitepaper
newspaper Übersicht chevron_right Software-Entwicklung chevron_right Blog chevron_right Branchenübergreifend
Mann vor einem Computer
Blog

Anforderungsmanagement: Der Schlüssel zu erfolgreichen IT Projekten

Du bist Softwareentwickler und hast gerade ein neues Projekt übernommen. Die Erwartungen der Kunden? Hoch. Die Vorgaben? Noch ein großes Fragezeichen. Dein erster Schritt ist klar: Du setzt dich mit dem Kunden zusammen, um seine Ideen und Ziele zu verstehen – der Grundstein für jedes erfolgreiche Projekt.

Was anfangs noch einfach klingt – „Wir brauchen eine Plattform für unser Unternehmen“ – entpuppt sich schnell als komplexer. Welche Funktionen sind unverzichtbar? Wer genau wird die Software nutzen? Müssen bestehende Systeme angebunden werden? Mit jeder Antwort tauchen neue Fragen auf, und eines wird deutlich: Jeder Kunde hat eine ganz eigene Vorstellung davon, was „die perfekte Lösung“ wirklich bedeutet. Und genau hier setzt Deine Arbeit an.

Ohne eine strukturierte Herangehensweise kann hier schnell Chaos entstehen. Anforderungen, die heute klar erscheinen, können sich später als unvollständig oder missverständlich herausstellen. Anforderungsänderungen können den Entwicklungsverlauf beeinflussen und sogar den Release-Termin nach hinten verschieben.

Eines können wir hier bereits sagen, diese Nachricht hört kein Kunde gern! Doch mit einem guten Anforderungsmanagement oder auch Requirements Management, kannst Du all diese Probleme vermeiden und sicherstellen, dass Dein Projekt ein Erfolg wird.

In diesem Artikel erfährst Du, wie Du Anforderungen und zukünftige Software effizient zusammenträgst, dokumentierst und priorisierst – damit Dein Projekt genau das liefert, was Deine Kunden wirklich brauchen und erwarten.

Was bedeutet Anforderungsmanagement?

In der Produktentwicklung bezeichnet Anforderungsmanagement den strukturierten Prozess der Erfassung, Dokumentation, Analyse, Verwaltung und Abstimmung von Anforderungen an ein Produkt oder ein System. Ziel ist es, sicherzustellen, dass alle Stakeholder ein gemeinsames Verständnis der Anforderungen haben und diese während des gesamten Entwicklungsprozesses nachvollziehbar und kontrollierbar bleiben. Ein effektives Anforderungsmanagement hilft, Missverständnisse zu vermeiden, Risiken zu minimieren und den Projekterfolg zu sichern.

Anforderungsmanagement wird auch gerne als Requirements Management bzw. Requirements Engineering bezeichnet. Requirements Engineers sind daher wichtige Mitglieder eines jeden Projektteams. Sie sorgen für reibungslose Prozesse, indem sie im Team die Aufgabe übernehmen, die Anforderungen an ein Projekt oder ein Produkt so genau wie möglich zu dokumentieren.

Was versteht man unter Anforderungen bei Software?

Es gibt besondere Unterkategorien von Anforderungen, die es vor der Umsetzung eines Software-Projektes zu erörtern gibt. Sie dienen der Unterscheidung, des Zwecks einer Anforderung. Dabei lassen sich funktionale und nicht-funktionale Anforderungen unterscheiden.

Funktionale Anforderungen

Funktionale Anforderungen heißen im Projektgeschäft so, weil sie beschreiben, WAS ein System tun soll. Darunter versteht man gemeinhin, dass sie am Ende konkrete Features vereinbaren, die sich der Auftraggeber als Bestandteil der nächsten Softwareversion gewünscht hat.

Beispiel: Eine Fitness-App soll meine Bewegungen tracken und mir ein Diagramm über meine täglichen und wöchentlichen Aktivitäten zeigen.

Nicht-funktionale Anforderungen

Nicht-funktionale Anforderungen beschreiben, WIE ein System etwas umsetzen soll. Die nicht-funktionalen Anforderungen geben also eher die Rahmenbedingungen und Umstände an, unter denen die funktionalen Anforderungen zum Tragen kommen.

Beispiel: Die Fitness-App soll dabei nur wenig Speicherkapazität meines Smartphones verbrauchen.

Anforderungsmanagement wird in agilen, aber auch nicht-agilen Projekten umgesetzt. Im klassischen Wasserfall-Projektmanagement, das heißt in der nicht agilen Vorgehensweise, müssen Anforderungen vor Start der Entwicklungsarbeit feststehen, da man im Projektverlauf nur schwer noch auf die konkreten Umsetzungsschritte einwirken kann. Im Gegensatz dazu werden im agilen Projektablauf oft nur wenige Anforderungen zu Beginn gesetzt und werden dann erst im Verlauf des Projekts angepasst, ersetzt oder ergänzt. In agilen Projekten können Benutzeranforderungen auch schrittweise umgesetzt und priorisiert werden. Im Gegensatz zum traditionellen Projektmanagement, das oft eine vollständige Spezifikation im Voraus erfordert, ermöglicht die Planung in agilen Sprints eine inkrementelle Entwicklung der Software mit schnellem Feedback.

Wie sehen Anforderungen aus?

Nun stellt sich wahrscheinlich die Frage, wer für das Schreiben von Anforderungen verantwortlich ist und wie diese in der Praxis aussehen. In der Regel hat der Product Owner die Rolle des Requirement Engineers, der die in gemeinschaftlichen Meetings erarbeiteten Spezifikationen in Worte gießt. Dabei kommen oft User Stories zum Einsatz. Eine User Story gibt eine kurze Beschreibung des Anwendungsfalls wieder, in der der Nutzer (englisch: "User") eine Tätigkeit mit einer Funktionalität der Software ausführt, um ein bestimmtes Ziel zu erreichen. Demnach ist die User Story beispielsweise folgendermaßen aufgebaut:

"Ich als registrierter Nutzer der App möchte durch den Klick auf einen Button einen Bestätigungslink per E-Mail bekommen, um mein Passwort zurücksetzen zu können."

Die User Story lässt sich aufdröseln in 3 Bestandteile:

  • Rolle (Nutzer, Admin, Developer, ...)

  • ausführende Tätigkeit (einen Bestätigungslink per E-Mail bekommen)

  • Ziel / Intention (um mein Passwort zurückzusetzen)

Vorteile der User Stories

User Stories bieten gegenüber traditionellen Formen der Anforderungsdokumentation wie Lasten- und Pflichtenheften oder detaillierten Spezifikationen mehrere Vorteile:

  1. Einfachheit & Verständlichkeit – User Stories sind in Alltagssprache verfasst und leicht verständlich, auch für Nicht-Techniker. Im Gegensatz zu formalen Anforderungsdokumenten vermeiden sie komplizierte Fachbegriffe und sind für alle Beteiligten nachvollziehbar.

  2. Fokussierung auf den Nutzer – Während klassische Dokumente oft technische Details in den Vordergrund stellen, konzentrieren sich User Stories auf den tatsächlichen Nutzen für den Anwender. Dadurch bleibt die Entwicklung stärker auf die Bedürfnisse der Nutzer ausgerichtet.

  3. Flexibilität & Anpassungsfähigkeit – Anforderungen können sich im Laufe eines Projekts ändern. User Stories lassen sich leicht anpassen, ergänzen oder umpriorisieren, während formale Dokumente oft starr und schwerfällig sind.

  4. Bessere Zusammenarbeit & Kommunikation – Da User Stories bewusst einfach gehalten sind, fördern sie den direkten Austausch zwischen Entwicklern, Kunden und Stakeholdern. Sie dienen als Gesprächsgrundlage, anstatt eine abschließende, unveränderliche Vorgabe zu sein.

  5. Vermeidung unnötiger Features – Durch den Fokus auf konkrete Nutzerbedürfnisse wird sichergestellt, dass nur wirklich relevante Funktionen entwickelt werden. Das reduziert das Risiko von „Feature Creep“ und unnötigem Entwicklungsaufwand.

Trotz dieser Vorteile sind User Stories nicht immer die beste Wahl – für sicherheitskritische oder hochkomplexe Systeme kann eine detaillierte Spezifikation notwendig sein. In vielen Softwareprojekten bieten sie jedoch eine effiziente und praxisnahe Methode zur Anforderungsdokumentation.

Artefakte im Anforderungsmanagement

User Stories können darüber hinaus durch weitere Daten und Dokumente ergänzt und konkretisiert werden. Je mehr Anschauungsmaterial, zum Beispiel Designvorlagen, Grafiken oder Diagramme, den erarbeiteten Anforderungen hinzugefügt werden, desto klarer werden die Anforderungen.

Entwickler müssen zwar nur selten User Stories schreiben, aber sie sind dafür verantwortlich, die Funktionalität und die technischen Anforderungen aus den Stories zu extrahieren. Außerdem können sie die User Story bei Bedarf in kleinere Stories unterteilen und müssen in der Folge ein geeignetes Ablaufschema der verschiedenen Stories skizzieren, um die Anforderungen der User Story zu erfüllen.

Ablaufschemas, auch User Flows genannt, gibt es in verschiedenen Formen und Größen. Einige sind textbasiert, aber Benutzerabläufe können auch durch eine Reihe von Kästchen, die durch Pfeile verbunden sind, oder sogar durch Wireframes oder einfache Prototypen dargestellt werden. User-Flows zeichnen die intuitivsten Wege auf, die ein Nutzer zur Erledigung einer Aufgabe auf einer Website oder in einer App einschlagen kann, um seine Bedürfnisse zu erfüllen.

Das SMART-Prinzip

Neben der User Stories gehört zu den altbewährten Methoden des Anforderungsmanagements auch das SMART-Prinzip, das in der Softwareentwicklung und im Projektmanagement häufig angewendet wird.

Das SMART-Prinzip wird so genannt, weil das Wort "SMART" sich aus den jeweiligen Anfangsbuchstaben der erforderlichen Eigenschaften zusammensetzt.

  • Spezifisch: Anforderungen sollten sich immer auf ein spezifisches Problem richten.

  • Messbar: Das Ergebnis einer Anforderung ist messbar, d. h. es wird wirklich ein Mehrwert für das Projekt generiert.

  • Akzeptiert: Die Anforderung ist mit allen Stakeholdern abgestimmt.

  • Realistisch: Die Anforderung kann unter den jeweiligen Rahmenbedingungen umgesetzt werden.

  • Terminiert: Die Anforderung muss bis zu einer bestimmten Deadline umgesetzt sein.

Eine Anforderung, die mithilfe der SMART-Technik formuliert wurde, ist für das Team besser verständlich und kann helfen, Missverständnisse aus dem Weg zu räumen und für Klarheit zu sorgen.

Eine weitere bewährte Methode, um Anforderungen präzise, verständlich und umsetzbar zu formulieren, ist es, keine Negationen zu verwenden und Mehrdeutigkeiten zu vermeiden. Hat man nicht genügend Zeit, die Anforderungen an das Produkt in Refinement-Meetings zu erklären, sollte man auf einen eindeutigen Sprachgebrauch beim Schreiben der Tickets achten. Diese dürfen ruhig einen längeren Beschreibungstext enthalten, der alle eventuellen Verunsicherungen aus dem Weg räumen kann.

Was beim Schreiben von Anforderungen noch helfen kann, ist es, die Sprache der Tickets nach der MoSCoW-Methode auszurichten. Die MoSCoW-Methode ist eine Priorisierungstechnik, die häufig im Anforderungsmanagement verwendet wird, um Anforderungen nach ihrer Wichtigkeit zu kategorisieren. Der Name kommt von den Anfangsbuchstaben der vier Prioritätsstufen:

  • M (= "Must-Have"): Dieses Feature muss gebaut werden.

  • S (="Should-Have"): Um dieses Feature wird dringend gebeten.

  • C (="Could-Have"): Dieses Feature wäre schön, ist aber fürs Endprodukt weniger essenziell.

  • W (="Will-Have"): Dieses Feature wird es eventuell in Zukunft geben, aber jetzt noch nicht.

Die MoSCoW-Regel liefert Orientierungspunkte für das Erstellen von Anforderungen, die eine Beschreibung des Tickets einfacher machen. Ebensosehr kann sie auch für Entwickler und andere Stakeholder nützlich sein, um die Anforderungen eines Projektmanagers besser zu verstehen.

Beschreibung SMART Konzept

Welche Tools kommen beim Requirements Engineering zum Einsatz?

Wer noch nie mit Anforderungsmanagement zu tun gehabt hat, fragt sich natürlich, wo Anforderungen dokumentiert sind, sodass später jedes Teammitglied diese auch einsehen kann. Daher haben wir im Folgenden die wichtigsten Tools für Dich aufgelistet, die für die Anforderungsspezifikation, Anforderungsvalidierung und Anforderungsverwaltung verwendet werden können.

1. Erhebung von Anforderungen

Diese Tools helfen uns, Anforderungen von Stakeholdern zu sammeln, Diskussionen zu strukturieren und kollaborativ Ideen festzuhalten. Dazuzuzählen sind Miro oder MURAL, digitale Whiteboards für Brainstorming, User Story Mapping und Workshops, oder auch Lucidchart und draw.io, die der Erstellung von Diagrammen wie Flowcharts oder Use-Case-Diagrammen dienen.

2. Verwaltung von Anforderungen

Was in keinem agilen Projekt fehlen darf, ist ein Ticketsystem wie Jira oder Redmine. In diesen cloud-basierten Softwareprodukten können Verantwortliche Tickets anlegen, was sie überaus geeignet für das Verwalten, Priorisieren und Nachverfolgen von Anforderungen macht. Sie kommen zum Einsatz, um Anforderungen besser zu organisieren und Backlogs und Workflows in kooperativen Teamsessions zu bestimmen.

Im laufenden Betrieb können so Tickets einzelnen oder mehreren Beteiligten zugeteilt werden. Bei Änderungen werden entweder Follow-up Tickets erstellt und mit den Originaltickets verknüpft oder nach einer erneuten Anforderungsanalyse im Team die Ursprungstickets überarbeitet. Neben der besseren Organisation von Aufgaben helfen Projektmanagement-Tools so, die Nachvollziehbarkeit der einzelnen Schritte in der Umsetzung der Anforderungen zu gewährleisten.

3. Dokumentation von Anforderungen

Weitere Hilfsmittel, die häufig zur Dokumentation von Anforderungen eingesetzt werden, sind Tools wie Confluence oder Notion. Confluence wird oft in Kombination mit Jira genutzt und dient als zentrale Wissensdatenbank. Hier können Anforderungen dokumentiert, Meeting-Protokolle festgehalten und Spezifikationen mit dem Team geteilt werden.

Tools wie diese dienen zur strukturierten Dokumentation und Speicherung von Anforderungen über die gesamte Projektdauer. Sie sind auch insoweit dienlich, als sie Auskunft darüber geben, was in einem Projekt bereits umgesetzt wurde und welche Maßnahmen schon getroffen wurden. So können sich neue Mitarbeiter schnell und einfach in ein laufendes Projekt einarbeiten und sich das nötige Wissen erarbeiten, um an der Umsetzung weiterer Anforderungen mitzuwirken.

Die Dokumentation von Software spielt ohnehin eine große Rolle im Entwicklungsprozess und sollte nicht vernachlässigt werden.

Übersicht über Tools für Anforderungsmanagement

Fazit

Ein strukturiertes Anforderungsmanagement ist die Grundlage für erfolgreiche Softwareprojekte. Wer sich zu Beginn eines Projektes noch nicht im Klaren darüber ist, welche Funktionen das Endprodukt aufweisen soll, der kann keine klaren Aufgabenstellungen an sein Team formulieren und riskiert, dass die Produktentwicklung länger dauert als geplant. Wir sagen, das muss nicht sein! Mit unseren Tipps für ein strukturiertes Anwendungsmanagement bist Du auf der sicheren Seite!

Du benötigst Unterstützung bei der Ermittlung von Anforderungen an neue Software? Suchst Du nach Projektmitarbeitern, die bereits im Anforderungsmanagement erprobt sind? Benötigst Du einen Partner für Dein nächstes Projekt, der gelernt hat, Probleme und Vorstellungen in klare und nachvollziehbare Anforderungen umzuformulieren? Dann kontaktiere uns! Wir freuen uns darauf, gemeinsam mit Dir Deine Ideen umzusetzen!

Über den Autor

Katrin Hofstetter sorgt als Frontend Software Entwicklerin bei der FIDA für benutzerfreundliche und moderne Webanwendungen. Mit ihrer Expertise in HTML, CSS, JavaScript, React und Angular schafft sie digitale Erlebnisse, die nicht nur funktional, sondern auch ästhetisch überzeugen. Ihre Liebe zum Detail und ihre strukturierten Ansätze spiegeln sich auch in ihrer Begeisterung für Datenbanken und SQL wider.