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.
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.
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
- Parseig del codebase: Anàlisi sistemàtica usant Abstract Syntax Trees (AST) per extreure estructura semàntica
- Enriquiment amb LLM: Generació de descripcions, resums funcionals i metadades per a cada entitat
- Construcció del Knowledge Graph: Emmagatzematge en base de dades de grafs (Neo4j) amb relacions com
calls,inherits,depends_on - 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.
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
- 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.
- Proof of Concept: Començar amb un mòdul representatiu (5.000-10.000 línies) per validar l'efectivitat abans d'escalar.
- 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.
- Integració amb els workflows: Connectar les eines de comprensió amb els pipelines de documentació, testing i CI/CD existents.
- 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