Spec-Driven Design & KI: Das Comeback der Spezifikation
Die Entwicklung von Software für den öffentlichen Verkehr verändert sich kontinuierlich. Seit über 50 Jahren entwickeln wir bei MENTZ IT-Lösungen für Verkehrsunternehmen, Verbünde und Kommunen – von Fahrplanauskünften und Ticketing-Systemen bis hin zur komplexen Disposition von Fahrzeugen. Wer so lange in der IT-Landschaft verankert ist, erlebt praxiserprobte Methoden im Wandel der Zeit.
Früher gehörten umfangreiche Lasten- und Pflichtenhefte zum festen Standard jedes Softwareprojekts. Mit dem Siegeszug der agilen Entwicklung traten diese starren Dokumente jedoch in den Hintergrund: gelebter Code und flexible Anpassungen wurden zum zentralen Fokus. Heute erleben präzise Spezifikationen eine Renaissance – allerdings in völlig neuer Form. Mit dem Einzug generativer Künstlicher Intelligenz steht die Softwarearchitektur vor einem grundlegenden Wandel. Spezifikationen werden wieder unverzichtbar, um KI-Systemen klare Leitplanken zu geben. Im Zentrum dieser Entwicklung steht ein Ansatz, der auch bei MENTZ eine zentrale Rolle spielen wird: Spec-Driven Design (SDD).
Was ist Spec-Driven Design (SDD)?
Spec-Driven Design beschreibt ein Vorgehensmodell in der Softwareentwicklung, bei dem präzise Spezifikationen („Specs“) als primäre Datenquelle – als Single Source of Truth – für ein gesamtes Projekt dienen. Bevor die erste Zeile Anwendungscode geschrieben wird, werden das gewünschte Verhalten, die Datenstrukturen und die Schnittstellen eines Systems exakt definiert.
Um den Unterschied zu verdeutlichen, lohnt sich der Blick auf gewohnte Abläufe:
- Klassische Entwicklung: Entwicklerinnen und Entwickler schreiben die Logik direkt im Programmcode. Die Dokumentation entsteht häufig erst im Nachgang – oder gerät im Projektalltag in Vergessenheit.
- Traditionelle Lasten- und Pflichtenhefte: Hier wird die Dokumentation zwar vorab erstellt, liegt aber meist als statisches Textdokument vor. Sobald sich im Code Anpassungen ergeben, weichen Spezifikation und tatsächliche Implementierung rasch voneinander ab.
- Spec-Driven Design: Die maschinenlesbare Spezifikation ist das führende Element. Aus ihr werden der Anwendungscode, Schnittstellen-Beschreibungen, automatisierte Tests und die Dokumentation abgeleitet oder direkt generiert.
Ein praxisnahes Beispiel für diesen Ansatz, das Teams bei MENTZ bereits jetzt leben, ist die Nutzung von OpenAPI/Swagger für REST-Schnittstellen oder Prisma-Schemas für Datenbanken. Zunächst wird das Datenmodell oder die API-Struktur in einem standardisierten Format wie YAML oder JSON formuliert. Erst danach entstehen daraus automatisch die passenden Server-Stubs, Client-Bibliotheken und interaktiven Dokumentationsseiten.
Wie hängt Spec-Driven Design mit KI zusammen?
Künstliche Intelligenz hat den Engpass in der Softwareentwicklung verschoben. Leistungsfähige Large Language Models (LLMs) sind heute in der Lage, fehlerfreien Programmcode in Rekordzeit zu generieren. Die Voraussetzung dafür ist jedoch eine präzise Kontextgabe. KI-Systeme benötigen klare, unmissverständliche Leitplanken. Genau diese logischen und mathematischen Rahmenbedingungen liefert Spec-Driven Design.
Die Spezifikation als „Prompt Superior“
Anstatt einer KI vage Anweisungen zu geben („Erstelle eine Funktion zur Berechnung von Fahrpreisen im Waben-Tarif“), wird sie mit einer strukturierten Spezifikation gefüttert. Diese enthält das exakte Datenmodell, Validierungsregeln und Randbedingungen. Die KI übernimmt in diesem Prozess die Rolle des Ausführers, der die vorgegebene Struktur in sauberen Code übersetzt.
Der KI-Feedback-Loop
Die Verbindung aus KI und SDD funktioniert in beide Richtungen. Eine KI generiert nicht nur Code auf Basis von Spezifikationen, sondern unterstützt Teams bereits beim Erstellen der Specs selbst. Sie prüft Schnittstellenentwürfe auf Lücken, macht auf ungeklärte Sonderfälle aufmerksam oder schlägt strukturelle Verbesserungen vor, bevor die eigentliche Implementierung beginnt. Damit macht sie den Ansatz deutlich effizienter, als es früher die Lasten- und Pflichtenhefte waren, und ermöglicht die hohe Entwicklungsgeschwindigkeit, die heutzutage erwartet wird.
Vor- und Nachteile der Kombination aus SDD und KI
Die Verknüpfung von künstlicher Intelligenz und Spezifikationsfokus bietet erhebliche Chancen, bringt jedoch auch spezifische Herausforderungen für die Praxis mit sich.
| Vorteile der Kombination | Nachteile & Risiken |
| Höhere Entwicklungsgeschwindigkeit: KI-Werkzeuge wandeln Spezifikationen innerhalb von Sekunden in lauffähige Grundgerüste und Logikbausteine um. | „Garbage In, Garbage Out“: Unpräzise oder fehlerhafte Spezifikationen führen dazu, dass KI-Systeme in kurzer Zeit große Mengen fehlerhaften Code erzeugen. |
| Fokus auf Architektur: Teams verbringen weniger Zeit mit manueller Syntax-Tipparbeit und konzentrieren sich stärker auf Systemdesign, Geschäftslogik und Datenstrukturen. | Gefahr von Over-Engineering: Entwicklungsteams neigen mitunter dazu, Spezifikationen zu lange zu verfeinern, anstatt frühzeitig mit Prototypen in die Praxis zu gehen. |
| Konsistente Synchronität: Wird die Spezifikation angepasst, kann die KI den dazugehörigen Code sowie die Tests im gesamten Projekt automatisiert nachziehen. | Halluzinationen bei komplexer Logik: KI-Modelle können feine Details oder seltene Sonderfälle in einer Spezifikation missverstehen oder falsch auslegen. |
| Umfassende Testabdeckung: Aus definierten Randbereichen der Spezifikation lassen sich direkt passende Unit- und Integrationstests ableiten. | Veränderte Anforderungsprofile: Das Anforderungsprofil verschiebt sich. Das reine Schreiben von Code tritt in den Hintergrund, das Formulieren präziser Systembeschreibungen gewinnt an Bedeutung. |
Was das für Entwicklungsteams bedeutet
Damit ein Softwareunternehmen die Stärken von Spec-Driven Design und KI gewinnbringend nutzen kann, verändern sich die täglichen Aufgaben in den Entwicklungs- und Produktteams. Das reine Schreiben von Programmcode weicht zunehmend konzeptionellen und steuernden Tätigkeiten. Folgende Fähigkeiten gewinnen dabei stark an Bedeutung:
Kritisches Denken und systematisches Debugging
Da KI-Generatoren Vorschläge in hoher Frequenz liefern, müssen Entwicklerinnen und Entwickler in der Lage sein, diese Ergebnisse kritisch zu hinterfragen. Es geht darum, generierten Code schnell zu lesen, Architekturentscheidungen der KI zu bewerten und Fehler in komplexen Systemzusammenhängen zügig zu lokalisieren.
Anforderungsmanagement und Präzision in der Beschreibung
Die Qualität des Endprodukts hängt direkt von der Qualität der Spezifikation ab. Teams müssen lernen, Fachanforderungen so zu strukturieren, dass sie sowohl für Menschen verständlich als auch für KI-Systeme eindeutig interpretierbar sind. Das Vermeiden von Interpretationsspielräumen wird zur zentralen Kernkompetenz.
Kundenorientiertes Denken und Domänenverständnis
Gerade in Spezialdomänen wie dem öffentlichen Nahverkehr reicht rein technisches Wissen nicht aus. Wer Algorithmen für Bedarfsverkehre, E-Mobility-Umlaufplanungen oder multimodale Fahrplanauskünfte entwirft, muss die fachlichen Abläufe der Verkehrsunternehmen tiefgehend verstehen. Der direkte Austausch mit Kundinnen und Kunden rückt weiter in den Mittelpunkt, um reale Anforderungen in tragfähige Spezifikationen zu übersetzen.
Wer sich frühzeitig in diesen Bereichen weiterbildet – vom präzisen Requirements Engineering über Systemarchitektur bis hin zur kritischen Evaluation von KI-Ergebnissen -, ist optimal für die moderne Softwareentwicklung aufgestellt.
Fazit
Die Kombination aus Spec-Driven Design und künstlicher Intelligenz verändert die Softwareentwicklung nachhaltig. Die Erstellung von reinem Code ist im Entwicklungsprozess nicht mehr der primäre Flaschenhals – das tiefe Verstehen des fachlichen Problems und dessen exakte Beschreibung sind es. Spec-Driven Design unterstützt Entwicklerinnen und Entwickler dabei, den Fokus von rein ausführenden Tätigkeiten hin zu gestaltender Systemarchitektur zu verlagern. Für zukunftsfähige Software im öffentlichen Verkehr schafft dieser Ansatz die Grundlage für wartbare, sichere und verlässliche Systeme.