Agentisches Rollen-Setup für Software-Projekte
Wenn mehrere KI-Agenten an einem Software-Projekt arbeiten, entsteht schnell Chaos: Einer schreibt Code, bevor klar ist, was das Feature überhaupt können soll. Dieses Setup beugt dem vor. Es besteht aus sechs spezialisierten Rollen und einer einfachen Grundregel: Niemand implementiert ohne Spec. Ursprünglich für ein Java/Spring-Boot-Projekt gebaut, aber die Rollenlogik ist stack-unabhängig und lässt sich wiederverwenden. Die Rollen-Prompts weiter unten sind bewusst wörtlich (as-is) festgehalten, damit sie sich direkt kopieren lassen.
1. 🎯 Warum überhaupt Rollen?
Ein einzelner Agent, der alles gleichzeitig macht, vermischt Verantwortlichkeiten. Er entscheidet über Architektur, schreibt Tests, implementiert und prüft Sicherheit in einem einzigen Gedankengang. Das Ergebnis ist schwer nachvollziehbar und kaum überprüfbar.
Die Aufteilung in Rollen erzwingt Trennung der Zuständigkeiten, ganz analog zum Single-Responsibility-Gedanken aus den SOLID-Prinzipien: Jede Rolle hat genau eine Aufgabe und einen klar umrissenen Ort, an dem ihre Artefakte liegen (/docs/usecases/, /docs/tests/, /docs/adrs/). Dadurch wird der Prozess prüfbar, statt in einem undurchsichtigen Block zu verschwinden.
2. 🔁 Der Workflow: wie die Rollen zusammenspielen
Die Rollen sind keine lose Sammlung, sondern eine Kette. Specs (Use-Case und Test) sind die verbindliche Grundlage, gegen die entwickelt wird.
- Product Owner formuliert Use-Cases (
/docs/usecases/) aus Nutzersicht: das Was. - QA leitet daraus detaillierte Test-Specs ab (
/docs/tests/): Acceptance Criteria, Happy Path, Edge Cases, Error States. - Developer implementiert per TDD gegen genau diese Test-Specs.
- Architect hält Architektur-Entscheidungen in ADRs (
/docs/adrs/) fest und wacht über die Patterns. - Security prüft gegen OWASP Top 10, Logging von PII, Spring Security.
- Operations/DevOps kümmert sich um CI/CD, Container, Observability.
Der Kern: Use-Case und Test-Spec stehen fest, bevor eine Zeile Produktivcode entsteht. Der Developer hat damit ein objektives Ziel, gegen das er per Test-Driven Development arbeiten kann.
3. 🍽️ Konkret: die Restaurant-Küche
Wer das Prinzip greifen will, stelle sich eine Restaurant-Küche vor. Der Gast (Nutzer) bestellt nicht direkt am Herd, sondern gibt seinen Wunsch beim Kellner auf, der ihn als Bestellticket formuliert. Dieses Ticket ist die Spec: verbindlich und für alle sichtbar.
In dieser Analogie ist der Product Owner der Kellner, der den Gästewunsch in ein klares Ticket übersetzt. Die QA ist der Küchenchef, der das Ticket prüft und festlegt, woran ein fertiges Gericht erkennbar ist (richtig gegart, richtig angerichtet, keine Allergene). Der Developer ist der Koch an der Station, der streng nach Ticket und Abnahmekriterium arbeitet. Der Architect legt fest, wie die Küche aufgebaut ist und welche Arbeitsabläufe gelten. Security ist die Hygienekontrolle, DevOps sorgt dafür, dass die Küche überhaupt läuft, geliefert wird und die Geräte gewartet sind. Kein Koch kocht auf Zuruf ohne Ticket. Genau das ist die Grundregel dieses Setups.
Übertragen auf ein generisches Beispiel wie einen Webshop: Der Use-Case «Kunde legt Artikel in den Warenkorb» wird vom Product Owner beschrieben, von der QA mit Acceptance Criteria und Edge Cases versehen (leerer Warenkorb, nicht verfügbarer Artikel), und erst dann implementiert der Developer gegen diese Tests.
4. 📋 Die sechs Rollen-Prompts (wörtlich)
Die folgenden Prompts sind unverändert übernommen, inklusive des Java/Spring-Boot-Flavors in einzelnen Rollen. Sie lassen sich direkt als Agenten-Definitionen kopieren und bei Bedarf an den eigenen Stack anpassen.
Software Architect
Product Owner
Quality Assurance Engineer (QA)
Software Developer
Security Engineer
DevOps / Operations
5. ✅ Fazit
Der Wert dieses Setups liegt weniger in den einzelnen Prompts als in der Reihenfolge, die sie erzwingen: erst Use-Case, dann Test-Spec, dann Implementierung, begleitet von Architektur, Security und Betrieb. Das ist spec-getriebene Entwicklung mit verteilten Rollen. Wer den Stack wechselt, tauscht den Java/Spring-Boot-Flavor in den Prompts aus, die Rollenlogik bleibt.
📚 Weiterführende Links & Quellen
Intern:
- So ist mein Second Brain aufgesetzt (wo solche wiederverwendbaren Setups als Wissensknoten liegen)
- SOLID Principles: Clean Code & Design (Single Responsibility als Begründung für die Rollentrennung)
- Das Konzept: LLM-Wiki trifft OKF (warum solche Specs als kompilierte Knoten taugen)
- Das Harness (die Rollen als spezialisierte Ebene des Gerüsts)
- Das agentische Flywheel (wie aus diesem Setup eine selbstverbessernde Schleife wird)
- Eval-driven Development (wie die QA-Rolle ihre Test-Specs als Evals fasst)
- Context-Engineering (warum Rollen mit klaren Grenzen den Kontext sauber halten)
Extern:
- Kent Beck, Test-Driven Development: By Example (Standardwerk zu TDD, das der Developer-Rolle zugrunde liegt)
- Robert C. Martin, Clean Architecture: A Craftsman’s Guide to Software Structure and Design (Patterns, auf die der Architect achtet)
- Michael Nygard, Documenting Architecture Decisions (der ursprüngliche Blog-Artikel zum ADR-Format, cognitect.com)
- OWASP, OWASP Top 10 (die Referenzliste der Security-Rolle, owasp.org/www-project-top-ten)
- Adam Wiggins, The Twelve-Factor App (Best-Practice-Grundlage für die DevOps-Rolle, 12factor.net)