KI-gestützte Arbeit mit Legacy

Wenn Legacy auf Agenten trifft

Die KI-Welt der
Zukunft ist schon da

🔌 MCP (Model Context Protocol)

Das erste echte SOA - Universal-Protokoll für AI-Tool-Integration

🤝 A2A (Agent-to-Agent)

Kontinuierliches Aushandeln statt starrer APIs

🧠 Universeller Wissenszugriff per Agenten und Rag

Alles ist jederzeit verfügbar - strukturiert & unstrukturiert

Adoptiert von Anthropic, OpenAI, Google und 50+ Technologiepartnern

Währenddessen, zuhause ...

Wir haben da noch was...

"Legacy = Java, Ruby on Rails, PHP, C++"

Die unbequeme Wahrheit

  • 📟 Windows-Desktop-Lösungen ohne APIs
  • 🖥️ Outdated Libraries im EOL
  • 🏢 COBOL auf Mainframes
  • 🔧 Branchenlösungen mit
    proprietären Protokollen
  • 💼 D365-Setups mit versteinerten Prozessen
  • 🗄️ Datenbanken ohne Dokumentation

Der Eisberg unter der Wasseroberfläche

Das Modernisierungs-Dilemma

📊 Legacy-Komplexität = Business-Komplexität

Jahrzehnte gewachsene Geschäftslogik

🔒 Versteckte Geheimnisse

Undokumentierte Sonderregeln, Edge Cases

👥 Fehlende Experten

Wissen in Rente, Dokumentation nicht existent

Resultat: Modernisierungsprojekte dauern Jahre, nicht Monate

Die reale Architektur
der Gegenwart

┌─────────────────────────────────────────────┐
│  Moderne Services  │  Legacy Systeme        │
│  - Microservices   │  - Mainframe           │
│  - Cloud APIs      │  - Desktop-Apps        │
│  - REST/GraphQL    │  - Batch-Jobs          │
│                    │  - FTP-Schnittstellen  │
├────────────────────┴────────────────────────┤
│         Keine gemeinsame Sprache            │
│      Keine einheitlichen Interfaces         │
│        Daten in 20 verschiedenen            │
│          Formaten und Systemen              │
└─────────────────────────────────────────────┘

KI!

Der Feenstaub der Neuzeit!

Womit arbeitet Ihr?

Evolution der Coding Agents

1️⃣ Generation: Copilot & Co

"Intelligente Autocomplete"

2️⃣ Generation: Windsurf, Cursor

Assistenten - aber 84% machen YOLO: Lassen Agenten einfach arbeiten

3️⃣ Generation: Agentische Systeme, Claude Code 2ff

Autonomer Einsatz unter menschlicher Aufsicht

Das Problem: Alle produzieren "Autogenerated Bullshit"

Pattern Agentic Development

1️⃣ The Fleet: 3-5 Sessions parallel

Als Entwickler arbeitet ich auf 3-5 Git-Worktrees parallel

2️⃣ Qualität schlägt Tempo

Lieber ein gutes Model mit mehr Qualitätschecks als schneller Vibe

3️⃣ Planen, Planen, Implementieren, Validieren, Validieren

Die Arbeitsverteilung ändert sich, das implizite Durchdenken und 

Prüfen wird explizit

Auto-
gener-
ated

Crap

📋 Was die Requirements sagen

"Implementiere User Authentication"

🤖 Was der Agent denkt, was er macht

"Ich habe ein Login-System gebaut"

👤 Was der Nutzer denkt, was der Agent macht

"Er baut mir eine sichere Auth-Lösung"

⚠️ Was in Wahrheit passiert ist

Loginform, keine Datenbank, keine Session-Verwaltung

Das Problem

  • Agenten übersehen Instruktionen und Regeln
  • Sie ignorieren implizite Schlussfolgerungen
  • Im Schnitt 4-5 Iterationen 
    "Prüfe nochmal die Spezifikation" nötig

Agentische Systeme/Claude Code 

1️⃣ "Deep Agents" mit Sandbox, Tasks & Subagents

