8 Tipps zum Schreiben besserer Anforderungen

Verfasst von: Emily Himes
9/27/2024

Lesezeit: 6 min

Anforderungen sind die Grundlage eines jeden Softwareprojekts. Ohne sie haben Entwickler keine Blaupause, an der sie sich orientieren können, was zu falsch abgestimmten Erwartungen und verschwendeten Ressourcen führt. Wenn man weiß, wie man Anforderungen richtig schreibt, ist sichergestellt, dass alle Beteiligten ein gemeinsames Verständnis von dem haben, was entwickelt werden muss, was das Risiko von Fehlkommunikation und Umfangsverschlechterung verringert. Klare, präzise Anforderungen führen zu einer besseren Planung, einem besseren Design und einer besseren Ausführung, was letztendlich zu einem Produkt führt, das die Bedürfnisse und Erwartungen der Benutzer erfüllt.

Auch wenn gut formulierte Anforderungen den Entwicklern einen klaren Fahrplan bieten, werden nicht alle Anforderungen so verfasst, dass sie den Entwicklungsprozess straffen. Wenn Anforderungen unklar sind, müssen Unternehmen mit falsch ausgerichteten Zielen rechnen, die kostspielige Nacharbeiten, Verzögerungen und verschwendete Ressourcen nach sich ziehen. Rüsten Sie Ihr Team für den Erfolg, indem Sie häufige Fehler vermeiden und bei der Erstellung von Anforderungen bewährte Verfahren befolgen - so bleibt Ihr Projekt von Anfang bis Ende auf Kurs.

Warum ist es wichtig, gute Anforderungen zu schreiben?

Wenn Sie als Softwareentwickler lernen, wie man Anforderungen schreibt, ist es wichtig zu wissen, dass Spezifität der Schlüssel ist. Stellen Sie sich vor, Sie erhalten eine Anforderung, in der es heißt: „Das System sollte benutzerfreundlich sein“. Das ist vage und lässt viele Interpretationen zu - Sie denken vielleicht, dass damit eine einfache Benutzeroberfläche gemeint ist, während Ihr Kollege darunter versteht, dass das System in hohem Maße konfigurierbar sein sollte.

Unklare Anforderungen führen zu Verwirrung und widersprüchlichen Interpretationen, die in der Folge Nacharbeit verursachen, die Kosten erhöhen und den Zeitplan verzögern. Das Schreiben und Verwalten von Anforderungen so effektiv wie möglich ist der Schlüssel zum Erfolg eines Produkts. Es ist entscheidend, dass Ingenieure in der Lage sind, Anforderungen so einfach wie möglich zu dokumentieren, zu analysieren und zu priorisieren. Da die Produkte immer komplexer werden, ist die Rückverfolgbarkeit von größter Bedeutung, da sie die Transparenz zwischen allen Teammitgliedern und Beteiligten fördert. Wenn alle Beteiligten Änderungen in Echtzeit verfolgen können, verbessern sich in der Regel die Produktqualität, die Lieferzeiten und die Effizienz.

Anforderungen bilden die Grundlage für qualitativ hochwertige Software - und je komplizierter die Software wird, desto transparenter müssen ihre Anforderungen sein. Ohne gute Anforderungen haben Entwickler, Designer, Tester und Stakeholder möglicherweise eine andere Vorstellung davon, was das Endprodukt leisten soll. Mit einer klaren, präzisen Roadmap können Teams die Ausweitung des Umfangs begrenzen und das Risiko kostspieliger Fehler oder Missverständnisse verringern. Darüber hinaus dienen gut formulierte Anforderungen während des gesamten Entwicklungszyklus als Referenzpunkt, der den Teams hilft, sich auf die ursprünglichen Ziele zu konzentrieren, und eine genauere Fortschrittskontrolle und Entscheidungsfindung ermöglicht. Das Verständnis der Schlüsselkomponenten guter Anforderungen ist ein sicherer Weg, um einen neuen Entwicklungsprozess auf dem richtigen Weg zu beginnen - und ihn bis zu seinem Abschluss zu halten.

Häufige Fehler beim Schreiben von Anforderungen

