vibe coding e spec driven development

Vibe coding e Spec Driven Development: come l’AI si integra nel processo di lavoro

Bastano poche righe di prompt per generare un’applicazione funzionante.
Il problema non è più se l’AI sa scrivere codice — è capire quando fidarsi di quello che scrive.
La domanda vera è come integrare questi strumenti nella pipeline di sviluppo, senza che la velocità diventi il pretesto per perdere il controllo sul risultato.
Insieme a Valerio Faiuolo, CTO di Errepi Net, abbiamo messo a confronto due approcci: il vibe coding e lo Spec Driven Development (SDD). In entrambi i casi si parla di programmazione automatica — la differenza non è la tecnologia usata, ma il metodo con cui la si governa.

Cos’è il Vibe Coding

Il Vibe Coding è un processo iterativo in cui l’utente descrive ciò di cui ha bisogno attraverso un prompt breve e il modello produce autonomamente architettura e codice. Il processo è estremamente rapido: si dialoga con l’AI, si ottiene una soluzione e, se necessario, si correggono eventuali errori emersi durante l’esecuzione.

Una delle caratteristiche principali del Vibe Coding è la sua immediatezza nel fornire un progetto funzionante, spesso in pochi minuti. Questo rappresenta sicuramente un vantaggio per prototipi veloci ma un rischio quando il progetto deve arrivare in produzione.
L’AI può generare una soluzione che funziona perfettamente ma introdurre scelte architetturali difficili e complicate da manutenere nel tempo.
Se compare ad esempio un bug complesso e imprevisto, gli sviluppatori potrebbero trovarsi a dover studiare un codice che non hanno progettato direttamente, impiegando più tempo del previsto per orientarsi e intervenire correttamente.
L’intelligenza artificiale, inoltre, non è un sistema deterministico: a parità di richiesta può produrre soluzioni differenti.
Questa variabilità può essere un punto di forza quando si cercano approcci alternativi o si vogliono confrontare più soluzioni a un problema, ma diventa una sfida quando si tratta di garantire uniformità all’interno di un progetto di grandi dimensioni, dove la coerenza del codice è un requisito fondamentale.

SDLC e Spec Driven Development

Lo Spec Driven Development si capisce meglio partendo dal ciclo di vita tradizionale del software, l’SDLC.
Questo processo prende avvio dall’analisi dei requisiti e dalla stesura dei documenti di specifica, prosegue con la fase di implementazione — in cui il codice viene scritto manualmente — per poi arrivare al testing, volto a verificare che tutti i requisiti siano stati soddisfatti, e concludersi con il rilascio e la manutenzione del progetto.

Lo Spec Driven Development si colloca in continuità con la metodologia di sviluppo tradizionale e ne rafforza il profilo tecnico, delegando all’AI la fase di implementazione e testing.
È un approccio in cui si parte da una specifica chiara e condivisa prima di scrivere il codice. L’idea è definire con precisione cosa deve fare il sistema, quali sono i vincoli e quali risultati ci si aspetta, così da guidare l’implementazione e ridurre ambiguità ed errori. In pratica, lo SDD aiuta a rendere più esplicito il lavoro di progettazione: la specifica diventa il riferimento principale per sviluppatori e il codice nasce come conseguenza di decisioni già formalizzate.
Rispetto al processo di sviluppo tradizionale, le prime due fasi rimangono sostanzialmente invariate:

  1. Analisi e raccolta dei requisiti: vengono definiti gli obiettivi dell’applicazione e le funzionalità che il sistema dovrà offrire.
  2. Scrittura della specifica: si individuano funzionalità, architettura del sistema, tecnologie da utilizzare, quali standard rispettare, API.

La principale differenza riguarda invece le fasi successive:

3. Implementazione del codice: la generazione del codice viene affidata all’intelligenza artificiale, che opera nel rispetto della specifica definita.
4. Test automatici: all’AI viene delegata l’esecuzione della parte di unit test, integration test e smoke test per appurarne la corretta implementazione delle funzionalità previste dalla specifica.
5. Verifica: avviene attraverso un dual gate che integra due livelli di controllo: la valutazione umana e l’analisi generata dall’intelligenza artificiale.

Il ruolo dell’ingegnere nella pipeline SDD

