Salta al contingut principal
onext technology
IA Legacy 29 desembre 2025 - 18 min de lectura

GenAI per comprendre codi legacy: de l'experimentació a l'estàndard pràctic

Com la IA generativa està transformant la comprensió de sistemes heretats. Eines, casos reals, GraphRAG i la connexió natural amb Spec-Driven Development.

Jordi Garcia
Tech Lead a onext
Visualització de codi legacy analitzat per intel·ligència artificial amb grafs de coneixement

La major part de l'atenció a GenAI en desenvolupament de programari s'ha centrat en la generació de codi nou. Tanmateix, hi ha tant o més valor a comprendre codi existent, particularment en sistemes heretats grans i complexos on la documentació és escassa i els experts són difícils de trobar.

La nostra experiència en múltiples projectes demostra que la comprensió assistida per GenAI de sistemes legacy és ara un estàndard pràctic en lloc d'un experiment. L'impacte en productivitat és consistent i substancial.

Resum executiu

Eines com Cursor, Claude Code, Copilot, Windsurf, Cody i Swimm ajuden els desenvolupadors a descobrir regles de negoci, resumir lògica i identificar dependències en sistemes legacy. El cas de CodeConcise de Thoughtworks demostra reduccions del 66% en temps d'enginyeria inversa per a 15 milions de línies de COBOL.

El repte del codi legacy

La magnitud del problema

Segons l'enquesta de desenvolupadors de Stack Overflow de 2024, el 62% dels desenvolupadors citen el deute tècnic com la seva principal frustració. Un estudi d'IDC revela que gairebé la meitat de les empreses gasten de més en infraestructura digital a causa del manteniment de sistemes legacy.

Els números són contundents:

  • 2,9 milions de dòlars anuals per empresa en costos de manteniment legacy (SnapLogic)
  • 63% de developers dediquen 30-120+ minuts diaris a buscar respostes sobre el seu codebase (Stack Overflow, 65.000 participants)
  • 60% del temps de desenvolupament es gasta intentant entendre codi, no escrivint-lo

Per què GenAI per a codi legacy

Els sistemes legacy sovint no tenen documentació adequada, o la documentació existent està desactualitzada o és enganyosa. Els experts (SMEs) que entenen aquests sistemes són escassos i sovint estan sobrecarregats.

GenAI ofereix una solució escalable: pot analitzar milions de línies de codi, extreure patrons, identificar dependències i generar documentació comprensible. No substitueix els experts humans, però redueix dràsticament la seva càrrega i democratitza el coneixement.

Ecosistema d'eines

IDEs i assistents de codi amb IA

El mercat ha madurat ràpidament. Aquestes són les eines més rellevants per a la comprensió de codi:

Eina Fortalesa principal Context
Cursor Fork de VS Code amb IA nativa. Llegeix tot el projecte, arbres d'importació, variables Claude 4 Sonnet/Opus
Claude Code Terminal CLI. Mapeja estructura, fa triatge d'issues, genera PRs, executa tests 200k tokens
Windsurf IDE AI-first amb mode Cascade. Embeddings locals per a cerca en llenguatge natural Codebase complet
GitHub Copilot Líder de mercat. 46% de codi completat amb ~30% d'acceptació Integració IDEs
Aider CLI open source per a pair programming. Suporta múltiples models Edició directa

Plataformes especialitzades en comprensió de codi

Més enllà dels IDEs, existeixen plataformes dissenyades específicament per entendre codebases grans:

  • Sourcegraph Cody: Indexa tot el graf del repositori. Chat que abasta paquets i referències de símbols. Context fins a 100.000 línies. Reconegut per Gartner com a Cool Vendor 2024.
  • Swimm: Plataforma d'Application Understanding amb anàlisi estàtica. Crea un inventari viu de programes, mòduls i dependències. Autosincronització de la documentació amb els canvis de codi.
  • Unblocked: Intel·ligència de codi contextual. S'integra amb GitHub, Slack, Jira, Confluence. Va aixecar 20 M$ el 2025 per ajudar els developers a entendre el "per què" darrere del codi.
  • PocketFlow Codebase Knowledge: Framework open source de 100 línies. Genera tutorials estructurats des de repositoris amb diagrames Mermaid.

