Start / Cheat Sheets

Cheat Sheet

Spec-driven Development: Spec und Kontext — Cheat Sheet

Stand: · Spec-driven & Agentic Software Development

Spec-driven DevelopmentContext EngineeringAGENTS.mdBMad Method

Der Spickzettel zum Seminar Spec-driven & Agentic Software Development, erster Teil: was festgelegt wird, bevor ein Agent die erste Datei anfasst — Absicht, Spezifikation, Projektkontext, Architektur, Schnitt. Umsetzung, Review und Governance stehen auf dem zweiten Blatt, Umsetzung und Prüfung. Werkzeugnamen und Skill-Bezeichnungen ändern sich schnell; maßgeblich bleibt die Dokumentation des jeweiligen Werkzeugs. Das Blatt hält Entscheidungen fest — die Methode bringt es nicht bei.

Stufen und Begriffe

StufeEingabeErgebnis
VervollständigungCursorpositiondie nächsten Zeilen
ChatFrage im FensterVorschlag zum Übernehmen
AgentZiel und Repositorygeänderte Dateien, Testlauf

Erst ab der dritten Stufe entsteht Arbeit, die jemand prüfen muss, statt sie zu lesen. Die vier Begriffe, die dabei am häufigsten durcheinandergehen:

BegriffBedeutung
Skillbenannter Arbeitsablauf, den man aufruft
AgentenrollePersona mit Zuständigkeit, bleibt im Gespräch
Subagenteigener Thread für eine Teilaufgabe, meist lesend
Orchestratorwählt die nächste Arbeitseinheit und koordiniert

Ein Skill ist ein Ablauf, eine Rolle eine Haltung, ein Subagent ein zweiter Kontext. Wer die drei vermischt, sucht Fehler an der falschen Stelle.

Modul: Vom Coding Assistant zum Engineering-System

Spontan oder strukturiert

SituationSpontanStrukturiert
Tippfehler in einer Fehlermeldungjanein
neue Pflichtangabe im FormularmeistKriterien notieren
Warteliste für belegte RäumeneinSpec und Stories
Wechsel des AnmeldeverfahrensneinArchitektur und Review

Die Grenze verläuft an Risiko und Reichweite, nicht an der Zeilenzahl. Denselben Maßstab legt die Pfadwahl an:

PfadUmfangArtefakte
direkt baueneine SitzungDiff und Testlauf
Epicmehrere SitzungenSpec und geordnete Stories
Projektviele SitzungenSpec je Epic, Koordination

Hohes Risiko hebt den Pfad an, auch wenn der Umfang klein bleibt.

Module: Vom Coding Assistant zum Engineering-System · Spec-driven Development verstehen

Artefakte und ihr Zweck

ArtefaktBeantwortetEntsteht
Product BriefLohnt sich das?vor der Planung
PRDWorauf einigen wir uns?bei mehreren Epics
Feature SpecWas gilt als fertig?vor dem Bauen
Architecture SpineWas darf nicht kollidieren?vor der Zerlegung
StoryWas baue ich als Nächstes?aus der Spec
TestspezifikationWoran messen wir?mit der Spec
EntscheidungstagebuchWarum so?fortlaufend

Wer alle sieben immer erzeugt, hat den Ansatz missverstanden. Ein PRD lohnt sich, wenn mehrere Menschen sich einig werden müssen, mehrere Epics zueinander passen sollen oder eine Entscheidung außerhalb des Entwicklungsteams fällt — für alles Kleinere führt der kurze Weg direkt zur Feature Spec.

Warum überhaupt Dateien statt Prompts:

MerkmalChatverlaufSpezifikation
Lebensdauereine Sitzungdas Projekt
Sichtbar füreine Persondas Team
Prüfbarnur im Nachhineinim Review vorab
Wiederverwendbarneinals Kontext jeder Sitzung

Modul: Spec-driven Development verstehen

Die fünf Felder einer Spec

