LLM-gestützte Softwareentwicklung: Methodische Erkenntnisse aus der Praxis#

Eine Experimentserie zur Exploration neuer Entwicklungsansätze#

Seit der Verfügbarkeit leistungsfähiger Large Language Models stellt sich die Frage: Wie verändert sich der Softwareentwicklungsprozess? Wo liegen die praktischen Möglichkeiten – und wo die Grenzen? Diese Serie dokumentiert methodische Beobachtungen aus verschiedenen Experimenten und Entwicklungsprojekten, die mit LLM-Unterstützung realisiert wurden.

Als Comic#

Als Comic Als Comic Als Comic Als Comic

Übersicht der KI-Tools#

ToolFunktionGrößte Herausforderungen
Chart-ToolErstellt interaktive Diagramme aus CSV/Excel durch natürliche SpracheingabenAutomatische Fehlerkorrektur im generierten Code; intelligente Absichtserkennung aus Nutzeranfragen
ChatWebbasierte Schnittstelle für Dialoge mit lokal betriebenen LLMsSession-Management; Automatische Zusammenfassungen
Diagram-ToolGeneriert technische Diagramme (Flowcharts, Mindmaps etc.) aus natürlicher SpracheMehrstufige Validierungs-Pipeline; Mermaid-Syntax-Korrekturen
DocAutomatische Zusammenfassung von PDF/DOCX/ODT-DokumentenSynthese von Teilzusammenfassungen bei umfangreichen Dokumenten; Token-Limits
FlexKartierungGenerisches Informationsextraktionssystem für Webseiten; generiert strukturierte Steckbriefe durch prompt-basierte KonfigurationZwei-Phasen-Extraktion mit QS-Schicht (Extract + Validate); Entity-Normalisierung; Verwaltung vieler paralleler LLM-Aufrufe; Prompt-Dependencies
KI-UmfrageIntelligentes Umfrage-System mit automatischen Nachfragen bei vagen AntwortenClarity-Score-Bewertung (0-1); adaptive Nachfragengenerierung; Balance zwischen Nachfragen und Nutzerakzeptanz
ppt-helperEntwickelt Präsentationsstrukturen aus hochgeladenen DokumentenMehrere Agenten; iterative Verfeinerung ohne Inhaltsgenerierung
stt-helperWandelt maschinelle Transkripte in professionelle Dokumente umMehrstufige LLM-Workflows (3 Phasen); kontextbasierte Fachbegriffserkennung
Staffcost-ToolBerechnet Personalkosten für Drittmittelprojekte durch natürlichsprachliche Eingaben; kombiniert LLM-Parameterextraktion mit deterministischer TV-L-BerechnungExtraktion von Entgeltgruppen, Stufen und Zeiträumen aus Freitext; interaktive Rückfragen bei unvollständigen Angaben; Jahresscheibenberechnung mit Stufenaufstiegen
Style-ToolTransformiert Texte nach vorgegebenen StilprofilenExtraktion und Anwendung linguistischer Merkmale; Feinabstimmung durch Änderungsmuster-Analyse
StylishReglerbasierter Text-Stil-Editor mit zweistufigem Prozess (Neutralisierung → Stilisierung); 34 Regler für direkte Stilparameter-KontrolleIntensitätsstufen für deutliche Stilumsetzung; Prompt-Engineering für das ausführende LLM; Balance zwischen Kontrolle (34 Regler) und Usability
TextToolIterative Textbearbeitung mit vordefinierten Funktionen (Korrektur, Umformulieren etc.)Verlaufsmanagement (10 Schritte); Balance zwischen Standardfunktionen und individueller Anpassung
TranslateÜbersetzt Dokumente unter Beibehaltung von Struktur und FormatierungIntelligentes Chunking mit Kontexterhalt; parallele Verarbeitung; Glossarverwaltung
TalkToDocumentsDialogbasierte Dokumentenanalyse mit präzisen QuellenangabenVerwaltung vieler Dokumente; automatische Content-Aufbereitung; Quellenreferenzen
web-helperMigriert Webinhalte von Plone zu TYPO3 via JSON-VerarbeitungJSON-Strukturerkennung (verschiedene Content-Typen); LLM-gestützte Inhaltsanalyse; Base64-Bild-Handling

