A volte viene richiesta una nuova funzione. Altre volte un campo aggiuntivo, un report, uno stato oppure una modifica a una procedura già esistente. La tentazione è rispondere immediatamente alla richiesta: individuare il punto del software interessato, stimare l’intervento e procedere con lo sviluppo.
È proprio qui, però, che può iniziare il problema.
La richiesta iniziale raramente coincide con il vero bisogno
Quando un’azienda chiede di aggiungere una funzione, quasi sempre sta descrivendo il punto nel quale oggi avverte maggiormente la difficoltà. Non necessariamente la sua origine. Un’informazione mancante in una schermata può dipendere da un dato mai raccolto all’inizio del processo. Un report incompleto può essere la conseguenza di stati utilizzati in modo diverso dalle persone.
Una pratica difficile da rintracciare può nascondere passaggi gestiti attraverso email, fogli di calcolo o comunicazioni verbali. La richiesta iniziale è quindi importante, ma non può essere considerata automaticamente la soluzione. Il primo passo consiste nel cambiare prospettiva: non domandarsi soltanto che cosa manca nel software, ma capire che cosa accade realmente nel lavoro quotidiano.
Guardare ciò che avviene prima e dopo
Una funzione non vive mai isolata. Ogni attività nasce da un evento precedente, coinvolge alcune persone, produce informazioni e genera conseguenze sui passaggi successivi. Per comprendere davvero un’esigenza è quindi necessario allargare temporaneamente il perimetro: che cosa avviene prima dell’attività segnalata? Quali informazioni devono essere già disponibili? Chi prende le decisioni?
Quali soggetti possono intervenire? Che cosa determina il passaggio alla fase successiva? Quali documenti o movimenti vengono generati? Che cosa deve accadere per considerare il processo concluso? Sono domande semplici, ma cambiano radicalmente la qualità dell’analisi. Permettono di passare dalla singola funzione al ciclo di vita dell’attività. Ed è spesso durante questa ricostruzione che emerge la vera esigenza.
Seguire una pratica dall’inizio alla fine
Uno degli approcci più efficaci consiste nel prendere un caso reale e seguirlo lungo tutto il suo percorso. Non un esempio ideale, costruito per dimostrare che il processo funziona. Serve una situazione concreta, possibilmente una di quelle che oggi richiede più telefonate, controlli o interventi manuali. Seguendola dall’apertura alla chiusura emergono informazioni inserite più volte, responsabilità non definite, decisioni che rimangono fuori dal sistema, passaggi conosciuti soltanto da alcune persone, eccezioni risolte ogni volta in modo differente e dati necessari richiesti troppo tardi.
Il caso concreto non serve a progettare una soluzione valida soltanto per quella situazione. Serve a far emergere le regole nascoste del processo.
Distinguere gli stati dalle semplici etichette
In molti sistemi le attività vengono classificate attraverso stati come “nuovo”, “in corso” o “completato”. Sono definizioni immediate, ma non sempre sufficienti. Uno stato è realmente utile quando consente di comprendere che cosa è già accaduto, quale condizione è stata raggiunta, chi deve intervenire e quale passaggio può avvenire successivamente. Se due attività molto diverse vengono indicate entrambe come “in corso”, il sistema non sta rappresentando il processo.
Sta semplicemente dichiarando che non è ancora terminato. La progettazione deve quindi individuare i momenti che cambiano realmente la natura della pratica. Non occorre moltiplicare gli stati. Occorre scegliere quelli che producono informazioni e azioni concrete.
Cercare le eccezioni prima di progettare la regola
Durante l’analisi, il processo viene spesso raccontato nella sua versione più lineare: la pratica viene aperta, lavorata e conclusa. Poi iniziano ad apparire le eccezioni. Cosa succede se un’attività viene rifiutata? Se deve essere sospesa? Se cambia dopo una prima valutazione? Se interviene un soggetto esterno? Se mancano alcune informazioni? Se il processo deve tornare a una fase precedente?
Queste domande evitano che la soluzione venga costruita soltanto intorno al caso più semplice. Le eccezioni non sono necessariamente anomalie: spesso fanno parte del normale lavoro dell’azienda, ma non sono mai state formalizzate. Quando non vengono considerate durante l’analisi, finiscono per essere gestite nuovamente fuori dal sistema.
Separare informazioni, decisioni e azioni
Un altro passaggio importante consiste nel distinguere tre elementi che spesso vengono confusi. Le informazioni descrivono la pratica: chi l’ha aperta, quando, per quale motivo e con quali caratteristiche. Le decisioni determinano il percorso: approvare, rifiutare, modificare, assegnare o sospendere. Le azioni producono un avanzamento concreto: creare un documento, inviare un’attività, registrare un rientro, aggiornare una scadenza o concludere il processo.
Se questi elementi non vengono separati, diventa difficile capire che cosa debba essere semplicemente registrato e che cosa, invece, debba produrre un comportamento nel sistema. Un campo aggiuntivo può conservare un’informazione, ma non è detto che sia sufficiente per governare una decisione o attivare il passaggio successivo.
Coinvolgere le persone senza limitarsi a raccogliere richieste
Ascoltare gli operatori è indispensabile, perché sono loro a conoscere le situazioni reali e le eccezioni quotidiane. Ma raccogliere tutte le richieste e trasformarle direttamente in funzionalità non equivale a fare analisi. Persone diverse osservano lo stesso processo da punti differenti e ognuna tende a descrivere ciò che serve alla propria fase di lavoro.
Il compito dell’analisi è collegare queste prospettive, riconoscere le dipendenze e costruire una visione comune. In alcuni casi, una richiesta formulata da un reparto può creare conseguenze per altre aree. In altri, due esigenze apparentemente diverse nascono dalla stessa informazione mancante. Il valore non sta quindi nell’accumulare richieste, ma nel ricondurle a un disegno coerente.
Non partire dalla schermata
Quando l’analisi comincia direttamente dall’interfaccia, il confronto tende a concentrarsi su pulsanti, campi e posizioni. Sono elementi importanti, ma arrivano dopo. Prima è necessario stabilire quali fasi devono essere rappresentate, quali dati accompagnano l’intero processo, quali informazioni diventano obbligatorie, quali ruoli possono intervenire, quali condizioni consentono l’avanzamento, quali controlli devono impedire operazioni incoerenti e quali risultati devono essere misurabili.
Soltanto a quel punto diventa possibile progettare una schermata utile. Altrimenti si rischia di digitalizzare il modo in cui oggi viene aggirato il problema, invece di risolverlo.
La soluzione migliore non è sempre quella inizialmente richiesta
Un’analisi efficace può confermare la richiesta di partenza, modificarla oppure dimostrare che il problema deve essere affrontato in un altro punto del processo. Questo non significa complicare il progetto. Significa evitare di sviluppare una funzione formalmente corretta ma incapace di produrre il risultato atteso.
Il vero obiettivo non è consegnare esattamente ciò che è stato chiesto. È comprendere perché è stato chiesto e costruire una soluzione che continui a funzionare anche quando aumenta il numero delle attività, cambiano le persone o si presenta un caso meno lineare.
Dalla richiesta al progetto
Dietro una frase come “ci servirebbe una funzione per gestire questa attività” può esserci un’intera rete di ruoli, decisioni, documenti, eccezioni e responsabilità. La capacità di farla emergere determina la differenza tra una modifica isolata e un progetto realmente utile.
Prima di parlare di sviluppo, è quindi necessario rendere visibile il processo: capire dove nasce l’informazione, come si trasforma, chi la utilizza e che cosa deve produrre. È in questo spazio, tra il problema raccontato e quello realmente esistente, che l’analisi crea il suo valore maggiore.
IN SINTESIRendere semplice un’attività non significa ridurre il numero delle sue fasi. Significa dare a ogni fase una logica chiara.