FeldFrageBeispiel
WarumWelches Problem?Anfragen gehen verloren
FähigkeitenWas kann das System?eintragen, nachrücken
RandbedingungenWas darf sich nicht ändern?Buchungsmodell
Nicht-ZieleWas bleibt draußen?Benachrichtigung
ErfolgssignalWoran messen wir?keine offene Anfrage

Jede Fähigkeit trägt ihre eigene Erfolgsbedingung, sonst ist sie nicht prüfbar. In Kurzform:

# Warteliste
Why:           belegte Räume verlieren heute Anfragen
Capabilities:  eintragen, nachrücken, absagen
Constraints:   keine Änderung am Buchungsmodell
Non-goals:     Benachrichtigung per E-Mail
Success:       keine Anfrage bleibt unbeantwortet

Davor steht der Intent — die Übersetzung einer Anfrage in eine überprüfbare Absicht. Die wertvollste Zeile ist die offene Frage: Sie verhindert eine erfundene Entscheidung.

Anfrage: "Wir brauchen sowas wie eine Warteliste."
Intent:  Wer einen belegten Raum anfragt, wird
         eingetragen und rückt automatisch nach.
Nicht:   Benachrichtigung, Bezahlung, Stornofristen
Fest:    Buchungsmodell bleibt unverändert
Offen:   Wie lange gilt ein Nachrückangebot?

Modul: Von der Anforderung zur Spezifikation

Wer entscheidet was

FrageZuständig
Namen von Feldern und EndpunktenAgent schlägt vor
Frist eines NachrückangebotsFachseite
Zusätzliche Tabelle oder SpalteArchitektur
Wer fremde Buchungen stornieren darfSecurity und Fachseite

Wer entscheidet, gehört in die Spec — sonst wird die Frage zweimal geklärt. Zu viele Freigabepunkte lähmen allerdings die Arbeit und werden bald übergangen.

Modul: Von der Anforderung zur Spezifikation

Projektkontext: Regeldatei

In die RegeldateiNicht in die Regeldatei
wörtliche Bau- und TestbefehleVerzeichnisbäume
Abweichungen vom Ökosystem-StandardAufzählung des Tech-Stacks
gesperrte Pfade, generierte Dateienwas der Linter ohnehin erzwingt
beobachtete, wiederkehrende FehlerProsa über die Architektur

Wer beschreibt, was im Code steht, verbraucht Kontext ohne Gegenwert. Zwanzig bis dreißig Zeilen sind ein guter Startpunkt; die eingelesene Menge ist begrenzt (bei AGENTS.md standardmäßig 32 KiB), lange Referenztexte gehören verlinkt.

RangOrtZweck
1~/.codex/AGENTS.mdeigene Gewohnheiten
2Git-WurzelRegeln des Projekts
3UnterverzeichnisRegeln des Bereichs
4Auftrag im Chatschlägt alle Dateien

Eine AGENTS.override.md davor greift, wenn man global etwas vorübergehend ausschaltet. Gepflegt wird aus drei Anlässen — und häufiger gestrichen als ergänzt:

AnlassAuslöserHandlung
AuffrischenUmbau im CodeRegeln gegenprüfen
FesthaltenAgent macht denselben FehlerRegel ergänzen
PrüfenRegeln wirken altstreichen und kürzen

Modul: Context Engineering für Coding Agents

BMad: Rollen und Skills

RolleZuständig für
AnalystRecherche, Einordnung, Ideenprüfung
Product ManagerAnforderungen, PRD, Abstimmung
ArchitectEntscheidungen, Grenzen, Konsequenzen
DeveloperUmsetzung, Tests, Selbstreview
UX DesignerErscheinung und Verhalten der Oberfläche

Die Rollen bündeln Zuständigkeit — sie ersetzen sie nicht. Entschieden hat immer ein Mensch, auch wenn die Persona überzeugend klingt.

SkillErgebnis
bmad-helpEmpfehlung für den nächsten Schritt
bmad-project-contextgeprüfter Block in AGENTS.md
bmad-specSPEC.md, optional stories.yaml
bmad-architectureEntscheidungen als Architecture Spine
bmad-buildImplementierung, Tests, Commit
bmad-code-reviewBefunde aus mehreren Review-Linsen
bmad-qa-generate-e2e-testsAPI- und E2E-Tests
bmad-retrospectiveAbgleich am Ende eines Epics

