Alla Codemotion AI & Tech Conference, Andrea Raponi, Technical Manager in Engineering e Software Craftsman, esplora come trasformare il potenziale dell’AI coding in un processo di sviluppo governabile, tracciabile e verificabile.
Immaginiamo di sviluppare il software che governa i motori di un aereo. Non basta che il codice funzioni durante una dimostrazione o che sia stato generato in pochi secondi dall’intelligenza artificiale. Dobbiamo sapere che cosa deve fare, in quali condizioni e come dimostrare che rispetta i requisiti.
È un esempio estremo, ma pone una domanda centrale anche nello sviluppo delle applicazioni aziendali: come possiamo fidarci del software generato dall’AI se non sappiamo verificare che abbia costruito ciò che gli abbiamo chiesto?
È da questa domanda che parte il talk di Andrea Raponi alla Codemotion AI & Tech Conference. Il suo intervento collega tre elementi — EARS, Walden e l’Agentic Software Delivery di EngCode— per mostrare come specifiche chiare, tracciabilità e verifiche eseguibili possano diventare parte integrante dello sviluppo software assistito dall’intelligenza artificiale.
Il limite del vibe coding: generare non significa verificare
Gli strumenti di AI coding permettono oggi di descrivere una funzionalità in linguaggio naturale e ottenere rapidamente codice, test e prime implementazioni. Il *vibe coding* porta questa dinamica all’estremo: si formula un’intenzione, si valuta il risultato e si procede per iterazioni.
È un approccio efficace per esplorare idee e accelerare la prototipazione. Ma quando il software deve andare in produzione, la velocità non basta.
Una funzionalità può sembrare corretta e fallire in condizioni non considerate. Un modello può interpretare una richiesta ambigua in modo plausibile, ma diverso da quello desiderato. E una suite di test può risultare verde senza coprire un requisito fondamentale.
Il problema, quindi, non è soltanto la qualità del codice generato. È la capacità di definire con precisione il risultato atteso e di verificarlo.
La sfida non è chiedere all’AI di scrivere più codice, ma metterla nelle condizioni di costruire il software giusto. Per farlo servono specifiche esplicite, collegamenti tra le diverse fasi dello sviluppo e criteri verificabili.
EARS: requisiti chiari, comportamenti verificabili
Il primo strumento presentato da Raponi è EARS, acronimo di Easy Approach to Requirements Syntax. È un approccio leggero alla formulazione dei requisiti che aiuta a rendere espliciti il comportamento atteso e le condizioni in cui deve verificarsi.
Espressioni come “il sistema deve essere veloce” o “deve gestire correttamente gli errori” possono sembrare sufficienti in una conversazione, ma lasciano aperte troppe interpretazioni. Che cosa significa esattamente “veloce”? Quali errori devono essere gestiti? In quali circostanze?
EARS aiuta a ridurre queste ambiguità attraverso una sintassi strutturata, senza richiedere necessariamente formalismi complessi. Il risultato è una specifica più utile sia per chi sviluppa sia per chi deve verificare il comportamento dell’applicazione.
Nel lavoro con gli agenti AI, questa chiarezza assume un valore particolare: un requisito ben formulato può guidare l’implementazione e fornire un riferimento concreto per costruire i test e valutare il risultato.
La specifica smette così di essere un documento da consultare all’inizio del progetto e diventa una guida operativa per tutto il processo di sviluppo.
Walden: collegare requisiti, design, task e test
Una specifica chiara è il punto di partenza, ma deve rimanere collegata al lavoro che ne deriva. In un progetto software, requisiti, decisioni architetturali, attività di sviluppo e test rischiano altrimenti di vivere in strumenti e documenti separati.
Quando intervengono gli agenti AI, ricostruire questi collegamenti diventa ancora più importante. Non basta sapere quale codice è stato prodotto: occorre capire a quale requisito risponde, quali scelte ne hanno guidato la realizzazione e come verificarne il comportamento.
Per affrontare questo problema, Raponi presenta Walden, un kernel CLI open source che permette di collegare requisiti, design, task e verifiche eseguibili.
Il principio è rendere esplicita la relazione tra ciò che il software deve fare e il lavoro necessario per realizzarlo. Se un requisito cambia, il team deve poter individuare le attività coinvolte e le verifiche da aggiornare, senza affidarsi soltanto alla memoria delle persone o alla cronologia delle conversazioni con l’AI.
La tracciabilità diventa così uno strumento di lavoro, non un adempimento documentale. Permette di ricostruire il percorso che porta dall’esigenza iniziale all’implementazione e alle evidenze che ne supportano la correttezza.
La domanda non è più soltanto «il codice funziona?», ma anche: «quale requisito soddisfa e come possiamo verificarlo?»
Agentic Software Delivery: dal singolo agente al processo di sviluppo
EARS e Walden affrontano la qualità delle specifiche e il collegamento tra gli artefatti di sviluppo. Il passo successivo è applicare questi principi all’intero *Software Development Lifecycle*, in un contesto nel quale gli agenti AI possono contribuire a più fasi del lavoro.
È il tema della terza parte del talk, dedicata ad EngCode, il framework di Agentic Software Delivery di Engineering.
Lo sviluppo agentico non consiste semplicemente nell’aggiungere un assistente all’editor o nell’automatizzare singole attività. Richiede di ripensare il processo affinché il lavoro degli agenti rimanga coerente con gli obiettivi del progetto e i risultati siano controllabili.
Come si dimostra che una modifica rispetta i requisiti? Come si ricostruiscono le decisioni che hanno portato a un’implementazione? E come si individuano gli effetti di un cambiamento sulle funzionalità esistenti?
Il framework di Engineering integra tracciabilità, verificabilità e controllo lungo il ciclo di vita del software, portando questi principi oltre la singola attività di coding.
Rappresenta una declinazione concreta dell’approccio dell’azienda all’AI sovrana, fondato sulla capacità di governare e adattare l’intelligenza artificiale al contesto delle organizzazioni, mantenendo il controllo su dati, modelli e decisioni.
L’obiettivo è inserire l’AI in un processo ingegneristico strutturato, nel quale le specifiche guidano il lavoro e le verifiche consentono di valutarne gli esiti. Un passaggio particolarmente rilevante quando si lavora in team, su sistemi complessi e su prodotti destinati a evolvere nel tempo.
In questa prospettiva, la produttività non si misura soltanto in righe di codice generate o in tempo risparmiato. Conta anche la capacità di mantenere il controllo sulle modifiche, comprenderne le motivazioni e verificare che il software continui a comportarsi come previsto.
L’autonomia dell’AI ha bisogno di metodo
Il messaggio che emerge dal talk di Andrea Raponi è netto: più aumenta la capacità degli agenti di intervenire sul software, più diventa importante strutturare il processo che ne guida il lavoro.
EARS, Walden e Agentic Software Delivery affrontano tre livelli dello stesso problema: definire requisiti comprensibili, mantenere i collegamenti tra specifiche e implementazione, e governare l’intero ciclo di sviluppo.
Non significa rinunciare alla rapidità del vibe coding né trasformare lo sviluppo in un esercizio burocratico. Significa evitare che la velocità di generazione venga confusa con la qualità del risultato.
Per sviluppatori, software architect e tech lead, la sfida è integrare l’AI senza perdere visibilità su ciò che viene costruito e sul perché. Per farlo, requisiti e verifiche devono diventare parte del flusso di lavoro, anziché controlli aggiunti quando il codice è già stato prodotto.
Un talk per portare l’AI coding nell’ingegneria del software
Andrea Raponi è Technical Manager in Engineering, dove si occupa di architetture software, tecnologie Cloud Native e Intelligenza Artificiale Generativa. Nel suo percorso ha lavorato tra infrastruttura e sviluppo, coltivando un interesse per l’open source, la developer experience e le tecnologie indipendenti da specifici vendor.
Il suo intervento, un talk di 30 minuti in italiano, di livello intermedio, si è rivolto a chi sta già sperimentando l’AI coding e vuole capire come inserirlo in un processo di sviluppo più solido.
Il punto non è stabilire quanto codice possa produrre un modello, ma come trasformare quella capacità in un risultato affidabile: specificato, tracciabile e verificabile.
Alla Codemotion AI & Tech Conference, Raponi ha proposto quindi una prospettiva concreta sul futuro dello sviluppo software: passare dal codice generato al software di cui possiamo verificare la conformità ai requisiti.



