Anhang B. Domainkarte AgentClinic
AgentClinic ist ein Lernprojekt, an dem der SDD-Zyklus demonstriert wird. Es handelt sich um eine kleine satirische Anwendung über eine „Klinik" für Software-Agenten.
Die Domain ist nicht nur zum Scherz da. Sie liefert genügend Entitäten, um Routen, Datenbank, Phasen, Überprüfungen und MVP-Erweiterung zu zeigen, bleibt dabei aber einfach.
Entitäten
| Entität | Bedeutung | Beispiel |
|---|---|---|
| Agent | Software-Assistent oder Bot | „SpecWriter", „BugFixer" |
| Gebrechen | wiederkehrendes Problem eines Agenten | „halluziniert API", „refactort ohne Erlaubnis" |
| Therapie | Möglichkeit, einem Agenten zu helfen | „strenges validation.md", „kurze Sitzung nach /clear" |
| Terminvereinbarung | Benutzeranfrage | Name, Nachricht, ausgewähltes Gebrechen |
| Rückmeldung | Feedback zur Klinik | Name, Nachricht, Datum |
Minimale Routen
Am Ende des Tutorials kann das Projekt folgende Routen haben:
| Route | Bedeutung |
|---|---|
/ | Startseite |
/agents | Agentenliste |
/agents/:id | Agentenkarte und zugehörige Gebrechen |
/ailments | Gebrechenliste |
/therapies | Therapieliste |
/appointments | Anmeldeformular |
/feedback | Feedback-Formular |
| /dashboard | einfaches Administrationspanel |
Nicht alle Routen sind in der ersten Phase nötig. Beim SDD geht es nicht darum, alles auf einmal zu bauen, sondern nach und nach überprüfbare Fragmente hinzuzufügen.
Mögliche SQLite-Tabellen
agents
id
name
description
ailments
id
title
description
therapies
id
title
description
agent_ailments
agent_id
ailment_id
appointments
id
name
message
ailment_id
created_at
feedback
id
name
message
created_at
Das ist kein verbindliches Schema. Es dient als Orientierungshilfe für Spezifikationen und Überprüfungsfakten.
Wie sich die Domain auf Phasen verteilt
| Phase | Lieferergebnis | Minimale Fakten |
|---|---|---|
| Hello Hono | Anwendung antwortet auf / | GET / gibt 200 zurück |
| Agenten und Gebrechen | Agentenliste und Agentenkarte | es gibt eine verknüpfte Gebrechenliste |
| Therapien | Seiten mit Behandlungsmöglichkeiten | Routen geben 200 zurück |
| Terminvereinbarung | Formular und Speicherung der Anfrage | ungültiges Formular wird abgelehnt |
| Rückmeldung | Feedback-Formular | die neuesten Rückmeldungen sind nach dem Speichern sichtbar |
| Administrationspanel | Zähler der Entitäten | Zähler stimmen mit der Datenbank überein |
Was nicht in die Lern-Domain gehört
Damit das Projekt lerngerecht bleibt, fügen Sie ohne separate Spezifikation nicht hinzu:
- echte medizinische Terminologie;
- reale personenbezogene Daten;
- Zahlungsszenarien;
- Autorisierung mit Rollen;
- externen E-Mail-Versand;
- komplexe Diagramme;
- Integrationen mit realen Diensten.
Wenn Sie eine solche Funktion hinzufügen möchten, machen Sie sie zu einer eigenen Phase und beginnen Sie mit requirements.md, plan.md und validation.md.
Domain-Wörterbuch für Spezifikationen
Verwenden Sie in allen Kapiteln und Spezifikationen einheitliche Begriffe:
- „Agent" und nicht durcheinander „Bot", „Assistent", „Modell";
- „Gebrechen" und nicht „Problem" in einer Datei und „Symptom" in einer anderen;
- „Therapie" und nicht „Lösung", wenn es um die Domain-Entität geht;
- „Terminvereinbarung" und nicht „Anfrage" ohne Erläuterung;
- „Rückmeldung" und nicht „feedback" im deutschen Text.
Technische Namen von Routen, Tabellen und Dateien lassen Sie auf Englisch, wenn sie bereits im Code verwendet werden.