Perché «costa tanto» sviluppare un software?

Alcune riflessioni sui prezzi delle software house

Perché un software «costa tanto»? È un dubbio legittimo: esattamente, cosa paga un committente quando firma un preventivo? Scopriamolo insieme con cinque punti, tra spese e vantaggi, per provare a inquadrare il concetto di “tanto”.

Comprendere quali necessità portano alla stima finale di un preventivo è un modo per creare consapevolezza sul settore e sui servizi che acquistano i nostri clienti.
Il buon proposito è educare la coscienza comune, correggendo la percezione di chi è convinto che i prezzi non siano giustificati, o che i vantaggi non valgano l’investimento.

Senza pretendere di esaurire l’argomento, ma come semplice spunto di riflessione, propongo alcuni dei criteri base con i quali una software house come Dreamonkey formula il suo prezzo: formazione, lavoro in team, strumenti, tempo e valore.

Criteri per stimare il prezzo di un software: formazione, lavoro in team, strumenti, tempo e il suo valore

1. Formazione e competenza

I team che si occupano di software sono composti da professionisti che hanno dedicato molto tempo – e quindi denaro – allo studio di questo settore, diventando risorse strategiche per le aziende che si appoggiano alla loro consulenza. Spesso si rivelano un vero e proprio vantaggio competitivo rispetto alla concorrenza.

In alcuni casi sono laureati che hanno trascorso dai tre ai cinque anni ad apprendere le best practices informatiche o del design, percorso che gli permette, ad esempio, di lavorare in modo tale da minimizzare i costi e tempi di mantenimento del progetto.
Talvolta si specializzano per padroneggiare anche specifiche tecnologie in ascesa.
Altre volte sono tecnici che hanno fatto esperienza sul campo per altrettanto tempo – o più – formandosi e assimilando competenze all’interno di aziende del settore.

I veri professionisti mantengono aggiornate le loro conoscenze, per garantire sempre soluzioni adeguate allo stato dell’arte del mondo del software e per rimanere competitivi.

Avvalersi di queste figure significa approfittare di un bagaglio professionale non solo nozionistico ma anche pratico ed esperienziale che non sarebbe possibile replicare in poco tempo, anche con una didattica accelerata.
Quanto può costare a un’azienda formare e stipendiare del personale dedicato per raggiungere lo stesso grado di competenza, ma senza l’esperienza diretta sul campo? Complessivamente, nonostante la sua tariffa possa sembrare alta, retribuire un professionista per gestire un progetto sarebbe davvero meno economico?

Chi si forma per anni nella gestione di lavori complessi è giusto che chieda un compenso congruo al grado di qualità, competenza e garanzie in più che può offrire rispetto agli altri.

2. Lavoro in team

In ragione della complessità di un software e delle competenze multidisciplinari che richiede, la progettazione è data in mano a un team di numero variabile: due o tre professionisti per progetti minori, andando a crescere, quando gli obiettivi richiedono tempi brevi o necessità particolari.

Quasi sempre i membri del team hanno competenze complementari e non possono limitarsi a lavorare autonomamente: devono dialogare tra loro e confrontarsi per raggiungere le soluzioni migliori, ad esempio, fra le esigenze di natura tecnica e quelle relative al design della user interface (UI) e della user experience (leggi il mio articolo se vuoi avere una panoramica sulla UX).

Le quattro figure professionali che danno vita al software: UX/UI designer, programmatori frontend, programmatori backend ed i sistemisti

Accentrando compiti e responsabilità, o tagliando parte dei processi legati alla progettazione, è difficile raggiungere risultati di alto livello; al contrario, quando il team è affidabile e competente, più attori coinvolti nel progetto significano maggior qualità. Ovviamente, i costi sono ben superiori a quelli che si affrontano collaborando con un modesto free lance che lavora da solo.

3. Strumenti e infrastrutture

Gestire progetti complessi significa anche garantire al cliente determinate garanzie e infrastrutture che devono essere disponibili all’occorrenza.
Nel caso di una software house questo si traduce nel disporre e mantenere alcuni tools e abbonamenti a servizi che migliorano la qualità del lavoro, lo velocizzano e lo rendono più sicuro.

Si pensi alle licenze per i programmi di prototipazione come Sketch, alle tariffe dei servizi di Amazon Web Services, all’acquisto di hardware ad alte prestazioni e al mantenimento di spazi in cloud per salvaguardare file e documenti, talvolta accessibili anche ai clienti.

