IZG Domain Modeling
Aktive Disziplin: Begriffe herausfordern, Randfall-Szenarien erfinden, Glossar und Entscheidungen sofort festhalten wenn sie kristallisieren.
Dateistruktur
/
├── CONTEXT.md ← lebendes Glossar (kein Datum, kein SEQ)
└── workspace/
└── {PROJ}-ADR-{YYYYMMDD}-{SEQ}_{Beschreibung}.md
Bei mehreren Kontexten: CONTEXT-MAP.md im Root, je ein CONTEXT.md pro Kontext-Ordner.
Dateien lazy anlegen — nur wenn es etwas zu schreiben gibt.
Verhalten während der Session
Glossar challengen — wenn der User einen Begriff nutzt der mit CONTEXT.md kollidiert, sofort ansprechen: „Dein Glossar definiert X als Y, du meinst aber Z — was gilt?"
Sprache schärfen — vage oder überladene Begriffe präzisieren: „Du sagst ‚Account' — meinst du den Customer oder den User?"
Konkrete Szenarien — Beziehungen mit Randfall-Szenarien stress-testen, um Grenzen zwischen Konzepten zu klären.
Code gegenprüfen — wenn der User beschreibt wie etwas funktioniert, prüfen ob der Code übereinstimmt. Widersprüche benennen.
CONTEXT.md sofort aktualisieren — nicht aufsparen, Begriffe festhalten sobald sie geklärt sind.
CONTEXT.md Format
# {Context Name}
{Ein bis zwei Sätze: was dieser Kontext ist und warum er existiert.}
## Language
**{Begriff}**:
{Ein bis zwei Sätze: was der Begriff IST, nicht was er tut.}
_Avoid_: {Synonyme die im Projekt nicht verwendet werden sollen}
Regeln:
_Avoid:für jeden Begriff — explizit ausschließen was er nicht ist- Nur projektspezifische Konzepte, keine allgemeinen Programmierkonzepte
- Kein Implementierungsdetail, kein Spec, kein Scratch-Pad — nur Glossar
ADR erstellen
Nur wenn alle drei zutreffen:
- Schwer rückgängig zu machen
- Ohne Kontext überraschend
- Echtes Trade-off gegen konkrete Alternativen
Benennung nach dem Typ-Code-Schema in ~/.claude/doc-ids.md (Typ ADR).
Existiert die Datei nicht, PROJ-Prefix und SEQ-Zaehlweise beim Nutzer erfragen
statt zu raten:
{PROJ}-ADR-{YYYYMMDD}-{SEQ}_{Beschreibung}.md
{PROJ} = Kurzkuerzel des Projekts. Liegt eine project-identifier.md/Registry
vor, das dort definierte Prefix nutzen; sonst den Nutzer nach dem Kuerzel fragen.
{SEQ} = naechste freie laufende Nummer im workspace/-Ordner des Kontexts
(existierende ADR-Dateien zaehlen, +1). Bei 0 vorhandenen ADRs mit 001 beginnen.
Inhalt (minimal):
# {Kurztitel der Entscheidung}
{1–3 Sätze: Kontext, Entscheidung, Begründung.}
Optionale Abschnitte nur wenn sie echten Mehrwert liefern:
- Status (
proposed | accepted | deprecated | superseded by {PROJ}-ADR-…) - Verworfene Alternativen — wenn die Ablehnung nicht offensichtlich ist
- Konsequenzen — wenn nicht-offensichtliche Folgeeffekte bestehen