Share
Embed
"Voraussichtliche Ankunftszeit ungewiss" - KI-Einsatz im Legacy-Umfeld (socreatory Black Week)
Neuen Code mit KI-Unterstützung zu erzeugen ist längst im Entwicklungsalltag angekommen. Die nächste Station des AI Hype Trains scheint die vollständig automatisierte Modernisierung alter Softwaresysteme auf Tastendruck zu sein. Doch kommt dieser Zug wirklich pünktlich an oder fällt er (wie so oft) aus?
In diesem Webinar betrachten wir, wo generative KI uns beim Verständnis und bei der Erneuerung alter Systeme heute und morgen unterstützen kann. Wir sehen uns aber auch an, warum GenAI auf bestimmten Streckenabschnitten nie allein unterwegs sein darf und der Mensch somit die Modernisierungsfahrt übernehmen muss.
Markus Harrer
November 28, 2025
Transcript
49 slides
-
Softwaremodernisierung durch KI 2 ✓ AI zur Modernisierung ✗ AI
in Software Was geht? Was (noch) nicht? -
Warum ich in der Black Week? 5 Meine Trainings zu
Data & AI EST. 2018 Lehrplan- Update incoming -
Warum ist mir das Thema wichtig? 6 Mein langjähriger Interessensschwerpunkt
+ = KI-gestützte Verbesserung von Softwaresystemen -
Warum ist mir das Thema wichtig? 7 Meine derzeitige Mission
Dem Verbrennen dieses an sich potenzialträch- tigen Themas nicht einfach zusehen. -
KI als Retter für Legacy Systeme? 8 Legacy System Wisdom
Blower LogOmagic SellChef Die Zentrale The Sourcerer -
KI einfach mal machen lassen? 9 Claude Code: „Refactor everything“
Ähnliche Version: https://www.youtube.com/watch?v=MAnQ5u6JqdI (das war als Witz gedacht) Das steht nun hier, weil einige einmal nach dieser Demo gemeint hatten, es ginge wirklich so einfach Nö! -
Meine Sicht auf das KI-Thema 17 Weg vom Holz /
Code streicheln, hin zum Holz / Code bearbeiten früher heute Bild links: © Deutsche Fotothek , CC BY-SA 3.0 Bild Mitte: © Firma Altendorf, CC BY-SA 3.0 Unported morgen? (eher nicht*) Bild rechts: © Firma Anthon GmbH, fair use *da Fließbandarbeit != Individualentwicklung -
Ist der Mensch dann irgendwann raus? 18 Intelligenz Zeit Wir
alle müssen uns nicht mehr mit Legacy Systemen herumärgern Singularity: hypothetisches Ereignis, wo Technologie über die menschliche Kontrolle hinaus gewachsen ist. Absolut letztes Datum, wo wir uns mit Legacy herumärgern ;-) ;-) -
Prompt an Nano Banana Pro: „Generiere ein realistisches Bild aus
einem Kinofilm, in dem ein Terminator Roboter an einem Mainframe arbeitet und dabei sehr enttäuscht von der Arbeit wirkt.“ -
Meine typischen LLM-Einsätze 20 Adhoc Reverse Engineering Scratch Refactoring Sparring
Partner Doku-Generierung Werkzeugbau Verbessern von Bezeichnern klein groß LLM: Large Language Model -
Typisches Beispiel: Workbench 21 Von LLM- geschriebenes und von LLM-gestütztes
Tool zum Erstellen von Abkürzungs- verzeichnissen -
Tools kommen und gehen, Konzepte bleiben 23 → blicke hinter
die Kulissen und lerne, wie die Dinger funktionieren https://lexler.github.io/augmented-coding-patterns/ https://github.com/pguso/ai-agents-from-scratch/ Beispiele -
Breaking the Magician's Code: Magic's Biggest Secrets Finally Revealed 24
... using a combination of glob and grep. Claude Code is making use of agentic search “ Anthropic: Transform Legacy Systems into Strategic Assets - Code Modernization with AI https://www.youtube.com/watch?v=8qtSeQuNv0o -
25 Gibt später dann auch weniger Enttäuschung, wenn es wieder
einmal keine Silver Bullet war… -
26 The model is only as good as its context.
“ Anthropic: Transform Legacy Systems into Strategic Assets - Code Modernization with AI https://www.youtube.com/watch?v=8qtSeQuNv0o Und: -
Poisoning Context Clash (evil) 28 your old legacy code void
addCust(String name, String email) { Map c = new HashMap(); c.put("name", name); c.put("email", email); customers.add(c); System.out.println("Added cst: " + name); } your new legacy code void addCust(String name, String email) { customers.add(new Customer( name, email, new Date().toString(), UUID.randomUUID().toString(), null)); System.out.println("cst added: " + name); } LLMs might pick up and repeat unwanted inputs -
29 The model is only as good as its context.
“ Anthropic: Transform Legacy Systems into Strategic Assets - Code Modernization with AI https://www.youtube.com/watch?v=8qtSeQuNv0o & training data Und cont‘d: -
RPG vs. Python Trainingsdaten 30 Stand November 2025: 300 Fragen
zu RPG, > 2 Mio. zu Python RPG: Report Program Generator -
32 The model is only as good as its context.
“ Anthropic: Transform Legacy Systems into Strategic Assets - Code Modernization with AI https://www.youtube.com/watch?v=8qtSeQuNv0o & training data Und cont‘d II: & it‘s user -
Dont‘s 33 „Erstelle mir eine Liste an neuen Features für
mein System.“ „Schreib mir mal alle Qualitätsziele meiner Software auf.“ „Mach mal meinen Big Ball of Mudd weg.“ Zu spät: Das sind Entscheidungen der Menschen, nicht etwas, das im Code steht.. Zu groß. Das ist ein riskanter Transformationsprozess, kein einzelner Befehl. Zu vage. Ohne Domäne und Ziele kommt nur beliebige Fantasie raus. -
Manual Work Transformation Tools Guided AI AI assistants AI agents
Developers manually analyze, reason about, and fix issues (based on deep domain and system knowledge) Human-based creation of formal rules and recipes to perform consistent, automated code transformations Human-led detection of issues or anti-patterns, followed by localized AI-generated fixes within defined areas Human-guided AI-based task execution for fixing code in smaller areas / clearly scoped contexts Autonomous systems orchestrate analysis, transformation and validation of modernization workflows General Idea Special issues like redesign of critical parts of business logic or performance optimization Framework migrations, API upgrades, bulk renames, restructurings Identifying systemic issues and using AI to propose or apply localized solutions Summarizing code, generating tests & comments, renaming identifiers, writing code snippets Cleanup ideation, multistep refactoring planning, smaller bug fixing across code bases Possible Use Cases ++ + o - -- Control How much humans can be in the loop -- - - + ++ Risk How likely changes go wrong -- - - o ++ Breadth How wide the method can operate ++ ++ + o o Accuracy How well problematic AIn‘t AI KI-Einsatz bei Modernisierung passend dosieren -
Manual Work Transformation Tools Guided AI AI assistants AI agents
Developers manually analyze, reason about, and fix issues (based on deep domain and system knowledge) Human-based creation of formal rules and recipes to perform consistent, automated code transformations Human-led detection of issues or anti-patterns, followed by localized AI-generated fixes within defined areas Human-guided AI-based task execution for fixing code in smaller areas / clearly scoped contexts Autonomous systems orchestrate analysis, transformation and validation of modernization workflows General Idea Special issues like redesign of critical parts of business logic or performance optimization Framework migrations, API upgrades, bulk renames, restructurings Identifying systemic issues and using AI to propose or apply localized solutions Summarizing code, generating tests & comments, renaming identifiers, writing code snippets Cleanup ideation, multistep refactoring planning, smaller bug fixing across code bases Possible Use Cases ++ + o - -- Control How much humans can be in the loop -- - - + ++ Risk How likely changes go wrong -- - - o ++ Breadth How wide the method can operate ++ ++ + o o Accuracy How well problematic spots are addressed o ++ ++ o - Traceability How well actions can be tracked ~ - o o o Efforts How much work setup and use need -- ++ o - + Volume How much can be processed Light Version 1.2 Markus Harrer KI-Einsatz bei Modernisierung passend dosieren -
Manual Work Transformation Tools1 Guided AI AI assistants AI agents
Developers manually analyze, reason about, and fix issues (based on deep domain and system knowledge) Human-based creation of formal rules and recipes to perform consistent, automated code transformations Human-led detection of issues or anti-patterns, followed by localized AI-generated fixes within defined areas Human-guided AI-based task execution for fixing code in smaller areas / clearly scoped contexts Autonomous systems orchestrate analysis, transformation and validation of modernization workflows General Idea Special issues like redesign of critical parts of business logic or performance optimization Framework migrations, API upgrades, bulk renames, restructurings Identifying systemic issues and using AI to propose or apply localized solutions Summarizing code, generating tests & comments, renaming identifiers, writing code snippets Cleanup ideation, automated, multistep refactoring, bug fixing across multiple code bases Possible Use Cases Very High (humans drive everything) High (humans define transformation logic, execution is automatic) Medium (humans guide focus, agents generate and apply solutions) Low (humans initiate, roughly guide and review AI’s results) Very Low (agents make decisions and act with minimal intervention) Control How much humans can be in the loop Low to Medium (may suffer from outdated assumptions, overconfidence or unclear goals) Medium (when creating recipes) to none (during execution, but also depends on recipe quality) Low (with good problem localization that allows suggestions in limited contexts) High to medium (depends on scope and tasks) Very high to high (esp. with broad tasks and high autonomy + wrong tool use) Risk How likely changes go wrong Very narrow (limited by developers’ cognitive capacities) Narrow (limits defined by AST, LST or recipe capabilities) Narrow (scoped to recognizable patterns or metrics) Limited (current file, code block or interaction context) Very broad (across files, services and task types) Breadth How wide the method can operate Human-level quality (varies by experience) High (precise and deterministic) High (during analysis), medium (during fixing) Medium (but error-prone outside narrow, familiar contexts / training) Medium (depends on prompt quality, feedback loops, available tools) Accuracy How well problematic spots are addressed High (with peer review and diffs) Very high (rules, recipes, diffs) High (analysis steps, reports3, diffs) Medium (prompt history, diffs) Medium (prompts, execution paths, diffs) Traceability How well actions can be tracked Variable (depends on task difficulty) Low to medium4 (depends on reusing existing recipes or creating new ones) Medium (because data analysis needed) Medium (prompt writing, instruction definition, model tuning) First low (“it’s just prompts”), later high (MCPs, skills, orches- tration, validation, security, …) Efforts How much work setup and use require Limited due to the need for deep contextual understanding High-volume, homogeneous code bases Mid-sized codebases (with structural issues) Localized impact (limited by context window ) Large, heterogeneous systems (with recurring issues) Volume How much can be processed 1 e.g. Codemods, OpenRewrite, Rector 2 e.g. using jQAssistant, Semgrep, CodeScene 3 e.g. using Jupyter Notebooks 4 for new recipes, AI might be used Full Version 1.2 Markus Harrer MCP: Model Context Protocol AST: Abstract Syntax Tree LST: Lossless Semantic Tree KI-Einsatz bei Modernisierung passend dosieren -
Guided AI 37 Mensch fährt KI fährt mit “Keeping AI
on the leash.“ Andrej Karpathy -
39 Wer nur im Code sucht, wird auch nur dort
Probleme finden! 1 101 1 0 0 Aber auch: -
Interessant für mich ist vor dem Code 41 Kosten der
Änderung Phasen Anforderungs- klärung Analyse & Entwurf Entwicklung Test Produktion Hier kann man ordentlich Geld sparen! Boehm's Law -
→ → Code Interessant für mich oberhalb des Codes 42
Vorgehen Idee sub encrypt{my($p)=@_;my$a="s";my$b="x";my$c=rev erse($p.$a.$b.$p);my$d=0;for(split//,$c.$p.$ a.uc($b).reverse($p)){ $d+=ord($_)*3+length($c)%7 }return "MEGA".$d."END"}print encrypt($ARGV[0]); Ach, eigentlich wollten die nur Passwörter hashen Überdenken? Standardisieren? Verbessern? -
43 Wer nur den Code verbessern lässt, schafft Modern Legacy,
Siehe: https://www.innoq.com/de/blog/2025/10/modern-legacy-dank-ki/ Systeme, die dank KI-Unterstützung technisch hochmodern und vorbildlich dokumentiert wirken, deren eigentlicher Zweck aber längst fragwürdig ist. Ergo: -
Was können wissensbasierte LLMs eigentlich „wissen“? Image adapted from Michael
Scholz, Alfred Holl: Objektorientierung und Poppers Drei-Welten-Modell als Theoriekerne in der Wirtschaftsinformatik Oh, this is how it works! 45 World 1 Physical World (e.g. company) World 2 Subjective Reality (e.g. developers) World 3 Objective knowledge (e.g. docs, code) Externalization Perception Manipulation Interpretation -
Ab wann KI fit für Modernisierung? 47 “The best way
to predict the future is to create it.” Abraham Lincoln Peter Drucker Alan Kay -
t Ab wann KI fit für Modernisierung? 48 Guided AI
Productized AI Services One-Click-Legacy- Modernisierung Revival of the Golden Master Testing for AI Active Context Management ???