Der experimentelle Ansatz#

Die dokumentierten Projekte umfassen Tools unterschiedlicher Komplexität: Von Dokumenten-Verarbeitungssystemen über Übersetzungs-Pipelines bis zu Code-Analyse-Werkzeugen. Die Entwicklungszeiten bewegten sich zwischen einer und sieben Stunden für funktionsfähige Prototypen – ein Zeitrahmen, der in erheblichem Kontrast zu konventionellen Entwicklungsansätzen steht.

Dabei geht es explizit nicht um Produktivsoftware für kritische Systeme, sondern um explorative Entwicklung: Rapid Prototyping, Machbarkeitsstudien, interne Werkzeuge und spezialisierte Analyse-Tools. Der Fokus liegt auf der Frage, wie weit man mit systematischer LLM-Unterstützung kommt – und wo methodische Grenzen sichtbar werden.

Zentrale Erkenntnisse#

Spezifikation als Erfolgsfaktor: Über alle Projekte hinweg erwies sich die Qualität der Spezifikation als entscheidend. Je klarer funktionale Anforderungen, technische Abhängigkeiten und Architekturentscheidungen vorab herausgearbeitet wurden, desto fehlerfreier verlief die Umsetzung. Die Investition in Spezifikationsqualität – typischerweise 20 bis 90 Minuten – zahlte sich in drastisch reduziertem Implementierungsaufwand und erhöhter Code-Qualität aus.

Aktive Steuerung erforderlich: LLMs neigen zu komplexen Lösungen, die vermutlich in ihren Trainingsdaten enthalten sind, aber nicht immer sauber repliziert werden können. Das konsequente Einfordern einfacher Ansätze (KISS-Prinzip) erwies sich als notwendige Steuerungsaufgabe während der Spezifikationserstellung.

Strukturierung für Wartbarkeit: Klare Modularisierung mit Größenlimits pro Datei (typischerweise unter 1000 Zeilen) verbesserte sowohl die Code-Qualität als auch die Wartbarkeit durch LLMs. Größere Komplexität musste in handhabbare Teile zerlegt werden – eine Dekomposition, die LLMs noch nicht immer sinnvoll leisten können.

Veränderte Entwicklerrolle: Der Workflow verschiebt sich: Anforderungsklärung, Architekturentscheidungen und kritische Bewertung von LLM-Vorschlägen werden zu Kern-Kompetenzen, während Implementierungsdetails für diese Art Aufgaben weniger Gewicht haben.

Grenzen und Anwendungsfelder#

Die Projekte erreichten verschiedene Komplexitätsstufen: Von 2.000 Zeilen Code für fokussierte Tools bis zu fas 20.000 Zeilen für komplexere Systeme. Dabei wurde deutlich, dass die Methodik ihre Stärken im Bereich von Prototypen, Analyse-Werkzeugen und internen Utilities entfaltet – nicht jedoch für sicherheitskritische Produktivsysteme oder Komponenten mit hohen Qualitätsanforderungen.

Ein fundiertes Verständnis für Software-Architektur bleibt Voraussetzung: Nicht um selbst zu codieren, aber um realistische und kontrollierbare Lösungen zu spezifizieren und die Angemessenheit von LLM-Vorschlägen zu bewerten.

Ziel dieser Dokumentation#

Diese Serie fokussiert auf womöglich übertragbare Patterns und methodische Limitierungen, nicht auf die entwickelten Tools selbst. Die Erkenntnisse sollen anderen Entwickelnden und Teams helfen, LLM-gestützte Entwicklungsansätze realistisch einzuschätzen und effektiv einzusetzen.

Die dokumentierten Projekte zeigen: LLM-gestützte Entwicklung ist kein Ersatz für professionelle Softwareentwicklung, aber eine wertvolle Ergänzung für explorative Phasen, Rapid Prototyping und die schnelle Validierung von Tool-Ideen.


In den folgenden Beiträgen werden konkrete Projekte und ihre spezifischen methodischen Erkenntnisse detailliert dokumentiert.