29.05.2013 Views

Metodologie e strumenti dell'Ingegneria dei Requisiti ... - MobiLab

Metodologie e strumenti dell'Ingegneria dei Requisiti ... - MobiLab

Metodologie e strumenti dell'Ingegneria dei Requisiti ... - MobiLab

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!