Trajectory durch Tasks, universelles Tooling mit Sandbox und MCP

2️⃣ RAGged Environment-Wissen

Doku + Source + Struktur + Architektur

3️⃣ SubAgenten nach Bedarf

Von trivialen "Doku ist immer Aktuell"-Agenten zu automatischem
Issue-Fixing in SonarQube

Arbeiten mit statistischen
Denksimulatoren

📚 Mehr Spezifikation = Mehr Verwirrung

Je detaillierter die Anweisungen, desto mehr übersieht der Agent

🤖 Multi-Agenten multiplizieren das Problem

Jeder Agent hat sein eigenes unvollständiges Bild

🔄 Die Lösung ist NICHT mehr Prompting

Sondern programmatische Verifikation und Iteration

Arbeiten mit statistischen
Denksimulatoren

"Nach dem vierten Durchlauf stimmt
     es vielleicht - aber vielleicht der ganze
     Ansatz war falsch"

Konsequenz: Wir brauchen Verifikations-Loops, nicht mehr Prompts

Verifikations-getriebene Modernisierung

Modernizer 1

  • LLM mit 
    • Prompting für automatische Modernisierung
    • Manufactored Context
    • OpenWrite-Integration
    • Test-Generierung
    • Self-Healing zur Korrektur
    • File-System- und Execution-Support
  • Update über 15 Jahre: SpringMVC nach Spring Boot
    • a) geht
    • b) wirklich hässliche und schlechte Spring Boot Software

Verifikations-getriebene Modernisierung

Modernizer 2

  • Private Beta Claude Code:
    • wie alle:Reverse-Engineeren von Claude Code, in Python
  • Zeitgeist 2024 & Early 2025 
    • Spec-Driven
    • Coding Swarm statt Einzelagent
    • Toolbuilder: kann sich selbst Tools schreiben & registrieren
    • (kein MCP, weil gab es noch nicht)
  • Flexibler als Modernizer 1, aber ... 
  • hat sich ständig verlaufen und unsinn angefangen.

Verifikations-getriebene Modernisierung

Modernizer 3

  • Deep Agents: 
    • Workflow-Engine mit Tasklist für Trajectory
    • Claude Agent SDK statt eigener Coding Agents
  • Analysephase in Erwachsen
    • TreeSitter und LSP-Support
    • Reverse Big Picture Event Storming
    • Automatisierte TechDD und Arc42-Doku

Phasenmodell

Phase 1: Verstehen 

  • Automatische Code-Dokumentation
  • Business Rules Extraktion via CodeAnalysisMCP
  • Dependency Mapping & Architecture Discovery

Phase 2: Bewerten 

  • Technical Debt Assessment
  • Antipattern-Erkennung
  • Domain Model Extraktion

Phase 3: Planen

  • Abhängigkeitsbaum erstellen
  • Atomare Schritte Identifzieren
  • Verifikations-Kriterien pro Schritt

Phase 4: Ausführen mit Verifikationsloop

  1. Test-Definition → Test-Verifikation
  2. Implementation → Fehler → Retry → Erfolg
  3. Doppel-Check → Lücken finden → Nachbessern
  4. Bei Scheitern: Supervisor → Strategie anpassen

Die innere Schleife

Beispiel: PHProjekt 6 Migration

Einfach mal 15 Jahre Entwicklung aufholen

Die Herausforderung

  • PHP-Version gibt es nicht mehr
  • die stabilen Versionen sind nicht kompatibel
  • das Framework gibt es nicht mehr
  • die Software läuft auf keiner aktuellen Version

Mit Claude Code alleine: Autogenerated Bullshit
Mit Verifikation: Funktionierende Migration

PHProjekt 6: Die Schmerzen

Warum schrittweise Migration essentiell ist

PHP 5.3 → PHP 5.6 → PHP 7.4 → PHP 8.4
   ↓         ↓         ↓         ↓
Library A  Library B  Library C  Modern
nur hier   updated    replaced   Stack

