Il ciclo di vita, vale a dire il processo che coordina la realizzazione dei programmi software aziendali inizia sempre con “l’analisi dei requisiti”.
Un requisito rappresenta un’esigenza che gli utenti esprimono, per tramite generalmente di un esperto, di un responsabile o di una persona investita della responsabilità di questo importantissimo dialogo. Il lavoro di analisi dei requisiti consiste nella raccolta delle esigenze e la loro associazione ai processi, necessaria alle analisi degli impatti.
Si tratta di una delle attività più appassionanti, perché partendo da un desiderio si arriva ad una realizzazione. Diversi passaggi permettono di documentare ogni aspetto e pilotarne la tracciabilità in ogni fase del processo.
Gli strumenti in questo caso sono molto dinamici in quanto devono necessariamente adeguarsi a un modello di comunicazione e ad un linguaggio del committente, che deve poter avere visibilità su ogni singolo aspetto senza imbarazzi nell’interpretazione. Le metodologie che ho applicato con migliori risultati per il committente sono:
-
User stories
tecnica tipica dall’approccio “AGILE” alla lavorazione informatica, che consente di raccogliere testualmente le richieste dell’utente/ruolo in merito ad un particolare contesto della propria attività. Il livello di approfondimento deve consentire di pilotare la presa in carico da parte dei team che realizzeranno/modificheranno i programmi. Postulato irrinunciabile a questo tipo di lavorazione del requisito è che il linguaggio utilizzato sia esattamente quello usato dal richiedente, eventualmente corredato di eventuali approfondimenti e chiarimenti necessari al team per comprendere appieno quanto richiesto
-
Diagrammi dei Casi d’Uso (UCD)
questa tecnica, derivante dal linguaggio di modellazione UML (Unified Modeling Language) permette di fornire un’enfasi grafica alle interazioni fra utenti e sistemi e fra sistemi e sistemi. Il risultato della lavorazione è generalmente un diagramma che evidenzia in modo moloto schematico l’attività svolta dall’utente nell’utilizzo degli scenari funzionali e d’interazione (Casi d’Uso) esposti dai sistemi utilizzati, con le relative associazioni e collaborazioni.
Corredo naturale di questo tipo di diagramma è una descrizione di ogni singolo caso d’uso citato, nel quale si evidenziano i comportamenti/flussi operativi “standard”, eventuali flussi alternativi, implicazioni dell’attività, cenni sulla piattaforma che coinvolge la funzionalità specifica e qualunque cosa possa contribuire ad una successiva modellazione. L’ambito di applicazione è tipicamente quello in cui sia richiesto un livello di formalismo molto spinto. -
Strumenti di Analisi dei Requisiti
Esistono sul mercato diversi strumenti di analisi dei requisiti, che permettono di tracciare a sistema le richieste degli utenti e nel contempo agevolano attività quali le analisi di impatto e le valutazioni di incidenza dei requisiti rispetto agli ecosistemi nel quali saranno applicati. Strumenti di questo tipo agevolano particolarmente lavorazioni su sistemi particolarmente complessi, nei quali sia richiesto non solo di raccogliere il requisito ma anche di verificare che eventuali richieste non vadano a danneggiare altre attività in corso
-
Altri metodi
Una raccolta dei requisiti può essere impostata anche con sistemi meno formalizzati, quali la documentazione testuale oppure il tracciamento degli impatti a livello dell’analisi di processo.