Anforderungen schreiben, die kanman erledigen kann

Wie Sie Anforderungen und Stories formulieren, damit sie die Bereitschaftsprüfungen bestehen, einen brauchbaren Demonstrate-Block bekommen und in einem geprüften Pull Request enden.

kanman kann nur belegen, was verlangt wurde, wenn die Anfrage sagt, wie “fertig” aussieht. Dieser Leitfaden zeigt, was eine Story erledigbar macht, mit Beispielen zum Übernehmen.

Was kanman prüft

Jede Story durchläuft fünf Bereitschaftsprüfungen, bevor sie freigegeben und in den Tracker geschrieben werden kann:

Prüfung Bestanden, wenn
Klare Akzeptanzkriterien Jedes Kriterium hat eine Ausgangslage (Given), eine Aktion (When) und ein beobachtbares Ergebnis (Then)
Testbar Die Story hat einen Testplan, und jedes Ergebnis lässt sich durch einen Test oder ein Skript prüfen, nicht durch Meinung
Klein genug Die Story passt in Größe S oder M; L-Stories müssen geteilt werden
Keine offenen Fragen Alles, was kanman in der Aufnahme gefragt hat, ist beantwortet
Hat einen Demonstrate-Block Es gibt konkrete Schritte, die das Ergebnis zeigen

Der Bereitschaftswert (0 bis 100) fasst diese Prüfungen zusammen, je 20 Punkte. Nur Stories, die alle fünf bestehen, zeigen Bereit für kanman und lassen sich freigeben.

Mit dem Ergebnis beginnen, nicht mit der Lösung

Beschreiben Sie, was ein Nutzer oder ein System danach tun kann. Überlassen Sie die Umsetzung dem Team, außer sie ist wirklich wichtig.

Statt Schreiben Sie
“Eine CSV-Bibliothek und einen neuen Endpunkt hinzufügen” “Kunden können ihre Rechnungen für einen Zeitraum als CSV-Datei für ihre Steuerberatung herunterladen.”
“Die Geldformatierung reparieren” “Jeder Betrag in der Rechnungsliste und auf der Rechnungsseite wird als €4,125.00 angezeigt, wie heute auf der Rechnungsseite.”
“Performance verbessern” “Die Rechnungsliste eines Kunden mit 5.000 Rechnungen lädt auf dem Staging-Server in unter 1 Sekunde.”

kanman macht aus einem Ergebnis Kriterien und Schritte. Aus einer Lösung kann es ein Ergebnis nur durch Raten ableiten.

Akzeptanzkriterien als Given/When/Then schreiben

Jedes Kriterium ist eine Ausgangslage und ein beobachtbares Ergebnis:

Given a customer with 3 invoices in March 2026
When they export March 2026 as CSV
Then the file has 3 rows and the columns date, number, amount

Tipps:

  • Ein Ergebnis pro Kriterium. “Dann lädt die Datei herunter, hat 3 Zeilen und heißt …” sind drei Kriterien.
  • Verwenden Sie echte Werte. “3 Rechnungen im März” ist prüfbar, “einige Rechnungen” nicht.
  • Nehmen Sie die Randfälle auf, die zählen: leere Ergebnisse, ungültige Eingaben, Berechtigungen.
  • Beschreiben Sie die Oberfläche nicht pixelgenau. Nennen Sie, was sichtbar sein oder zurückkommen muss.

kanman gibt jedem Kriterium eine stabile ID (ac-1, ac-2, …). Das Nachweispaket meldet jedes als bestanden, gescheitert oder unbekannt, mit Datei- und Zeilenverweisen.

Einen Demonstrate-Block schreiben

Der Demonstrate-Block ist der wichtigste Teil einer Story. Er ist das kurze Skript, dem eine Kollegin folgen würde, um Ihnen zu zeigen, dass die Funktion läuft, und kanman macht daraus die ausführbare Akzeptanz-Spec.

Ein guter Demonstrate-Block hat eine Art (UI, API, CLI oder Konfiguration), konkrete Schritte und das erwartete Ergebnis:

Kind: UI
Steps:
  1. Open /invoices
  2. Pick the date range 2026-03-01 to 2026-03-31
  3. Click "Download CSV"
Expected: a CSV file downloads with the columns date, number, amount and 3 rows
Kind: API
Steps:
  1. GET /api/invoices/export?from=2026-03-01&to=2026-03-31 with Accept: text/csv
Expected: status 200, content type text/csv, header row date,number,amount

Was als Demonstrate-Block nicht funktioniert:

  • “Tests laufen durch.” Tests gehören zur Prüfung, sie sind nicht das Ergebnis.
  • “Es funktioniert.” Da gibt es nichts auszuführen.
  • Schritte, die Produktivdaten, das Login einer Person oder ein Fremdsystem brauchen, das die Testumgebung nicht erreicht.

Achtung

Eine Story ohne Demonstrate-Block lässt sich in der Aufnahme nicht freigeben und kann Ready nicht erreichen. Die Story zeigt Demonstrate-Schritt hinzufügen, damit Sie einen ergänzen.

Stories klein halten

kanman ordnet Stories den Größen S, M oder L zu. Die Größe bestimmt Kosten und Risiko:

  • S: ein Verhalten in einem Bereich, typischerweise wenige Dateien.
  • M: eine Funktion über zwei oder drei Bereiche, zum Beispiel API und Oberfläche.
  • L: mehrere Verhaltensweisen oder Bereiche. Eine L-Story besteht die Bereitschaftsprüfung nicht.

Kleine Stories sind günstiger, schneller zu prüfen und scheitern auf leicht verständliche Weise. Ergibt eine Anforderung eine L-Story, teilen Sie sie in kleinere Stories, bevor Sie sie freigeben.

Offene Fragen in der Aufnahme beantworten

Lässt eine Anforderung etwas offen, führt kanman es als offene Frage auf, statt eine Antwort zu erfinden. Typische Beispiele: “Soll der Export Rechnungsentwürfe enthalten?” oder “Welche Zeitzone bestimmt den Zeitraum?”. Beantworten Sie sie in der Anforderungsprüfung. Eine Story mit offenen Fragen lässt sich nicht freigeben.

Dringlichkeit mit einer Serviceklasse markieren

Stories sind standard, solange nichts anderes gilt. Um eine Story vorzuziehen, bitten Sie im Reiter Anforderungen des Teams darum, zum Beispiel mit “SBX-12 vorziehen”; “SBX-12 zurückstellen” setzt sie zurück:

Klasse Wofür
expedite Störungen, CI-Regressionen, Sicherheitskorrekturen. Wird nie durch Budgets oder Drosselung gestoppt.
fixed_date Arbeit mit echter Frist
standard Alles andere (Standard)
maintenance Pflegearbeit aus dem Wartungsmodus (automatisch gesetzt)

Checkliste

Bevor Sie eine Story freigeben, prüfen Sie:

  1. Der Titel sagt, was ein Nutzer danach tun kann.
  2. Jedes Kriterium hat Given, When und Then mit echten Werten.
  3. Der Demonstrate-Block lässt sich gegen eine frische Testumgebung ausführen.
  4. Die Größe ist S oder M.
  5. Es sind keine offenen Fragen übrig.

Weiter mit: Ein Akzeptanz-Manifest anlegen, damit kanman den Demonstrate-Block als echten Test ausführen kann.

Zuletzt aktualisiert: January 1, 0001

kanman öffnen