Cos'è il Custom Software Development?

Parentesi di passione, caffé e notti insonni tra una necessità e la sua soddisfazione

Massimi Sistemi S.r.l., Leonardo Zanus

Il Custom Software Development identifica la progettazione e la realizzazione di applicativi specifici per bisogni di un utente o di un gruppo di utenti all'interno di un'organizzazione. Il motivo principale per cui si ricorre a questo tipo di soluzioni è la necessità di ottimizzare i propri processi aziendali conservandone le caratteristiche e dunque senza dover scendere a compromessi con software commerciali. L'impiego di software off-the-shelf, infatti, comporta spesso il rischio di adattare i propri processi alle limitazioni funzionali del software. Infatti, seppur prodotti commerciali possono risultare l'optimum per processi comuni oppure non particolarmente complessi, in contesti di maggiore complessità l'adozione di software custom può rivelarsi l'unica soluzione valida al fine di non perdere in efficienza: non è raro che, in campi particolari, l'aggiornamento di sistemi software con prodotti commerciali abbia diminuito l'efficienza del processo.


I software custom, dunque, sono prodotti che in genere vengono creati per quella sola entità specifica e per quella specifica combinazione di esigenze e risultati richiesti. Sono frutto del lavoro di sviluppatori interni o esterni, ma sicuramente non sono riprodotti per la rivendita.

Software personalizzato vs prodotti off-the-shelf

Un software commerciale è costruito in modo che sia al contempo appetibile ad un vasto pubblico e risponda ad esigenze diverse, anche se fondamentalmente simili. Frequentemente i software di questo tipo sono ricchi di feature, ma queste tendono ad essere generaliste e quindi sfruttabili in contesti diversi. Ad esempio, Microsoft Excel è stato progettato per essere un foglio di calcolo versatile, che risponda alle esigenze generiche di una fetta di mercato che insiste nel totale potenziale. Nessuna delle sue feature, però, risponde all’esigenza specifica del singolo utente in maniera diretta ed efficace come un software custom potrebbe fare.

Un software personalizzato, al contrario, comporta la progettazione, lo sviluppo ed il rilascio su misura per le esigenze di una singola entità. Ne è un esempio il software di gestione della documentazione e degli asset e delle pratiche, un vero e proprio IMS a tutto tondo, creato per il gruppo finanziario Europa Investimenti spa, progettato tenendo conto precisamente dei processi, delle code di approvazione, delle convenzioni e delle esigenze di branding tipiche dell’azienda. Questo implica che questo software non potrebbe funzionare in nessun’altra azienda. Se non al prezzo di drammatiche rivoluzioni aziendali.

Software custom - i pro

Il vantaggio di avere un software personalizzato è piuttosto palese: fornisce funzionalità che un off-the-shelf non può offrire. Progettare un'applicazione partendo dalle esigenze del richiedente, infatti, implica la costruzione di feature uniche che garantiscono un aumento dell’efficienza produttiva.

É in questo miglioramento dei processi aziendali che il software customizzato trova la sua ragion d’essere: il costo di realizzazione viene compensato direttamente dal miglioramento che l’azienda trae dall’impiego del nuovo strumento. Se un’azienda ha delle necessità tali da giustificare l’impiego di un software personalizzato non accontentarsi di una applicativo off-the-shelf diventa un’azione intelligente.

Software custom - i contro

I software commerciali hanno il vantaggio di essere subito disponibili, con un costo immediato e diretto, privo di sorprese. Al contrario, un software personalizzato richiede molte più risorse per la sua adozione. Prime fra tutte il tempo: nessun prodotto di questo tipo potrà mai essere pronto in un click. É bene aver chiaro questo concetto, quando si valuta l'adozione di una soluzione custom. Il coding è un'attività molto complessa e richiede di diversi stadi di creazione e revisione. Inoltre il committente di un progetto di questo tipo deve coprire tutti i costi connessi allo sviluppo ...e facilmente il totale in fattura è a cinque cifre.

Progettare o far progettare un sistema, poi, apporta intrinsecamente un maggiore fattore di rischio: ad un impegno di risorse aziendali potrebbe corrispondere un prodotto finale diverso dal previsto o insufficiente rispetto ai bisogni originali. Uno dei primi requisiti del committente è infatti la conoscenza approfondita di sé stesso e dei propri processi. Inoltre bisogna avere le idee chiare e saper effettuare le scelte giuste: non è raro identificare nuovi bisogni in corsa, ma provvedere in tal senso comporta costi aggiuntivi e maggiore tempo di sviluppo. Il rischio di frequenti cambiamenti di questo tipo può tradursi in una perdita di slancio del progetto o ad un vero e proprio scope creep, come dicono i PM.

Servizi di sviluppo software personalizzato

Una volta consapevoli delle possibilità di un software custom e del valore che potrebbe avere nella vostra azienda comincia la parte difficile. Scegliere un'azienda che possa creare un'applicazione software per il vostro business, infatti, non è affatto un compito banale. Per questo, come consulente, incoraggio sempre a valutarne diverse anche con incontri preliminari: uno sviluppatore deve essere disponibile al confronto, pronto alle sfide ed avere un'attitudine positiva nei confronti dell'ecosistema che dovrà conoscere ...e non tanto dei possibili guadagni. Deve arrivare a conoscere molto bene i processi e le loro sfaccettature, deve entrare nel vostro ecosistema e diventarne de facto parte integrante: per fare questo bisogna avere le persone con le giuste competenze tecniche, umane e professionali.

Dopo aver scelto le aziende più vicine alla vostra filosofia valutate le offerte commerciali, ma ricordate che le valutazioni non sono scritte nella pietra e che spesso i progetti richiedono più tempo e più denaro di quanto stimato nella prima analisi. Preferite dunque aziende organizzate, il cui livello di analisi è approfondito.

Scegliendo un’azienda non si dovrebbe mai valutare il solo impiego di denaro ma caprire quale sia il partener più flessibile, più disposto a lavorare insieme a voi per concludere felicemente il progetto.