GraphRAG: l'enfocament avançat

Què és GraphRAG per a codi

Una tècnica particularment prometedora és l'enfocament de Retrieval-Augmented Generation (RAG) sobre un graf de coneixement del codi. El graf pot preservar informació estructural sobre el codebase més enllà del que un LLM podria derivar només del text.

Components clau de GraphRAG

  1. Parseig del codebase: Anàlisi sistemàtica usant Abstract Syntax Trees (AST) per extreure estructura semàntica
  2. Enriquiment amb LLM: Generació de descripcions, resums funcionals i metadades per a cada entitat
  3. Construcció del Knowledge Graph: Emmagatzematge en base de dades de grafs (Neo4j) amb relacions com calls, inherits, depends_on
  4. Consulta intel·ligent: RAG que recupera nodes rellevants i permet a l'LLM travessar nodes veïns per obtenir context addicional

Eines de GraphRAG

  • Code-Graph-RAG: Sistema RAG que analitza codebases multi-llenguatge usant Tree-sitter. Integració amb MCP Server per a Claude Code.
  • GitLab Knowledge Graph: Representacions estructurades i consultables de repositoris per potenciar GitLab Duo.
  • FalkorDB Code Graph: Visualització interactiva de com classes, mètodes i mòduls estan interconnectats.
  • GraphGen4Code: Toolkit d'IBM/WALA per construir knowledge graphs amb dades de StackOverflow integrades.

Cas d'estudi: CodeConcise de Thoughtworks

Context del projecte

Un dels principals fabricants d'automòbils va desenvolupar durant tres dècades un sistema per donar suport a processos de negoci de vendes. El sistema:

  • Corre en mainframe
  • Comprèn aproximadament 15 milions de línies de codi COBOL
  • Fa servir IDMS - un stack tecnològic per al qual els enginyers qualificats són escassos

L'objectiu era migrar a una arquitectura de microserveis abans de finals de 2025 per evitar problemes de llicenciament. Tanmateix, reescriure 15 milions de línies és una tasca significativa, i el programa anava endarrerit. El coll d'ampolla principal: el procés d'enginyeria inversa.

La solució: CodeConcise

CodeConcise és un accelerador intern de Thoughtworks inspirat en el concepte de Code-as-Data, on el codi es tracta i s'analitza de maneres tradicionalment reservades a les dades:

  • Pipeline d'ingesta: Parseja el codi en boscos d'AST, els emmagatzema en una base de dades de grafs (Neo4j), i estableix edges entre nodes
  • Pipeline de comprensió: Travessa el graf usant algoritmes com DFS amb backtracking per enriquir-lo amb explicacions generades per LLM
  • Reducció de soroll: Anàlisi granular que redueix el context innecessari, manté l'LLM enfocat i fa servir la finestra de context de manera eficient
  • Interfície Chatbot: RAG sobre el Knowledge Graph enriquit per respondre preguntes que típicament requeririen un SME

Resultats mesurables

"Abans del PoC, l'enginyeria inversa de 10.000 línies de codi normalment trigava 6 setmanes. Amb CodeConcise, estimem una reducció de dos terços: de 6 setmanes a 2 setmanes per mòdul."

Això es tradueix en un estalvi potencial de 240 anys-persona per a tot el programa de modernització del mainframe.

— Thoughtworks Case Study, 2024

GenAI per a la modernització de mainframes

El repte COBOL

Segons Gartner, per al 2027, les eines GenAI es faran servir per explicar aplicacions de negoci legacy i crear reemplaçaments apropiats, reduint els costos de modernització en un 70%.

Dècades de lògica de negoci codificada en COBOL fan difícil extreure, documentar i traduir a llenguatges moderns. GenAI ofereix capacitats específiques:

  • Extracció de regles de negoci: GenAI pot extreure automàticament regles, lògica i comportament del sistema analitzant codi legacy
  • Traducció de codi: Escala la traducció i el refactoring de COBOL o PL/I a llenguatges moderns com Java, C++ o Python
  • Generació de documentació: Crea documentació tècnica actualitzada que descriu la funcionalitat de cada component
  • Anàlisi de dependències: Mapeja les dependències dins del sistema per a més confiança a l'hora de fer canvis
  • Validació de cutover: Suporta mètodes de dual-run o shadow-traffic per verificar que els sistemes modernitzats funcionen com s'espera

