Una delle parti più laboriose e corpose dell’analisi del software è questa: elencare singolarmente tutti i requisiti funzionali, scorporandoli al minimo possibile. L’atomizzazione servirà poi a fare diverse stime.
Durante le interviste al cliente ed ai suoi collaboratori avrete di certo preso dozzine di appunti e vi sarete fatti una mappa mentale dei requisiti funzionali. Fidatevi di voi stessi ma controllate sempre quello che avete prodotto: a volte l’esperienza può farvi dei brutti scherzi.
Una volta provando la presentazione da fare al cliente mi resi conto che una delle funzioni assolutamente necessarie del software peccava nell’analisi: notte insonne per rimediare.
Ecco i punti pratici con cui dovrete misurarvi per enumerare i requisiti funzionali:
- Prendete il primo “capitolo” del vostro romanzo d’analisi e dividetelo nelle funzionalità necessarie a compiere il processo.
- Non accontentatevi di macro-categorie di funzionalità: scendete in profondità fino a atomi semplici.
- Quando avete finito l’elenco rileggetelo e aggiungete ad ogni punto una piccola descrizione se la ritenete necessaria.
- Ripetete questo lavoro finché la lista non vi sembra completa.
- Passate al capitolo successivo.
Vediamo nella nostra analisi d’esempio insieme come lavorare il primo capitolo: (copaincollo direttamente dal documento attuale)
Funzionalità di pagamento rinnovata
È previsto paypal.
La nuova funzionalità di vendita della moneta di gioco (PREMIUM) utilizzerà le seguenti librerie richieste:
paypal-rest-sdk
express
mysql
i18n-express
bootstrap
Per comodità prendiamo tutti i capitoli e numeriamoli, in modo di evidenziare facilmente eventuali dipendenze.
Il sistema di pagamento di Wardrome può essere utilizzato in due modalità:
- Il sistema chiama dall’interno la schermata di wardrome con una url apposita e il player si trova direttamente a scegliere quanto premium acquistare.
- Il player o chi lo desidera, sceglie la partita, il giocatore a cui assegnare del premium, quanto ne desidera e lo acquista.
Le funzionalità necessarie sono quindi:
- controllare se in POST arrivano i parametri del giocatore
- controllare la lingua selezionata o quella del browser
- mostrare attraverso template la pagina dei pagamenti con i vari step ed eventuale promozione
- controllare in una tabella se è attiva una promozione e se sì applicarla
- eseguire il pagamento collegandosi a paypal
- registrare l’ordine in apposita tabella mysql
- quando arriva la notifica di pagamento avvenuto con successo, aggiornare la tabella
- assegnare al player il premium acquistato compreso di promozioni
- inviare un messaggio in gioco al player beneficiario
- inviare fattura al pagante
Seguiamo ora i passi descritti precedentemente fino a completare tutti i capitoli: dovremmo essere arrivati al nostro documento aggiornato.
Passiamo al punto successivo: Enumerare i requisiti complementari