Im Alltag genügen vier: Kontext, Spec, Build, Review. Wohin installiert wird, entscheidet, welches Werkzeug die Abläufe überhaupt sieht:

WerkzeugVerzeichnis
Claude Code.claude/skills/
Codex, Cursor, Windsurf.agents/skills/
Cline.cline/skills/
npx bmad-method install     # führt durch Module und Tool
npx bmad-method install --list-tools
# im Coding Agent, nicht in der Shell:
bmad-help                   # empfiehlt den nächsten Skill

Modul: BMad Method – Rollen und Skills

Architecture Spine

In den SpineIn den Code
Grenzen zwischen ModulenOrdnerstruktur
Zustandsübergänge einer BuchungFeldnamen
wer die Daten besitztvollständiges Schema
Entscheidung samt AlternativeWahl der Bibliothek

Faustregel: nur was an einer Epic-Grenze wehtut, wenn es fehlt. Fünf Zeilen je Entscheidung reichen — was länger wird, gehört meist in die Spec.

Entscheidung: Warteliste als eigene Tabelle
Alternative:  Statusfeld an der Buchung
Grund:        Buchungsmodell bleibt unberührt
Folge:        Nachrücken braucht eine Transaktion
Grenze:       src/buchung besitzt beide Tabellen

Modul: Architektur und Zerlegung

Schnitt der Arbeitseinheiten

WaagerechtSenkrecht
erst alle TabellenEintragen von Ende zu Ende
dann alle EndpunkteNachrücken von Ende zu Ende
dann die OberflächeAbsagen von Ende zu Ende
Erst am Ende prüfbarNach jedem Schnitt prüfbar

Der senkrechte Schnitt kostet etwas Doppelarbeit und spart die Integrationsschmerzen. Jede Einheit braucht Akzeptanzkriterium, Vorgänger und die Angabe, was parallel laufen darf — entscheidend ist, ob zwei Einheiten dieselben Dateien schreiben.

StoryErgebnisCheckpoint
EintragenAnfrage landet in der Listedanach
AnzeigenPosition ist sichtbardanach
NachrückenPlatz wird zugeteiltdavor und danach
AbsagenEintrag verfälltdanach

Modul: Architektur und Zerlegung

Typische Fallen

  • Verlorener Kontext. Was im Chat vereinbart war, ist beim nächsten Start weg — und taucht als erfundene Entscheidung wieder auf.
  • Die Spec wiederholt den Code, statt die Absicht zu benennen. Und Akzeptanzkriterien, die niemand messen kann, klingen nur nach Sorgfalt.
  • Übermäßige Spezifikation legt Technik fest, die niemand verlangt hat; Randfälle fehlen dagegen, weil nur der glückliche Pfad beschrieben wurde.
  • Dieselbe Aussage in drei Dokumenten läuft dort auseinander. Ein PRD für ein Zwei-Tage-Feature bindet mehr Zeit, als es einspart.
  • Offene Fragen als Annahmen getarnt. Sie sind dann nicht mehr sichtbar — und der Agent füllt die Lücke selbst.
  • Veraltete Regeln führen aktiv in die Irre — schlimmer als gar keine Regel. Widersprüche zwischen zwei Ebenen fallen niemandem auf, bis das Ergebnis abweicht.
  • Regeln sind Text, keine Zusicherung. Sie können missachtet werden; die Grenze setzen Sandbox und Rechte.
  • Skills im falschen Verzeichnis bleiben unsichtbar, ohne Fehlermeldung.
  • Stories nach Dateien statt nach Wirkung schneiden. Abhängigkeiten fallen dann erst beim Bauen auf.
  • Der Prozess wird auf jede Kleinigkeit angewandt und erstickt am eigenen Umfang; Artefakte, die niemand liest, sind reine Zeremonie.

Zum Seminar Spec-driven & Agentic Software Development