Impacte en productivitat: l'evidència

Els estudis i benchmarks mostren millores consistents:

Activitat Millora Font
Documentació de codi 50% més ràpid McKinsey 2023
Escriptura de codi nou 50% més ràpid McKinsey 2023
Refactoring de codi 33% més ràpid McKinsey 2023
Migració a llenguatges moderns 73% més ràpid Slalom 2024
Enginyeria inversa (COBOL) 66% més ràpid Thoughtworks 2024
Costos de modernització 70% de reducció Gartner 2024 (projecció)

Segons McKinsey, els desenvolupadors que fan servir eines d'IA tenen el doble de probabilitats de reportar que se senten més feliços, realitzats i que entren regularment en estat de "flow".

Millors pràctiques per a la implementació

Criteris de selecció d'eines

  • Mida del context: Per a codebases grans (>100K línies), prioritzar eines amb finestres de context àmplies (200K+ tokens) o capacitats RAG robustes
  • Integració amb l'ecosistema: Avaluar la compatibilitat amb IDEs existents, sistemes de control de versions i eines de documentació
  • Seguretat empresarial: Verificar certificacions SOC 2, opcions de desplegament on-premise i polítiques de retenció de dades
  • Suport multi-llenguatge: Especialment crític per a entorns legacy amb COBOL, PL/I, o llenguatges menys comuns

Estratègia d'adopció recomanada

  1. Avaluació inicial: Identificar els sistemes legacy de més valor de negoci per a la modernització. Prioritzar àrees on GenAI pot lliurar més ROI.
  2. Proof of Concept: Començar amb un mòdul representatiu (5.000-10.000 línies) per validar l'efectivitat abans d'escalar.
  3. Construcció del Knowledge Graph: Per a codebases >50K línies, invertir en GraphRAG. L'esforç de setup escala amb la complexitat però el retorn és substancial.
  4. Integració amb els workflows: Connectar les eines de comprensió amb els pipelines de documentació, testing i CI/CD existents.
  5. Iteració contínua: Refinar prompts, enriquir context i actualitzar knowledge graphs a mesura que el codi evoluciona.

Extracció d'especificacions des de codi legacy

Una de les aplicacions més valuoses de GenAI per a codi legacy és l'extracció automatitzada d'especificacions. Això transforma sistemes "caixa negra" en documentació estructurada que pot guiar projectes de modernització amb precisió.

Què es pot extreure

  • Requisits de baix nivell: Documentació estructurada que els Business Analysts poden fer servir directament per derivar specs. El cas de CodeConcise va processar 1.500 mòduls COBOL generant documentació consumible per no-tècnics.
  • Regles de negoci: Extracció automàtica de condicions, validacions i fluxos de decisió. Frameworks com BREX combinats amb LLMs poden representar regles en format estructurat i executable.
  • Contractes implícits: Què espera cada funció com a entrada, què retorna, quins efectes secundaris té, quines excepcions pot llançar.
  • Mapes de capacitats: Descobrir què fa el sistema a nivell funcional (no tècnic). Útil per definir l'abast de la modernització i prioritzar per valor de negoci.
  • Dependències i fluxos de dades: Com es connecten els components, quines dades flueixen entre ells, i quins són els punts d'integració crítics.

El flux d'extracció de specs

El procés d'extracció segueix una seqüència estructurada que combina anàlisi automatitzada amb validació humana:

1. INGESTA DEL CODI LEGACY
   - Parseig mitjançant AST
   - Construcció del Knowledge Graph amb relacions entre entitats

2. ENRIQUIMENT AMB GENAI
   - Generació de descripcions semàntiques
   - Identificació de patrons de negoci
   - Extracció de regles

3. GENERACIO DE SPECS ESTRUCTURADES
   - Transformació a formats consumibles
   - User stories, criteris d'acceptació
   - Diagrames de flux abstractes

4. VALIDACIO AMB SMEs
   - Revisió per experts de domini
   - Confirmació de precisió i completitud
   - El chatbot de CodeConcise redueix aquesta dependència

5. SPECS DEFINITIVES
   - Documentació validada llesta per guiar el desenvolupament
   - Base per a testing i validació d'equivalència
          