Più in generale, l’ecosistema di tools e risorse che la software house mette in gioco le consente di raggiungere significativi livelli di organizzazione interna, flessibilità e reattività ai problemi.
Ciò non significa che è impossibile occuparsi di progettazione senza queste condizioni: ci sono anche liberi professionisti che lavorano da casa con risorse più modeste, senza nulla togliere alla loro competenza. Eppure, quando un’azienda può investire in garanzie maggiori, perché accontentarsi?

La differenza risiede tutta nel grado di serietà con la quale il cliente affronta i suoi obiettivi: i problemi complessi non possono essere gestiti con strumenti inadeguati.
Se ci chiedessero di fissare un chiodo al muro battendolo con la suola di una scarpa, potremmo farlo, ma preferiremmo recuperare un martello e usare quello.

Affinché tutti i clienti possano beneficiare di queste sicurezze, ogni volta che servono, occorre garantire una salute aziendale in termini di risorse che ha un costo di mantenimento costante.

4. Tempo

Quando si stima il costo di un progetto, questo punto in assoluto è forse il più importante e incisivo fra quelli elencati.

Come in altri settori, nella progettazione del software non è possibile prevedere tutte le problematiche che si presenteranno nel raggiungere gli obiettivi prefissati e spesso quegli stessi obiettivi cambiano durante l’avanzamento del progetto.
Questo fa sì che trovare le soluzioni ai problemi sottoposti al team possa necessitare un tempo incognito, anche significativo. Non c’è mai un software esattamente uguale a un altro: più un progetto è complesso, più tempo richiede per essere portato a termine e il suo costo aumenta di conseguenza.

Come la difficoltà influisce sul costo

Benché la percezione dell’entità di un prezzo risulti sempre relativa alla disponibilità economica del committente si può concordare sul fatto che non si tratti di cifre basse: tenere impegnate più persone per molte settimane pesa significativamente sull’entità dei preventivi.

È abbastanza evidente – non per tutti purtroppo – che una software house non può dedicare gratuitamente il suo tempo ai clienti, perché sottrarrebbe ore ad altri progetti redditizi o interni. Questi ultimi, riguardando il benessere aziendale, ne aumentano l’efficienza e mirano a diminuire i tempi (quindi i costi) per tutti i clienti.

La software house offre competenze tecniche e capacità di management delle quali il cliente può disporre per il tempo necessario, ma non può farsi carico dei rischi economici di progetti particolarmente complessi per i quali solitamente – nell’esperienza personale di Dreamonkey – è difficile (quando non impossibile) stimare una deadline accurata, proprio a causa della grande mole di lavoro spesso soggetta a cambiamenti di rotta e imprevisti.
La nostra opinione è che progetti di questa entità debbano essere affrontati come obiettivi di medio e lungo termine, mai per ottenere risultati di breve periodo.

Talvolta è possibile facilitare le stime di progetto organizzando un primo periodo preliminare di affiancamento con pagamento a consuntivo: di solito il focus di questa fase sono analisi e prototipazione, che tendono ad avere tempi più incerti. La fase di programmazione può poi essere stimata con maggior sicurezza.

Se vuoi approfondire il rapporto tra tempo e sviluppo software leggi il nostro articolo sui tempi del web development.

5. Valore del progetto

Di solito si suppone che un software generi valore: viene realizzato, poi inserito nel workflow aziendale del cliente e da lì è auspicabile che determini una serie di cambiamenti tali da far guadagnare soldi o da far risparmiare tempo e altre risorse, che conseguentemente si tramutano in benefici economici.

In questo senso si può affermare che, sul lungo periodo, il software vale più del semplice tempo investito per realizzarlo.

Di conseguenza, conoscendo i benefici dei quali potrà godere l’azienda negli anni futuri, il cliente deve sapere che il valore di ciò che sta acquistando è potenzialmente di gran lunga superiore al costo della manodopera della software house, se ben gestito e amministrato.

Per questo motivo, se lo ritiene opportuno, una software house può decidere di considerare anche questo valore durante la stima del prezzo.
Il numero di persone che ne beneficeranno, le modalità d’uso, l’eventuale rivendita del servizio e altri aspetti possono rientrare tutti tra i criteri considerati per calcolare il valore del software.

Numero di fruitori, modalità di distribuzione, entità dei benefici, identità del committente sono alcuni dei parametri per determinare il valore di un software

Quanto costa non investire

Ora che ho fatto luce sulle ragioni che muovono le scelte tariffarie di una software house, ti sei interrogato su quali possono essere invece i costi derivanti dal non disporre di un software dedicato alla gestione di alcuni processi aziendali?
Le possibilità per migliorare sono molte: se vuoi affrontare l’argomento con noi, contattaci.