Die Erstellung eines Anforderungsprotokolls ist der erste Schritt in einem soliden Anforderungsmanagementprozess. Durch das Aufschreiben aller notwendigen Anforderungen ist es einfacher, die Bedürfnisse der Benutzer an die Entwickler zu kommunizieren oder zu übersetzen. Diese Anforderungssammlung unterstützt auch die Kommunikation zwischen allen beteiligten Teammitgliedern, Entwicklern und Stakeholdern und ist damit ein leistungsstarkes Tool zur Kostensenkung und Erhöhung der Transparenz im gesamten Prozess. Die Wirkung dieser Anforderungen hängt jedoch davon ab, wie gut sie formuliert sind - klare, prägnante und direkte Anforderungen sind entscheidend für ihren Erfolg. Häufige Fehler beim Verfassen von Anforderungen sind unter anderem:

  • Verwendung falscher oder inkonsistenter Terminologie.
  • Grammatikalische Fehler machen.
  • Zu vage oder zweideutig sein.
  • Zu spezifisch und wortreich sein.
  • Falsche Annahmen machen.
  • Beschreiben, wie etwas zu implementieren ist, anstatt zu beschreiben, was erforderlich ist.

Was sollte eine Anforderung enthalten?

Anforderungsingenieure müssen extrem detailorientiert sein und sicherstellen, dass sie die Anforderungen so klar wie möglich strukturieren, formulieren und präsentieren. Idealerweise sollte jede Anforderungserklärung (aus der Sicht des Benutzers geschrieben) folgende Aspekte enthalten:

  • Enthält eine Benutzerrolle: Damit wird festgelegt, wer mit dem Merkmal oder der Funktion interagieren wird. Eine klare Definition des Benutzers hilft sicherzustellen, dass die Anforderung für die richtige Zielgruppe entwickelt wird.
  • Erklären Sie, wie der Benutzer von der Anforderung profitiert: Der Wert des Produkts muss klar sein. Dadurch wird der Schwerpunkt auf die Bereitstellung von Funktionen gelegt, die mit den übergeordneten Zielen und den Bedürfnissen der Benutzer übereinstimmen.
  • Skizzieren Sie den gewünschten Zustand, der mit Hilfe der Anforderung erreicht werden soll: Jede Anforderung sollte einen Erfolgsmaßstab enthalten, der angibt, wie das Endprodukt aussehen soll.
  • Fügen Sie gegebenenfalls Metriken hinzu, die eine Prüfung der Anforderungen ermöglichen: Fügen Sie nach Möglichkeit quantifizierbare Messgrößen wie Antwortzeiten oder Leistungsbenchmarks hinzu, um eine eindeutige Prüfung und Validierung zu ermöglichen. So lässt sich leichter überprüfen, ob das System die Erwartungen erfüllt.

Eine allgemeine Faustregel besagt, dass eine Anforderung einer einfachen Struktur folgen sollte, z. B:

Die „Sache“ soll „spezifische Maßnahmen“ vorsehen, um das „gewünschte Ergebnis“ zu erreichen.

Diese Bausteine dienen den Ingenieuren als Checkliste, wenn sie lernen, wie man zu Beginn eines Entwicklungszyklus Anforderungen schreibt, aber sie sind nicht das A und O der Überlegungen während dieses Prozesses. Es ist wichtig, die Anforderungen näher zu betrachten (um sicherzustellen, dass sie leicht zu verstehen und technisch korrekt sind), aber auch zu überprüfen, ob sie testbar sind und mit den übergeordneten Zielen übereinstimmen. Eine ganzheitliche Betrachtung dessen, was mit den Anforderungen erreicht werden soll, macht es einfacher, Anforderungen zu formulieren, die auf lange Sicht effektiv sind.

8 bewährte Verfahren für das Anforderungsmanagement

Es ist leicht, Anforderungen aus einer Laune heraus zu schreiben und nur die verfügbaren Informationen zu verwenden. Aber ein paar Minuten mehr Zeit können einen großen Unterschied ausmachen. Konstruktive Anforderungen sollten immer folgende Merkmale haben:

Erforderlich

Fragen Sie sich die „Drei W's“:“

  • Was werden wir tun?
  • Warum tun wir das?
  • Wer profitiert davon?

Wenn Sie die oben genannten Fragen nicht ohne Weiteres beantworten können, haben Sie wahrscheinlich kein vollständiges Verständnis für die Bedürfnisse Ihrer Benutzer. Infolgedessen könnten Sie Anforderungen einbeziehen, die eigentlich nicht benötigt werden, was zu längeren Entwicklungszeiten, höheren Kosten und einem Schwerpunktverlust führt.

Eindeutig

