Come scegliere un'agenzia di sviluppo software

Come scegliere chi svilupperà il tuo software: le domande da fare al primo incontro, come confrontare preventivi diversi e cosa deve dire il contratto.

Sviluppo software8 min

Si sceglie un'agenzia di sviluppo software confrontando tre cose: come pone le domande prima di fare il preventivo, cosa contiene esattamente la proposta economica e cosa dice il contratto su proprietà del codice, tempi e assistenza dopo il rilascio. Il portfolio serve a capire se hanno già affrontato problemi simili al tuo, non a valutare la qualità estetica del risultato. La differenza fra un progetto che arriva in produzione e uno che si ferma a metà si vede quasi sempre nella fase di analisi, cioè prima che venga scritta una riga di codice.

Se stai per affidare a qualcuno un gestionale, un'applicazione interna o un'integrazione fra i sistemi che usi ogni giorno, e le proposte che hai ricevuto sembrano parlare di progetti diversi fra loro, questa guida ti lascia una sequenza di verifiche da fare in ordine e le domande che fanno emergere in un'ora quello che altrimenti scopriresti fra tre mesi.

Cosa serve prima di iniziare

  • Una descrizione scritta del problema, anche breve. Non della soluzione: del problema. Due pagine che spiegano cosa non funziona oggi, chi lo subisce e quante volte al giorno succede valgono più di un elenco di funzioni desiderate.
  • L'elenco dei sistemi già in uso che il software dovrà toccare: gestionale, e-commerce, fatturazione, magazzino, strumenti di posta. Ogni integrazione ha un costo che va dichiarato all'inizio, e la guida su come integrare due software aziendali spiega perché è la parte che si sottovaluta più spesso.
  • Un budget indicativo e una finestra temporale. Non è una debolezza negoziale dirli: è ciò che permette a un fornitore serio di proporre un perimetro compatibile invece di una proposta scritta al buio.
  • Il nome della persona che deciderà, con il tempo per seguire il progetto. Mezza giornata a settimana è la stima realistica, e senza quella figura ogni scelta ambigua si ferma in attesa.
  • Un documento di richiesta uguale per tutti i fornitori interpellati. Se ognuno riceve una descrizione diversa, i preventivi che tornano non sono confrontabili: come si scrive è descritto nella guida sul capitolato per un software su misura.

Come scegliere un'agenzia di sviluppo software, passo per passo

Manda a tutti lo stesso documento e la stessa scadenza. Fissa una data entro cui vuoi le proposte e dichiara quante ne stai raccogliendo. Questo semplice passaggio rende il confronto possibile e ti dice già qualcosa: chi chiede un incontro prima di preventivare sta lavorando sul tuo problema, chi manda un numero il giorno dopo ha stimato su un'idea.

Al primo incontro conta le domande che ti fanno. È l'indicatore più affidabile che esista in questa fase. Un fornitore che chiede chi userà il software, quanti sono, cosa succede quando qualcosa va storto e quali dati esistono già sta ricostruendo il processo. Un fornitore che parla per la maggior parte del tempo della propria tecnologia sta descrivendo se stesso.

Chiedi di vedere un progetto simile e di parlare con chi lo usa. Non le immagini: il percorso. Cosa era stato chiesto all'inizio, cosa è cambiato in corsa, quanto è durato davvero rispetto alla stima. Una referenza telefonica di dieci minuti con un cliente precedente dice più di qualunque presentazione, e un fornitore che lavora bene la concede senza difficoltà.

Fatti spiegare chi lavorerà sul tuo progetto e con che frequenza vi parlerete. Serve sapere quante persone, con quale ruolo, e chi sarà il tuo riferimento unico. Chiedi anche cosa succede se quella persona non c'è per due settimane: la risposta a questa domanda rivela se dietro c'è una struttura o una disponibilità individuale.

Verifica come lavorano sul codice e sui rilasci. Le domande utili sono tre e non richiedono competenze tecniche per essere poste: dove vive il codice e quando avrò accesso, come vengono fatti i test prima di ogni rilascio, ogni quanto vedrò qualcosa di funzionante. Un fornitore che mostra qualcosa di usabile ogni due o tre settimane ti dà il controllo sul progetto molto prima della consegna. Il ritmo tipico è descritto nella guida sul processo di sviluppo software.

Leggi il preventivo cercando cosa non c'è. Migrazione dei dati, test, formazione, integrazioni, assistenza dopo il rilascio: se una di queste voci manca, non è gratis, semplicemente arriverà dopo. Chiedere di esplicitarle è la mossa che riallinea proposte apparentemente distanti.

Decidi sulla somma di rischio e comprensione, non sul prezzo. A parità di perimetro, fra due proposte vicine conviene chi ha capito meglio il problema e ha proposto un primo rilascio più piccolo. Un progetto che arriva in produzione in tre mesi e poi cresce vale più di uno completo previsto per l'anno prossimo.