Connexió amb Spec-Driven Development (SDD)

Aquesta capacitat d'extracció obre una connexió natural amb metodologies de Spec-Driven Development, creant un cicle complet per a projectes de modernització.

Reverse SDD: Legacy a Specs

  • Analitzar codi existent per extreure especificacions implícites
  • Documentar el comportament actual sense dependre exclusivament de SMEs
  • Identificar quines funcionalitats preservar, quines descartar, quines millorar
  • Crear una baseline documentada per validar l'equivalència funcional

Forward SDD: Specs a nou sistema

  • Fer servir specs validades com a contracte per al nou desenvolupament
  • Generar tests automatitzats des de les especificacions
  • Guiar la generació de codi amb context complet de requisits
  • Validar que el nou sistema compleix els requisits extrets

"El problema clàssic de modernització és: 'no podem reescriure perquè no sabem exactament què fa el sistema actual.' GenAI combinat amb SDD resol precisament aquest bloqueig, transformant el coneixement tàcit en especificacions explícites i accionables."

On onext pot aportar-te valor

Aquesta capacitat es pot estructurar com un servei de consultoria de "Spec Extraction from Legacy Code" amb els components següents:

  • Assessment inicial: Avaluació del codebase, identificació de la complexitat, estimació de l'esforç per a l'extracció
  • Configuració de la infraestructura: Setup del Knowledge Graph, pipelines d'ingesta, integració amb eines GenAI
  • Extracció i documentació: Execució del procés d'extracció, generació de specs en formats estàndard
  • Workshops de validació: Sessions amb SMEs per validar i refinar les especificacions extretes
  • Roadmap de modernització: Pla prioritzat basat en les specs validades, amb estimacions d'esforç
  • Transferència de coneixement: Capacitació de l'equip client en l'ús de les eines i el manteniment del Knowledge Graph

Rellevància especial: Aquest servei és especialment valuós per a organitzacions amb sistemes crítics legacy on el coneixement està concentrat en pocs experts, creant risc de negoci. L'extracció sistemàtica de specs democratitza aquest coneixement i habilita la modernització amb confiança.

Conclusions

GenAI s'ha convertit en una part essencial de com explorem i comprenem els sistemes legacy. La transició d'"experiment" a "estàndard pràctic" reflecteix la maduresa de l'ecosistema d'eines i l'evidència acumulada d'impacte positiu en la productivitat.

Les organitzacions que adopten aquestes tecnologies estan veient beneficis tangibles:

  • Reducció significativa en els temps d'onboarding
  • Menor dependència de SMEs escassos
  • Capacitat de prendre decisions informades sobre la modernització basades en la comprensió real del codi existent

El missatge clau: no es tracta només de generar codi nou més ràpid, sinó de finalment poder entendre i evolucionar el codi que ja tenim. Per a organitzacions amb dècades de sistemes legacy crítics, això representa una oportunitat transformacional.

Referències i recursos

  • Thoughtworks Technology Radar: "Using GenAI to understand legacy codebases" (2024-2025)
  • Martin Fowler: "Legacy Modernization meets GenAI" (Setembre 2024)
  • McKinsey: "Unleashing developer productivity with generative AI" (2023)
  • McKinsey: "The economic potential of generative AI" (2024)
  • Gartner: "Top Strategic Predictions for 2024 and Beyond"
  • Google Cloud Blog: "Accelerate mainframe modernization with Google Cloud AI" (2025)
  • AWS: "Mainframe Modernization with GenAI" (re:Invent 2025)
  • Microsoft DevBlogs: "AI Agents for COBOL Migration" (2025)
  • TechCrunch: "Unblocked raises $20M for AI to help devs understand codebases" (2025)
  • Neo4j Blog: "Codebase Knowledge Graph: Code Analysis with Graphs"
  • Sourcegraph: Cody Enterprise Documentation
  • Swimm: Application Understanding Platform Documentation

Tens sistemes legacy crítics que necessites modernitzar?

A onext combinem GenAI amb Spec-Driven Development per extreure especificacions del teu codi legacy i guiar la modernització amb confiança. Sense dependre exclusivament dels pocs experts que entenen el sistema.

Avaluació inicial sense compromís