Il software aziendale, soprattutto se sviluppato su misura, deve essere un efficace strumento di business basato sulle necessità dell’azienda.
A volte non è semplice capire che cosa è davvero efficace per un’azienda e quindi, per questo motivo, prima delle fasi di progettazione e sviluppo, ritengo molto utile una fase per conoscere l’azienda, analizzarne a grandi linee i processi di lavoro generali, comprenderne alcune delle dinamiche interne. Ancora prima della raccolta dei requisiti della singola parte da sviluppare, che di solito viene visto come il primo passo, bisogna capire qualcosa di più dell’azienda.
E’ possibile procedere con due modalità diverse:
Nel primo caso il management ha le idee chiare su cosa vorrebbe fare e nel secondo caso, il management sa che molte cose possono essere migliorare e apre l’azienda ad un’analisi che cercherà di individuare punti di miglioramento e soluzioni adeguate.
Spesso, il progetto che ne consegue è un mix di entrambe le modalità.
L’analisi dei processi di lavoro è una procedura molto utile quando si devono individuare le esigenze di business, definendo gli obiettivi dell’azienda. Per questo motivo, il metodo di lavoro che seguo con le aziende, prevede come primo step del tempo da dedicare esclusivamente al dialogo e al confronto con il cliente, perché in questo modo è possibile individuare non solo i requisiti che il cliente esprime chiaramente, ma anche il contesto a contorno.
Questo lavoro non è dettaglio e può essere svolto di solito nel giro di qualche ora, è molto utile per entrare più serenamente nella fase vera di raccolta dei requisiti e cioè nel momento in cui si inizia a parlare di uno specifico problema che il cliente vuole risolvere o di una specifica necessità di business che il cliente vuole gestire attraverso la creazione di un software. Per creare uno strumento che sia davvero al servizio degli obiettivi dell’azienda, bisogna andare al nocciolo delle questioni.
Nelle aziende esistono molte procedure, formalizzate o riconosciute come de facto; arrivate dall’alto, o espresse in maniera naturale (e poco formalizzate) da chi compie il lavoro ogni giorno.
Facciamo un esempio: in azienda entra un ordine e viene inviato al settore “produzione” dove finisce nella coda. Viene quindi realizzato ed eventualmente testato. Il cliente (o i rivenditori, per le realtà più grandi) lo viene a prendere o gli viene spedito. A volte è necessario inviare una squadra per l’installazione del prodotto al domicilio del cliente. In un esempio così semplice, si intersecano almeno quattro processi di lavoro:
Queste quattro-cinque fasi possono essere divise in processi di lavoro e analizzate nel dettaglio per andare a individuare perdite di tempo come attese di risposte da altri reparti o azioni inutili e dispendio di materiali.
Analizzare i processi di lavoro può sembrare complesso ma ne vale la pena, perchè permette di identificare delle aree di miglioramento; se ci sono aspetti che è possibile migliorare per aumentare l’efficienza e i profitti, è in questa fase che ne avremo idea.
A volte, identificata un’area di miglioramento, si può decidere comunque di lasciarla così com’è, perchè ottimizzarla potrebbe costare una cifra difficilmente ammortizzabile nel tempo. In questo caso, ci sarebbe comunque una consapevolezza di spreco e col tempo si può comunque migliorare.
Ma nella maggior parte dei casi, appena la condizione da migliorare viene individuata, si inizia il più presto possibile a studiare soluzioni che possano indirizzarla per aumentare i fatturati o diminuire al massimo gli sprechi, con l’obiettivo sempre di aumentare i ricavi.
Per capire dove si può arrivare in termini di miglioramento dell’efficienza, è importante capire da dove si parte (cioè come funziona oggi il processo di lavoro che vogliamo analizzare). E’ molto utile, quindi, anche se a volte complicato, creare della documentazione che descriva l’attuale e il come sarà.
Creo molto volentieri la documentazione perchè è anche uno strumento utile per ripassare ciò che è stato condiviso dal cliente, e dà modo di riflettere con calma su ciò che ha condiviso. Di solito creo una lista di tutti i personaggi in gioco.
Facciamo un esempio. Se devo analizzare il lavoro svolto da un team di sviluppo di un software, i personaggi da elencare sarebbero:
Il rappresentante del cliente è la persona di riferimento all’interno dell’azienda e che conosce le necessità che il software deve soddisfare, l’analista e il project manager a volte sono figure distinte ma spesso sono la stessa figura, e cioè la persona che analizza col cliente le necessità e si assicura che lo sviluppo avvenga in maniera coerente alle richieste. Il team leader è invece la persona che si assicura che il team di programmatori vada a sviluppare un software in grado di soddisfare le richieste che il cliente ha espresso con l’aiuto dell’analista.
Per descrivere il processo di lavoro, è bene interagire con ogni personaggio che lo compone, per capire i problemi che ognuno incontra nello svolgimento delle proprie mansioni, e come queste mansioni vengono svolte, che tipo di soluzioni vengono seguite e implementate. Può essere molto utile anche osservare attivamente il lavoro in diverse occasioni, per avere un quadro più completo della realtà.
Una volta descritto il processo attuale, si potrà iniziare ad individuare gli aspetti da migliorare tralasciando tutti quelli che sarebbero da migliorare ma che non portano abbastanza benefici e concentrandosi solo su quelli che portano maggiore efficenza e risparmio.
Come accennato, l’obiettivo dell’analisi dei processi di lavoro è quello di aumentare i profitti attraverso un abbassamento dei costi. La prima parte dell’analisi ci ha permesso di individuare gli aspetti da migliorare e le possibili soluzioni, ma prima di intervenire, è necessario prevedere quali saranno i costi delle soluzioni e quindi i costi risparmiati.
Solo in questo modo, è possibile individuare le soluzioni che davvero possono migliorare l’efficienza della produzione e quindi aumentare i profitti, senza pesare sui costi. Valutati gli eventuali investimenti da sostenere e i tempi entro i quali rientrare dall’investimento, si può iniziare a godere dell’aumento dei profitti.
L’analisi ci porta a capire le esigenze di business dell’azienda e a individuare delle soluzioni software da realizzare insieme, che possono essere un software gestionale aziendale, una o più applicazioni mobili e un’integrazione del gestionale con il sito web per la vendita attraverso ad esempio un configuratore personalizzato.