Das Problem der Abhängigkeiten

  • Library A: Nur kompatibel mit PHP 5.x
  • Library B: Brücken-Version für PHP 5.6-7.x
  • Library C: Ersatz nötig für PHP 8.x

Die Lösung

  1. Dependency-Graph vollständig analysieren
  2. Migrations-Pfad mit kleinsten gemeinsamen Nennern
  3. Jeder Schritt getestet und lauffähig
  4. Verifikation verhindert "es läuft (nicht)"-Illusion

Tool-Stack

Verifikations-getriebene Modernisierung

Modernizer 3

  • Aber: Jede Welt sieht anders aus
  • Extraktionen  von 
    • Gui-Elementen
    • Datenbankeinträgen
    • APIs, GRCP, ... 
  • Transformationen  
    • von VB6 nach C#.net
    • von 5250 Terminals nach Web
    • von vaadin nach react 
  • ... sind spezialisiert, nicht generalisiert, das gilt auch für Validatoren

Development mit AI

Kein Produkt, sondern eine Infrastruktur

  • Plattform: 
    • Automatische Dokumentation 
    • Automatische Dokumentation in MCP
    • Sourcecode in MCP indiziert 
    • Zentrale AI-Dienste im Unternehmen
    • Claude-Marketplace und lokale Registry
    • Roboter für Doku, Fixes, Reviews, ... 
  • Kultur: 
    • Coding Dojos, shared AGENT.md und CLAUDE.mds
    • Shared KI-Konfigurationen

Development mit AI

Verlässliche Modernisierung

  • Extraktoren: 
    • Lesen alle relevanten Entitäten als Checklisten aus 
    • Löst die Abhängigkeiten auf 
  • Transformatoren: 
    • Nicht für alles in Vaadin gibt es ein React-pendant - Vollständigkeit der Transformatoren auf Basis der Extraktoren sicherstellen
  • Validatoren: 
    • gibt es für jedes Formularelement X eine analoge Funktionalität im AB-Test

Agent vs Prozedural

!Alles automatisierbar

  • Level 0: Statische Agents
    Fest programmiert, keine Anpassung
     
  • Level 1: Reactive Agents
    Eingabe → Ausgabe, einfaches Feedback
     
  • Level 2: Deliberative Agents
    Planning, internes Weltmodell
     
  • Level 3: Learning Agents
    Lernen aus Erfahrung, Strategieanpassung
     
  • Level 4: Metacognitive Agents
    Self-Evaluation, Meta-Learning Level 5: Self-Evolving Agents Autonome Architektur-Evolution  

Lernen

Erfolgsmetriken

Was wir beobachten

✅ Positiv

  • Geschwindigkeit: Faktor 5-20 schneller
  • Erfolgsrate: 90-95% der arbeit ist automatisch, aber 100% mehr Arbeit
  • Qualität: Konsistente Patterns, bessere Tests

⚠️ Zu beachten

  • KI-Kosten: X.XXX €/Monat je nach Projektgröße
  • Lernkurve: Teams brauchen Einarbeitung. 20 Jahre Erfahrung helfen nicht.
  • Grenzen: Nicht alles ist automatisierbar

Wann funktioniert agentische Modernisierung?

✅ Besonders gut für

  • Schlecht dokumentierte Systeme - Agenten reverse-engineeren
  • Legacy mit unklaren Dependencies - Systematische Analyse
  • Unstrukturierter Code - Agenten erkennen Patterns
  • Veraltete Libraries - Agenten recherchieren Alternativen

Warum gerade für "schwierige" Systeme?

Menschen vs. Agenten bei Sisyphus-Aufgaben

  • Code-Analyse: Agent liest 100.000 Zeilen ohne Ermüdung
  • Dokumentation: Agent erstellt konsistente Docs
  • Refactoring: Agent wendet Patterns systematisch an
  • Test-Erstellung: Agent schreibt Tests für jede Funktion

Copy of Modernisierung mit AI 2026

By Johann-Peter Hartmann

Copy of Modernisierung mit AI 2026

  • 60