Passa al contenuto

l'AI agentica per mantenere la documentazione software sempre allineata al codice


una Tech Success Story di Corley, AWS ed Eutelsat

Leggi l'articolo

Un modello AI applicabile a qualsiasi organizzazione software. 



L'articolo in breve...

Un piccolo riassunto del nostro caso di successo

Un progetto sviluppato da Corley per Eutelsat che utilizza Amazon Bedrock AgentCore, RAG e Model Context Protocol per automatizzare la creazione e l’aggiornamento della documentazione tecnica a partire dal codice sorgente. Il progetto è stato raccontato da AWS in un approfondimento pubblicato sull’AWS Public Sector Blog.


L'articolo è disponibile, per intero e in lingua inglese, sul Blog AWS.

Cos'è il Documentation Drift?

Una delle sfide più insidiose per chi sviluppa layer applicativi.

Mantenere la documentazione software aggiornata è una delle difficoltà più comuni nei team di sviluppo. Il codice evolve continuamente, mentre la documentazione viene spesso aggiornata in un secondo momento, in modo parziale o, in alcuni casi, non viene prodotta affatto.

Il risultato è il cosiddetto documentation drift: una distanza crescente tra ciò che il software fa realmente e ciò che la documentazione descrive.

Per affrontare questo problema, Corley, AWS Advanced Partner, ha progettato e realizzato per Eutelsat una soluzione basata su AI agentica capace di analizzare autonomamente il codice sorgente, comprenderne il contesto e generare o aggiornare la relativa documentazione tecnica. 

Dal codice alla documentazione con un agente AI

Il principio alla base della soluzione è semplice: il codice diventa la source of truth della documentazione.

L'integrazione dell'AI

L'agente accede ai repository software, analizza il codice e lo confronta con la documentazione esistente. Quando una documentazione manca, è incompleta oppure è in contraddizione con il codice sorgente, il sistema può produrre una nuova versione aggiornata e pubblicarla direttamente negli strumenti utilizzati dai team.

La generazione non avviene però utilizzando esclusivamente un Large Language Model. La soluzione utilizza una Knowledge Base basata su RAG – Retrieval Augmented Generation – contenente documentazione di dominio, terminologia e informazioni sull'infrastruttura Eutelsat.

Questo permette all'agente di comprendere non soltanto il singolo repository, ma anche il contesto nel quale il software opera, utilizzando nella documentazione il linguaggio tecnico corretto e individuando relazioni e dipendenze tra sistemi differenti.

Un'architettura agentica costruita su AWS.

La soluzione utilizza Amazon Bedrock AgentCore come piattaforma per l'esecuzione e l'integrazione dell'agente, insieme ad Amazon Bedrock, Amazon S3, Amazon S3 Vectors, AWS Lambda, Amazon ECR ed EventBridge.

Grazie al Model Context Protocol (MCP), l'agente può inoltre interagire con gli strumenti già utilizzati dai team di sviluppo: nel progetto Eutelsat accede ai repository GitLab per analizzare il codice sorgente e ad Atlassian Confluence per leggere e aggiornare la documentazione.


L'agente è stato sviluppato utilizzando il framework Strands Agents e viene eseguito attraverso Amazon Bedrock AgentCore Runtime. L'approccio mantiene inoltre un elemento fondamentale di controllo: la documentazione prodotta automaticamente viene verificata attraverso un processo human-in-the-loop prima di diventare parte del patrimonio documentale del progetto.

I risultati

I risultati riportati da AWS mostrano l'impatto concreto dell'approccio:

circa 15–20 minuti di esecuzione dell'agente per repository, comprendendo analisi, generazione e pubblicazione della documentazione;

circa 1–2 ore di revisione umana per repository nel caso di documentazione generata da zero;

completamento dei 30 repository in circa una settimana di calendario;

costo AWS di pochi dollari per repository;

oltre il 90% di tempo risparmiato rispetto alla realizzazione completamente manuale della documentazione.


A titolo di confronto, AWS riporta che documentare manualmente un repository di media complessità può richiedere a un senior engineer da uno a tre giorni di lavoro: applicato ai 30 repository analizzati, significherebbe complessivamente tra 30 e 90 giornate/persona.


Conclusioni

Un modello applicabile a qualsiasi organizzazione software

Sebbene il progetto sia stato sviluppato nel contesto aerospace e satellite di Eutelsat, l'architettura è facilmente adattabile ad altri settori.

La combinazione di analisi agentica del codice, RAG con conoscenza specifica di dominio, integrazioni MCP, generazione automatica e revisione umana rappresenta infatti un pattern applicabile a qualsiasi organizzazione che sviluppi e mantenga un patrimonio software complesso.

Il progetto dimsotra come tecnologie vincenti e competenze possano guidare l'adozione AI in un contesto concreto, apportando significativi vantaggi non solo in termini di tempi ed effort lavorativo, ma anche nella qualità di ciò che si produce.


Gli Autori


Alessandro Fustini

Alessandro Fustini è responsabile dell'ingegneria del software presso Skylogic, società del Gruppo Eutelsat, dove guida i team di sviluppo e DevOps focalizzati su architetture a microservizi, sviluppo di piattaforme per comunicazioni satellitari e automazione di infrastrutture on-premise, cloud e ibride. 

Oleg Grytsynevych

Oleg è un Senior Solutions Architect del team Aerospace and Satellite di Amazon Web Services (AWS). Forte di una formazione nello sviluppo software, aiuta i clienti del settore aerospaziale a far crescere e accelerare le proprie attività grazie alle tecnologie cloud.

Walter Dal Mut

Walter Dal Mut è CTO e co-fondatore di Corley, AWS Advanced Partner. Opera negli ambiti dell'architettura cloud, della sicurezza, dei dati, dell'intelligenza artificiale e del machine learning (AI/ML) e dell'Internet of Things (IoT), supportando clienti aziendali e industriali nella progettazione e realizzazione di soluzioni cloud basate su AWS.