Sobald Sie bestätigt haben, dass eine Anforderung tatsächlich notwendig ist, ist es an der Zeit, mit dem Schreiben zu beginnen. Bei der Dokumentation der Anforderung ist es unglaublich wichtig, so klar, direkt und eindeutig wie möglich zu sein. Einfache Sätze sorgen dafür, dass jeder, der sie liest, ihre Bedeutung auf dieselbe Weise versteht. Um ein Höchstmaß an Klarheit zu gewährleisten, ist es am besten, Folgendes zu vermeiden:

  • Verwendung des Passivs.
  • Buzzwords, Jargon, Abkürzungen, Akronyme oder andere Begriffe, die nicht allgemein verstanden werden (wenn sie aus irgendeinem Grund nicht vermieden werden können, vergessen Sie nicht, sie in ein Glossar aufzunehmen).
  • Adverbien, die auf unterschiedliche Weise interpretiert werden können (Mehrdeutigkeit).
  • Negative Formulierungen, die beschreiben, was nicht getan werden sollte (beschreiben Sie stattdessen, was getan werden sollte).
  • Vage Ausdrücke, die schwer zu testen und zu überprüfen sind.

Kompakt und konsistent

Es ist von größter Wichtigkeit, die Anforderungen kurz zu halten - viele sagen sogar, wenn sie nicht auf einen Post-it-Zettel passen, sind sie bereits zu lang. Legen Sie Wert auf Lesbarkeit, indem Sie die Nachricht kurz und bündig halten. Dadurch wird es für Stakeholder und Entwickler viel einfacher, die Anforderungen eines Projekts zu organisieren, aufzunehmen und zu analysieren. Auch wenn knappe Anforderungen vorzuziehen sind, sollten wichtige Informationen niemals um der Länge willen ausgelassen werden. Die Anforderungen sollten so kurz wie möglich sein und dennoch alle relevanten Informationen enthalten.

Die Verwendung einer inkonsistenten Terminologie bei der Erfassung von Anforderungen kann zu Verwirrung, Fehlern und Verzögerungen führen. Die Erstellung eines Projektglossars zu Beginn des Prozesses trägt dazu bei, dass alle Beteiligten auf derselben Seite stehen. Stellen Sie sicher, dass alle Begriffe aufgelistet sind, sich nicht widersprechen und dass die Sprache der Benutzer und Entwickler übereinstimmt. Wenn Sie beim Schreiben der Anforderungen auf dieses Glossar zurückgreifen, stellen Sie sicher, dass die von Ihnen verwendeten Begriffe konsistent und für alle Beteiligten verständlich bleiben.

Präzise

Auch wenn Sie glauben, dass eine Anforderung notwendig ist, schadet es nie, sie noch einmal zu überprüfen. Vergewissern Sie sich, dass alle in der Anforderung enthaltenen Informationen korrekt sind und dass die von Ihnen angegebenen Annahmen zutreffend sind. Die Überprüfung der Richtigkeit und Notwendigkeit jeder Anforderung kann mögliche Fehltritte und kostspielige Überarbeitungen später im Entwicklungsprozess verhindern.

Durchführbar

Nachdem Sie sich vergewissert haben, dass die Annahmen in der Anforderung korrekt sind, müssen Sie sicherstellen, dass Ihre Aussage technisch machbar ist. Werfen Sie zunächst einen Blick auf das Projektbudget und den Zeitplan und dann auf die Ressourcen, die Ihrem Team zur Verfügung stehen. Wenn die Anforderung unter den gegebenen Bedingungen praktisch umgesetzt werden kann, ist sie bereit, in den Projektplan aufgenommen zu werden.

Priorisiert

Die Anforderungen sollten nach Typen kategorisiert und dann entsprechend priorisiert werden. Die genauen Kategorien unterscheiden sich von Organisation zu Organisation, aber die wichtigsten Arten von Anforderungen sind:

  • Funktionale Anforderungen
  • Nicht-funktionale Anforderungen
  • Geschäftliche Anforderungen
  • Systemanforderungen

Durch die Kategorisierung der Anforderungen wird es für die Beteiligten einfacher, sie zu lesen, zu verwalten und herauszufinden, welche Anforderungen für ihre Rolle am wichtigsten sind. Die Priorisierung nach Wichtigkeit hilft dann, den Projektumfang genau zu definieren und einen Zeitplan für die Umsetzung der einzelnen Anforderungen zu erstellen.

Verifizierbar

Bei der Strukturierung von Anforderungen muss unbedingt sichergestellt werden, dass sie überprüfbar sind, d. h. es muss möglich sein, das System zu testen und nachzuweisen, dass es die Anforderungen erfüllt. Eine klare, unmissverständliche Sprache ist der Schlüssel zu einer realisierbaren Überprüfung. Vage Begriffe wie „maximieren“ oder „minimieren“, „einfach“, „flexibel“ oder „sicher“ sind schwer messbar und können beim Testen zu Verwirrung führen. Anforderungen sollten spezifisch und objektiv sein, um eine konkrete Bewertung der Systemleistung zu ermöglichen - und um den letzten kritischen Aspekt von Anforderungen zu berücksichtigen: die Rückverfolgbarkeit.

Rückverfolgbar

Die Rückverfolgbarkeit stellt sicher, dass es klare Verbindungen zwischen Anforderungen und anderen Projektelementen gibt. Dies ermöglicht es Projektmanagern, Entwicklern und Stakeholdern, den gesamten Lebenszyklus jeder Anforderung zu dokumentieren und zu verfolgen, und zwar sowohl vorwärts (zu Entwicklung, Tests und Bereitstellung) als auch rückwärts (zu den Zielen des Unternehmens und der Stakeholder). Wenn die Rückverfolgbarkeit adäquat verwaltet wird, können Sie „streunenden“ Code (d. h. Code, der nicht mit einer Anforderung zusammenhängt) minimieren und nachverfolgen, welche Anforderungen durch Testfälle abgedeckt sind. Um die Rückverfolgbarkeit von Anforderungen zu gewährleisten, sollte jede Anforderung mit einer eindeutigen Kennung versehen werden und ihre Quellenangaben klar dokumentiert sein. All dies muss in einem gemeinsamen zentralen Repository, das allen beteiligten Teammitgliedern zugänglich ist, sorgfältig nachverfolgt werden.

Rückverfolgbarkeit ist für das Change Management und die Einhaltung von Vorschriften von größter Bedeutung und hilft den Teams, den Umfang, die Komplexität und die Auswirkungen von Änderungen zu verstehen. Durch eine klare Sichtlinie zwischen Anforderungen und anderen Projektkomponenten können Teams beurteilen, wie sich Änderungen an einer einzelnen Anforderung auf den gesamten Entwicklungszyklus auswirken und sich auf den Zeitplan und andere Ressourcen auswirken. Diese Transparenz ist besonders wichtig für die Einhaltung gesetzlicher Vorschriften, wenn Auditoren überprüfen müssen, ob bestimmte Anforderungen erfüllt und gemäß den Branchenstandards getestet wurden. Darüber hinaus hilft eine starke Rückverfolgbarkeit bei der Identifizierung von Inkonsistenzen, Lücken oder Fehlern bei der Umsetzung von Anforderungen, um sicherzustellen, dass während der Entwicklung nichts Entscheidendes übersehen wird.

Anforderungen können über den Erfolg eines Entwicklungszyklus entscheiden, und die Art und Weise, wie sie formuliert sind, kann eine große Rolle für ihre Wirkung spielen. Wenn Sie über alle Informationen verfügen, die Sie zum Schreiben klarer, präziser und direkter Anforderungen benötigen, ist es einfach, Ihr Team für den Erfolg zu rüsten. ALM-Lösungen wie Codebeamer können dabei helfen, die Lücken zu füllen:

  • Zentralisierte Dokumentation
  • Durchgängige Rückverfolgbarkeit
  • Nahtlose Integration
  • Verbesserte Zusammenarbeit und Kommunikation

Ohne diese Funktionen können Teams mit einer Vielzahl von Hürden konfrontiert werden, die die Kommunikation belasten und die Projektausführung erschweren. Durch den Echtzeitzugriff auf Projektdaten geben ALM-Lösungen den Teams die nötigen Einblicke, um genauere und fundiertere Anforderungen zu schreiben. Durch den Einblick in Abhängigkeiten, Ressourcenbeschränkungen und Stakeholder-Feedback stellt Codebeamer sicher, dass die Anforderungen nicht nur gut dokumentiert sind, sondern auch den praktischen Gegebenheiten des Projekts entsprechen.

Zukunftssicheres Anforderungsmanagement

Erfahren Sie mehr darüber, wie ALM Ihr Unternehmen dabei unterstützen kann, gute Ideen in bahnbrechende Produkte zu verwandeln, indem es eine optimierte Sichtbarkeit aller relevanten Funktions-, Leistungs-, Sicherheits-, Regulierungs- und Marktanforderungen bietet. Mehr erfahren
Tags: Application Lifecycle Management (ALM) Codebeamer Requirements Management

Der Autor

Emily Himes Emily ist Content Marketing Specialist im Commercial Marketing Team von PTC mit Sitz in Boston, MA. Mit ihren Texten unterstützt sie eine Reihe von Produkt- und Dienstleistungsangeboten von PTC.