Le domande da fare al primo incontro

  1. Cosa fareste per primo, e perché quello? La risposta mostra come dividono il lavoro e se hanno individuato la parte che porta valore prima.
  2. Cosa può far saltare i tempi in un progetto come questo? Un fornitore esperto ha una lista pronta, di solito legata ai dati esistenti e alle integrazioni.
  3. Come gestite le richieste che arrivano a lavoro iniziato? Serve sapere se esiste una procedura di variazione scritta o se si tratta ogni volta.
  4. Cosa succede il giorno dopo il rilascio? Chi risponde se qualcosa non funziona, in quanto tempo, con quale costo.
  5. Cosa vi serve da noi per lavorare bene? La risposta migliore è concreta: una persona di riferimento, gli accessi ai sistemi, i dati di esempio entro una certa data.

Come confrontare due preventivi diversi

VoceCosa verificareSegnale da approfondire
PerimetroLe funzioni elencate sono le stesse in entrambe le proposteUna proposta molto più corta dell'altra sullo stesso documento
StimaGiornate o ore per fase, non solo il totaleUna fase di analisi assente o ridotta a poche ore
DatiChi fa la migrazione e la pulizia delle anagraficheLa voce non compare da nessuna parte
Test e collaudoChi prova, con quali dati, quanto duraIl collaudo lasciato interamente al cliente
RilascioChi configura i server, chi pubblica, chi forma le personeNessun riferimento alla messa in produzione
DopoCosto e tempi di risposta dell'assistenzaAssistenza citata senza tempi né condizioni

Se una proposta costa molto meno delle altre, la spiegazione sta quasi sempre in due o tre righe di questa tabella. Chiederlo apertamente è normale e la risposta chiarisce la scelta più di qualunque altra verifica.

Cosa deve essere chiaro nel contratto

Le voci da definire prima della firma sono quattro: a chi appartiene il codice scritto per te, quali componenti di terzi sono usati e con quale licenza, chi detiene gli accessi ai server e ai repository, cosa comprende l'assistenza dopo il rilascio e per quanto tempo. Vanno aggiunte le condizioni sui dati, in particolare chi li tratta e dove sono conservati, tema su cui la guida sulla sicurezza del software su misura entra nel dettaglio tecnico.

Queste sono indicazioni generali di buon senso operativo: la formulazione delle clausole e la loro validità per il tuo caso vanno verificate con un legale di fiducia prima di firmare.

Se il progetto è piccolo o molto specifico

Sotto una certa dimensione la selezione lunga non conviene: il tempo speso a confrontare tre proposte supera il valore del lavoro. In quel caso il metodo che funziona è un incarico ridotto e pagato, per esempio due giornate di analisi con un documento finale che resta tuo. Ti dà un capitolato utilizzabile con chiunque e ti fa vedere come lavora quel fornitore, con un impegno economico limitato.

Se invece il progetto tocca un ambito molto specifico, il criterio si sposta sull'esperienza di dominio: chi ha già lavorato su magazzini, cantieri o studi professionali conosce le eccezioni che nessuno racconta all'inizio.

Errori comuni

Scegliere sulla base della prima demo. Un'interfaccia curata mostrata al primo incontro dice poco su come reggerà il sistema fra un anno con i tuoi volumi reali. Le domande che contano riguardano i dati, le integrazioni e la manutenzione, che nella demo non si vedono.

Non prevedere nulla per il dopo. Il software entra in funzione e da lì comincia a cambiare, perché cambiano i processi e le persone. Un progetto senza una previsione di manutenzione evolutiva invecchia in fretta e il costo riappare come emergenza, di solito nel momento peggiore.

Quanto tempo serve e qual è il passo successivo

Una selezione fatta bene richiede fra le tre e le cinque settimane: una per preparare il documento di richiesta, una o due per ricevere le proposte, una per gli incontri di approfondimento e le referenze. Comprimerla sotto le due settimane è possibile solo se il documento di partenza è già scritto.

Il passo successivo naturale, una volta scelto il fornitore, è concordare il perimetro del primo rilascio e la data in cui vederlo funzionare. Se stai ancora valutando se il software vada fatto su misura o preso a pacchetto, il confronto è nella guida su software su misura o soluzione a pacchetto; se invece il dubbio riguarda l'ordine di grandezza della spesa, i riferimenti sono nella guida su quanto costa sviluppare un'app.

Domande frequenti

Tre sono il numero che dà informazione senza far perdere settimane. Con due il confronto è troppo povero per capire se una proposta è fuori scala, con cinque le differenze di impostazione diventano difficili da tenere insieme e la decisione si allunga oltre il punto in cui aveva senso. La condizione perché il confronto valga è che tutte e tre ricevano lo stesso documento di partenza: se ognuna lavora su una descrizione diversa del progetto, i preventivi non sono paragonabili e la scelta finisce per basarsi sul prezzo.

Il prossimo passo non impegna

Mezz'ora di call per capire se possiamo esserti utili. Decidi tu dopo.

Prenota la call