Metodologie e strumenti dell'Ingegneria dei Requisiti ... - MobiLab
Metodologie e strumenti dell'Ingegneria dei Requisiti ... - MobiLab
Metodologie e strumenti dell'Ingegneria dei Requisiti ... - MobiLab
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
tanto da poter rendere il sistema inutilizzabile nel caso in cui non trovino corrispondenza nella<br />
specifica. Infatti, essi possono essere vincolati a limiti di budget, alle politiche organizzative, di<br />
sicurezza, privacy 30 , alla necessità di interoperabilità con altri sistemi software o hardware.<br />
Una difficoltà che accompagna tali requisiti riguarda la loro verificabilità: infatti, è abbastanza<br />
comune che gli utenti o i clienti si riferiscano ad essi come obiettivi generali che il sistema deve<br />
perseguire, dando la libertà agli sviluppatori di interpretarli in maniera arbitraria. Questa potrebbe<br />
essere una causa di malcontento da parte del commitente, una volta rilasciato il prodotto.<br />
1.6 I requisiti utente e di sistema<br />
I requisiti utente, essendo rivolti a personale non esperto, specificano solo il comportamento<br />
esterno del sistema attraverso una descrizione chiara <strong>dei</strong> requisiti funzionali e non funzionali. In<br />
effetti, in essi dovrebbero essere concentrati i servizi chiave che devono essere forniti (bisogni ed<br />
esigenze degli utenti), in quanto un requisito che contiene troppe informazioni potrebbe risultare di<br />
difficile comprensione per l'utente e, d'altro canto, limitare lo slancio degli sviluppatori verso<br />
soluzioni innovative.<br />
Dunque, nella definizione di tali requisiti, bisognrebbe evitare l'utilizzo di un linguaggio<br />
specifico che descriva in che modo il sistema venga implementato, così come è sconsigliato<br />
l'utilizzo del linguaggio naturale.<br />
Infatti, mentre l'adozione del primo ci condurrebbe certamente ad un requisito che per<br />
definizione non sarà di utente, l'utilizzo del linguaggio naturale, sebbene possa sembrare il mezzo<br />
più immediato ai fini della comprensione dell'utente, proietterebbe sul requisito ottenuto tutte le sue<br />
lacune (requisiti funzionali, non funzionali, obiettivi di sistema e di progettazione potrebbero non<br />
essere chiaramente distinti, oppure si potrebbe definire in un unico requisito più requisiti).<br />
Dunque, per la definizione <strong>dei</strong> requisiti utente 31 si potrebbe prediligere un linguaggio naturale,<br />
corredato da diagrammi, che rappresenti il giusto compromesso tra formalismo e comprensibilità.<br />
Essendo destinati agli specialisti, gli aspetti tecnici prendono forma nei requisiti di sistema, ai<br />
quali potremmo pensare come versioni maggiormente dettagliate <strong>dei</strong> requisiti utente, dato che<br />
esprimono cosa un sistema debba fare e sotto quali vincoli debba operare.<br />
che, coinvolgendo l'intero sistema, non può essere eluso allo stesso modo.<br />
30 I principali tipi di requisiti non funzionali sono: i requisiti di prodotto, i requisiti esterni, i requisiti organizzativi.<br />
31 Durante questa attività, potrebbe essere interessante etichettare i requisiti utente a seconda dell'importanza che riveste<br />
per l'utente, ad esempio come OBBLIGATORIO o DESIDERATO.<br />
20