Ingegneria dei Requisiti: I requisiti non funzionali di Prodotto

Ingegneria dei Requisiti: I requisiti non funzionali di Prodotto

Un requisito non funzionale di prodotto o semplicemente requisito di prodotto specifica le caratteristiche desiderabili per un sistema, che possono limitare la libertà di chi dovrà progettare e sviluppare il prodotto. Un esempio di requisito di prodotto vincolante potrebbe essere:
“Il sistema deve essere eseguito sia in su di un PC che su di un MAC” (portanility requirement) Da ciò scaturisce che sarà influenzato direttamente il codice sorgente. Mentre, un requisito di performance è espresso in maniera non oggettiva dall’utente, la qual cosa rende difficile agli sviluppatori capire quale sia il livello di soddisfazione per l’utente. Pertanto, quest’ultimo potrebbe essere stabilito arbitrariamente dagli stessi sviluppatori, potendo non incotrare le effettive esigenze del committente.
Per ovviare al problema è necessario esprimere i requisiti non funzionali di prodotto in maniera quantitativa, così da poterne fare una verifica oggettiva prima della consegna del prodotto.

Ingegneria dei Requisiti - I requisiti non funzionali di Prodotto

Sulla scorta di tali considerazioni, forniamo un esempio di quanto detto:
Goal (non verificabile):
“il sistema deve essere facile da usare per controllori esperti, e deve essere tale da minimizzare gli errori degli utenti”.

Requisito non-funzionale (verificabile):
“controllori esperti devono poter imparare a usare tutte le funzioni del sistema in max. 2 ore di apprendimento. Dopo l’apprendimento, il controllore deve essere in grado di operare senza commettere più di 2 errori al giorno”.

Questa considerazione, però, non può prescindere della difficoltà, da parte del cliente, di tradurre una propria esigenza in tal senso, del costo talvolta elevato dell’operazione, e dell’impossibilità di quantificare alcune tipologie di requisiti.

Si pensi, ad esempio, ai requisiti di performance ed a quelli di usability: i primi possono essere formulati e quantificati in maniera esatta, cosa che non vale per i secondi che, quindi, potranno essere descritti solo informalmente. Non di rado, i requisiti non funzionali di prodotto entrano in conflitto tra loro (ad esempio, un requisito di sicurezza potrebbe comportare una perdita in performance); pertanto, analizzandoli adeguatamente, si riuscirà a comprendere la priorità di ciascuno di essi e stabilire quali strategie adottare per prevenire i conflitti. Infine, Usabilità, Efficienza, Affidabilità, Portabilità sono le principali caratteristiche richieste ad un prodotto.

Misure dei requisiti non funzionali
Misure dei requisiti non funzionali

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *