Funktionale Anforderungen, Inhaltsanforderungen und CUJs

Ich arbeite an einem Projekt, um eine neue Dokumentationsseite zu erstellen, die Dokumentation über einen von uns gepflegten Dienst hosten wird. Wir erstellen diese Dokumentationsseite von Grund auf neu und schreiben die API-Dokumentation selbst von Grund auf neu. Ich habe damit begonnen, die CUJs (kritische Benutzerreisen) und Anforderungen für dieses Projekt zu definieren.

Zuerst habe ich eine Liste von CUJs erstellt und für jede CUJ die relevanten Anforderungen unter dieser CUJ aufgelistet. Also zum Beispiel:

  • CUJ 1: Als Benutzer sollte ich in der Lage sein, alle API-Endpunkte zu durchsuchen/suchen.

    • Anf.: Die Website sollte eine vollständige Liste aller API-Endpunkte als Links zu ihren Dokumentationsseiten bereitstellen.
    • Anf.: Die Website sollte eine Freiform-Texteingabe bereitstellen, um nach API-Endpunkten nach Namen zu suchen.
  • CUJ 2: Als Benutzer sollte ich in der Lage sein, die Dokumentation zu einem API-Endpunkt anzuzeigen.

    • Anf.: Die Site sollte den Endpunktnamen bereitstellen.
    • Anf.: Die Site sollte eine kurze Beschreibung des Endpunkts bereitstellen.
    • Anf.: Die Site sollte eine beispielhafte Anfrage und Antwort bereitstellen.

Ich habe festgestellt, dass einige meiner Anforderungen mit der Funktionalität der Site zu tun haben (dh diejenigen innerhalb von CUJ 1), während andere mit dem Inhalt der Site zu tun haben (dh diejenigen innerhalb von CUJ 2). Beispielsweise könnte die zugehörige funktionale Anforderung für die Anforderungen von CUJ 2 lauten: „Die Site sollte es Betreuern ermöglichen, Dokumentation zu API-Endpunkten zu schreiben.“ Dieser Unterschied ist für Entwickler, die sich nur um die funktionalen Anforderungen kümmern, etwas verwirrend, da sie genau diese für die Site implementieren müssen.

Haben andere das schon einmal erlebt – und wenn ja – wie sind Sie damit umgegangen? Danke!

Antworten (1)

Ich weiß nicht, was CUJ (oder FR) ist, aber ich werde mein Bestes tun, um Ihnen zu antworten.

  1. Erfahren Sie, wie Sie Anforderungen im Allgemeinen schreiben. Beispiel: „sollte“ ist kein gutes Wort für eine Anforderung, „sollte“ wird bevorzugt.
  2. Generell gibt es viele Arten von Anforderungen. Funktionale, architektonische, testbezogene (ja, Testfälle sind eigentlich Anforderungen), gesetzliche Anforderungen (durch die Gesetze des Landes vorgegeben), interne Regularien generieren ebenfalls Anforderungen, nationale und internationale Standards, kaufmännische, terminbezogene Anforderungen etc.
  3. Die erste Phase ist, wie Sie bereits bemerkt haben, eine Brainstorming-Phase. Daher ist jede Anforderung "eine gute Anforderung". In einer späteren Phase beginnen Sie damit, die Anforderungen zu verfeinern, zu sortieren, zu gruppieren und zu verbessern. Und viele weitere Anforderungen hinzufügen.

Dieser Unterschied ist etwas verwirrend für Entwickler, die sich nur um die funktionalen Anforderungen kümmern ...

Die Entwickler sowie alle Projektbeteiligten müssen darin geschult werden, was Anforderungen sind und wie sie gehandhabt werden sollten . Und "dot egal" ist normalerweise ein guter Grund, den Job zu verlieren ;)

Unterm Strich haben Sie nicht nur funktionale Anforderungen und nicht-funktionale Anforderungen, sondern Sie müssen sowohl Back-End-Anforderungen als auch Front-End-Anforderungen haben. Einige von ihnen werden sich sogar auf Zuverlässigkeit, Redundanz, die Verwaltung der Aktualisierung / Aufrüstung des Systems (Standorts) ...

Oft ist die Aufgabe, die Anforderungen zu schreiben, für nur eine Person überwältigend, und bei großen Projekten kümmern sich ganze Teams nur um die Anforderungen.

Ich wünsche Ihnen viel Glück, da Ihr Unternehmen anscheinend noch nicht wirklich auf einen solchen Job vorbereitet ist.

Entschuldigung, ein CUJ ist eine "kritische Benutzerreise". Ich werde meine Frage aktualisieren. Danke für die Antwort.
Und FR ist "funktionale Anforderung".