Beim Erstellen eines Backlogs gelten verschiedene Anforderungen, die für eine Vielzahl von User Stories gelten, z. B. Aspekte der Anwendung wie Fehlerbehandlung und Feedback. Wie füge ich diese ein (ohne eine # include-Direktive in jeder User Story zu verwenden)? Sollte ich die Fehlerpräsentation als Feature behandeln und dann User Stories für dieses Feature wie "System fängt Ausnahmen ab und zeigt dem Benutzer Informationen an" haben?
project-management
agile
scrum
ProfK
quelle
quelle
Antworten:
Der Umgang mit Benutzerfeedback ist für die Benutzererfahrung von entscheidender Bedeutung, gilt jedoch auch für verschiedene Teile der Anwendung auf unterschiedliche Weise.
Nehmen Sie die folgenden zwei Beispiele:
Eine Geschichte könnte sich auf eine direkte Benutzerinteraktion konzentrieren, bei der ein schwerwiegender Fehler auftritt. Ein modaler Dialog wird verwendet, um den Benutzer über den Fehler zu informieren und ihn darüber zu informieren, dass eine Wiederherstellung nicht möglich ist. Die Geschichte hierfür wäre: „Als Benutzer ich über einen ungültigen Eintrag einiger Daten bilden , so informiert werden , dass ich diesen Fehler gehen sofort zurück und korrigieren“ . Diese User Story impliziert, dass dies ein schwerwiegender Blockierungsfehler ist, den der Benutzer sofort korrigieren muss.
In einer zweiten Geschichte vergisst der Benutzer, obligatorische Daten in ein Formular einzugeben. Die Geschichte wäre: "Als Benutzer möchte ich, dass fehlende Felder in einem Eintrag hervorgehoben werden, damit ich weiß, welche Felder erforderlich sind."
Diese subtile Benachrichtigung ist sehr unterschiedlich und kann nicht mit der ersten Story zu einer allgemeinen Fehlerbehandlungsgeschichte kombiniert werden. Beides kann sich jedoch aus internen Ausnahmen ergeben.
Denken Sie daran, dass es wichtig ist, das "Was" einer Geschichte zu vermitteln, beispielsweise das Fehlerszenario, das in einer bestimmten Situation behandelt werden sollte. Das Wie des Fehlers (dh eine Ausnahme wird irgendwo ausgelöst) ist für den Produktbesitzer fast irrelevant, da er keinen geschäftlichen Wert hat. Aus technischer Sicht würde ich eine Soundarchitektur in keiner Weise von meinem Produkt erwarten.
Am Ende gewinnen Sie Flexibilität und Erweiterbarkeit, indem Sie sich auf den Geschäftswert konzentrieren und gut getrennte und kleine User Stories haben.
quelle
Ich glaube, die Lösung ist eine gute Trennung der Bedenken. Dinge wie Fehlerbehandlung, Protokollierung, Feedback und dergleichen sollten global mit nur einem Code behandelt werden. Nur Anforderungen, die sich von diesem globalen Verhalten unterscheiden, sollten entweder als Teil von User Stories oder in der Diskussion über die Implementierung dieser User Storys notiert werden.
Auf der Seite des Projektmanagements sollte es also eine User Story geben, die besagt: "Als Benutzer möchte ich Fehler so sehen, dass ich sie dem Administrator melden kann." oder etwas ähnliches. Und diese User Story sollte in der Regel für alle Anwendungsfälle gelten.
quelle
Eine Idee (aus SCRUM): Dinge, die für jede User Story überprüft werden müssen, sind in der sogenannten "Definition von erledigt" enthalten .
Normalerweise umfasst "Definition von erledigt" technische Dinge wie:
Es kann aber auch für den Benutzer sichtbare Dinge enthalten:
Das Team muss die "Definition von erledigt" für jede User Story überprüfen, bevor es für erledigt erklärt wird.
Eine Möglichkeit wäre, eine angemessene Fehlerbehandlung in diese "Definition von erledigt" aufzunehmen. Wie die anderen Antworten zeigen, sind die von Ihnen angeführten Beispiele (Fehlerbehandlung und Feedback) wahrscheinlich keine wirklich guten Beispiele für Anforderungen, die "überall" gelten:
Die richtige Fehlerbehandlung und Rückmeldung hängt normalerweise vom Kontext ab. Daher muss sie für die Orte, an denen sie benötigt wird, separat definiert werden. In diesem Fall ist es möglicherweise besser, die Fehlerbehandlung als separate User Stories zu formulieren, wie in der Antwort von malte erläutert.
quelle