Come per il Vibe Coding, anche in questo caso la scrittura del codice viene delegata all’intelligenza artificiale, ma sulla base di specifiche ben definite dall’Ingegnere.
Il suo compito non è quindi quello di produrre manualmente ogni artefatto, ma di costruire una specifica tecnica precisa e non ambigua da guidare il modello in modo affidabile e ripetibile, traducendo le esigenze emerse dalle interviste con il cliente, capace di tradurre obiettivi, vincoli, assunzioni e criteri di accettazione in istruzioni operative. In questa fase la sua attività è soprattutto di modellazione: stabilire lo scopo del progetto, individuare le dipendenze e mettere in evidenza i rischi che richiedono una verifica esplicita.
Per svolgere questo compito sono necessarie competenze solide di analisi dei requisiti, progettazione software, architettura, pattern di sviluppo e coding style. Deve essere in grado di scomporre un obiettivo complesso in componenti più piccole, definire interfacce chiare, valutare compromessi tra semplicità, manutenibilità e scalabilità, e scegliere soluzioni coerenti con il dominio e con il livello di rischio del prodotto.
Rimane inoltre fondamentale la fase di verifica: l’Ingegnere deve controllare che il codice generato rispetti le specifiche, i requisiti di sicurezza e le esigenze reali del prodotto.
Specifiche dettagliate migliorano anche le prestazioni dei modelli AI meno potenti, riducendo ambiguità e aumentando la qualità del risultato.

L’approccio di Errepi Net: AI sì, ma sotto controllo

Il nostro approccio, oggi, è ibrido.
Continuiamo a investire nella progettazione manuale ma usiamo lo Spec Driven Development per velocizzare la produzione del codice — mantenendo il controllo sull’intero processo di sviluppo.
I nostri tecnici stanno anche costruendo, progetto per progetto, un framework condiviso e linee guida comuni. L’obiettivo: uno stile uniforme, meno tempo speso a correggere, meno discrepanze tra un progetto e l’altro.
Non è un processo che si improvvisa.

“Le competenze necessarie per sostenere questo approccio non si costruiscono in modo superficiale richiedono esperienza nell’analisi dei requisiti, capacità di astrazione, sensibilità architetturale e dimestichezza con la qualità del codice osservata da più prospettive. Alcuni passaggi richiedono una sensibilità che solo l’esperienza può dare, soprattutto quando bisogna leggere tra le righe della specifica, interpretare i compromessi e riconoscere i punti deboli di una soluzione. A questo si aggiunge una conoscenza trasversale degli strumenti di lavoro, dei database, dei linguaggi di programmazione e degli algoritmi, così da poter leggere il sistema nel suo insieme e non solo nella singola implementazione. L’approccio IA-based dello SDD non è la morte delle competenze, anzi: costringe ad avere una base tecnica vasta per guidare bene il modello e per valutare con lucidità ciò che produce.”

Non è quindi una questione di quale tecnologia scegliere.
È una questione di metodo: sapere sempre, in ogni fase, chi decide e chi controlla.
Il codice lo scrive l’AI. La responsabilità resta nostra.

Condividi l'articolo

Potrebbe interessarti

MSP per le aziende: cos’è e quali sono i vantaggi
Negli ultimi anni, i servizi IT gestiti (Managed Services) hanno rivoluzionato il modo in cui le aziende affrontano l’innovazione tecnologica, diventando un pilastro essenziale per la trasformazione digitale. In un panorama sempre più complesso e competitivo, rappresentano la risposta ideale alle sfide infrastrutturali che le imprese moderne devono fronteggiare ogni giorno.
Errepi Net alla Camera dei Deputati con Confindustria Taranto
Paolo Sabatino e Rossana Turi, founder di Errepi Net, hanno partecipato al convegno intitolato “Taranto ieri, oggi e domani – Viaggio nella città pioniera del Mezzogiorno, laboratorio di resilienza e serbatoio di opportunità”, organizzato da Confindustria Taranto, in occasione degli 80 anni dell’associazione. L’evento si è tenuto nella Sala della Regina della Camera dei Deputati, e ha visto la partecipazione di importanti figure istituzionali e imprenditoriali.
Sostenibilità ed eco-design nel web: una scelta consapevole
La sostenibilità è diventata un tema centrale in molti settori, e il web design non fa eccezione. In particolare è importante integrare pratiche sostenibili non solo nelle operazioni quotidiane, ma anche nella presenza online. Questo articolo esplora come il concetto di eco-design si applica al mondo digitale e come Errepinet.it può supportare le imprese nella creazione di un futuro più sostenibile.