Come scegliere un'agenzia di sviluppo software senza restare bloccati per mesi
Il preventivo è arrivato in 48 ore. Avrebbe dovuto essere il primo segnale.
Una PMI lombarda, settore manifatturiero, ha bisogno di un gestionale su misura. Niente di fantascientifico: integrazione con il magazzino, qualche automazione sugli ordini, un pannello di controllo decente. Il responsabile IT manda tre richieste di preventivo. Due agenzie rispondono dopo due settimane con domande puntuali. La terza risponde il giorno dopo con un PDF da dodici pagine, grafica curata, prezzo fisso, tempi certi. Indovinate quale hanno scelto.
Sei mesi dopo, il progetto è fermo. Il software non gira come promesso, le modifiche costano extra, e ogni riunione finisce con "dobbiamo allinearci internamente". Nel frattempo, il gestionale vecchio continua a girare su un PC del 2014 con Windows 7.
Questo non è un caso isolato. È uno schema. E si poteva evitare.
Nessun capitolato tecnico? Corri. Non camminare. Corri.
Il capitolato tecnico è il documento in cui si descrivono in modo strutturato le funzionalità richieste, i vincoli tecnologici, le integrazioni con sistemi esistenti, i criteri di accettazione. Non è burocrazia. È la differenza tra "ci siamo capiti" e "pensavo intendessi un'altra cosa".
Quando un'agenzia ti manda un preventivo senza averti prima chiesto di costruire insieme questo documento, o senza produrne uno in autonomia come parte del processo, sta sostanzialmente quotando qualcosa che non sa ancora cosa sia. Come se un architetto ti desse il computo metrico prima di vedere il terreno, la planimetria e capire quante persone vivranno in casa. Il risultato è un numero che non significa nulla, se non "ci sentiamo dopo".
La fase di scoping, cioè la definizione precisa del perimetro del progetto, non è un optional per i clienti esigenti. È la fondamenta. Saltarla significa costruire su sabbia, con la certezza che le crepe arrivino, solo non si sa quando.
Un fornitore serio fa due cose prima di quotare: fa domande scomode e ti dice cosa non sa ancora. Se invece ti arriva subito un preventivo pulito, con milestone precise e un prezzo fisso che "include tutto", la domanda giusta da farti è: tutto cosa? Perché tutto, in quel momento, non lo sa nessuno.
I segnali d'allarme che sembrano rassicuranti (e invece no)
Il problema dei red flag nel software è che spesso si presentano vestiti da punti di forza. Vediamo i più comuni, quelli che tornano quasi sempre nelle storie finite male.
Il prezzo fisso su progetto vago. Se non c'è un capitolato, un prezzo fisso non è una garanzia, è una trappola. Prima o poi emergerà che "quella funzionalità non era inclusa" o che "il requisito è cambiato". Ogni variazione diventa una rinegoziazione, ogni rinegoziazione rallenta tutto. Un contratto a corpo su specifiche vaghe è un contenitore vuoto con un'etichetta rassicurante.
Zero domande sul processo interno del cliente. Un buon fornitore vuole sapere come lavori. Chi usa il sistema, con che frequenza, da che dispositivi, con quali altri strumenti deve integrarsi. Se durante la prima call nessuno ti chiede nulla di questo, o se le domande si fermano al budget e ai tempi, l'interesse reale è altrove.
Il team "dedicato" che non ha un nome. "Avrete un team dedicato" è una frase che può significare qualsiasi cosa. Quante persone? Con quale seniority? Chi è il referente tecnico? Se non riesci a ottenere risposte precise su chi lavora al tuo progetto, c'è il rischio concreto che il tuo lavoro venga gestito da chi è disponibile in quel momento, non da chi è più adatto.
L'assenza totale di sviluppo agile nel processo proposto. Lo sviluppo agile non è una moda, è un metodo che serve precisamente a correggere la rotta mentre si cammina, invece di scoprire alla consegna finale che si è preso la direzione sbagliata. Se l'agenzia ti propone un unico rilascio a fine progetto senza checkpoint intermedi, stai firmando per un salto nel vuoto con consegna differita.
Referenze vaghe o non verificabili. "Abbiamo lavorato con aziende del tuo settore" va bene come inizio. Ma se non puoi parlare con un cliente reale, se i case study sul sito sono pieni di claim e privi di numeri, se non c'è nessun contatto a cui fare due domande dirette, quella reputazione esiste solo in powerpoint.
Come si sceglie un fornitore software senza restare bloccati: quello che funziona davvero
Prima di tutto, smetti di valutare i fornitori sul preventivo. Il preventivo in questa fase non ti dice quasi nulla di utile. Valutali sul processo che propongono prima di arrivare al preventivo.
Un approccio che funziona è questo: quando contatti un'agenzia, descrivi il problema, non la soluzione. Invece di dire "ho bisogno di un'app con queste funzionalità", di' "ho questo processo aziendale che oggi funziona così e crea questi problemi". Poi osserva cosa succede. Un fornitore competente inizia a fare domande. Uno che vuole solo chiudere il contratto inizia a proporti soluzioni.
Chiedi esplicitamente come gestiscono la fase di analisi e definizione dei requisiti. Se la risposta è "la facciamo insieme nelle prime settimane dopo la firma", attenzione: significa che stai pagando per qualcosa che non è ancora definito. Se invece ti propongono una fase di discovery separata, spesso a pagamento, con un output concreto (un documento funzionale, un prototipo, un capitolato tecnico condiviso), è un segnale positivo. Quella fase costa, ma costa meno dei sei mesi bloccati dopo.
Parla con chi farà il lavoro, non solo con chi vende il lavoro. In molte agenzie la persona che gestisce le trattative commerciali non è la stessa che poi segue il progetto. Non è necessariamente un problema, ma devi conoscere entrambe. Vuoi sapere chi è il project manager, chi è il tech lead, come comunicano con il cliente. Una videochiamata con il team tecnico, prima di firmare, vale più di qualsiasi presentazione.
Contratta sulla struttura del contratto, non solo sul prezzo. Un contratto ben fatto prevede: rilasci incrementali con criteri di accettazione chiari per ciascuno, modalità di gestione delle variazioni ai requisiti, indicatori di avanzamento verificabili, clausole su cosa succede se i tempi slittano. Se l'agenzia non è disposta a ragionare su questi elementi, o li liquida come "standard di settore", non è la maturità contrattuale che stai cercando.
Infine, diffida del fornitore che non ti dice mai di no. Un buon fornitore software ti dirà che alcune cose sono più complesse di quanto pensi, che alcune tempistiche non sono realistiche, che alcune funzionalità richiederanno più tempo. Questi no, detti prima, valgono oro. Significano che la persona dall'altra parte ragiona, non che asseconda tutto per chiudere il contratto e poi gestisce le conseguenze.
Una checklist per non ripartire da zero ogni volta
Prima di firmare con qualsiasi agenzia, questi sono i punti che vale la pena verificare. Non come formalità, ma come filtro reale.
- Esiste un documento di analisi o capitolato tecnico prodotto prima del preventivo definitivo?
- Il processo di sviluppo prevede rilasci intermedi e momenti di validazione con il cliente?
- Puoi parlare con almeno un cliente precedente, preferibilmente in un settore simile al tuo?
- Sai chi è il referente tecnico del progetto e hai potuto parlarci direttamente?
- Il contratto specifica come vengono gestite le variazioni ai requisiti?
- Ci sono criteri di accettazione definiti per i singoli rilasci?
- L'agenzia ti ha detto almeno una cosa che non poteva o non voleva fare?
Se la risposta a più di tre di queste domande è no o non lo so, il preventivo più basso della lista non è un risparmio. È un anticipo su problemi futuri.
La PMI lombarda di cui sopra, alla fine, ha ricominciato con un'altra agenzia. Ha richiesto una fase di discovery pagata, ha lavorato alla definizione del capitolato tecnico per tre settimane, ha firmato un contratto con milestone mensili. Il progetto ha impiegato quattro mesi invece dei due promessi la prima volta. Però è andato in produzione. E gira.
Alina, AI Analyst di Inceptio