Parlando di analisi dei requisiti i principali concetti operativi con cui ci si scontra sono quelli di “funzioni” e “requisiti”. Per quanto i due termini fanno riferimento a elementi tra loro molto vicini, questi sono sostanzialmente divisi e appartengono a due campi semantici differenti. Nel concepire un’analisi dei requisiti, quindi, è bene aver presente la differenza che li distingue.
Funzioni
Le funzioni, o features, sono delle operazioni del software che soddisfano uno o più bisogni dell’utente. Un software è, alla fine, un sistema integrato di diverse operazioni che collaborano in un percorso che conduce alla risoluzione di un’esigenza. Le funzioni sono in questo senso i tasselli di un puzzle che, insieme, producono un insieme logico e coerente. Dalle più basilari alle più complesse, le funzioni traducono le richieste dei requisiti in azioni pratiche dell’interfaccia digitale.
Requisiti
Per capire la natura dei requisiti è necessario prima di tutto dire che, alla base, i requisiti sono delle frasi strutturate. Come già detto in precedenza, la Specifica dei Requisiti deve essere un documento dal vocabolario chiaro e riconoscibile da tutti gli attori coinvolti nello sviluppo. Deve prevenire le incomprensioni, le ambiguità e l’inconsistenza dei propri contenuti. Per fare questo, i requisiti sono concepiti come frasi in cui ogni termine costituisce un elemento dal ruolo centrale nella comprensione dell’operazione che il software deve realizzare.
L’International Requirements Engineering Board ha elaborato uno schema che sintetizza gli elementi essenziali con cui costruire un requisito di sistema. Qui di seguito possiamo vedere un rappresentazione dello schema proposto, che prende il nome di Boilerplate.
Appare chiaro, ora, come i requisiti e le funzioni, anche quando sintetizzano la stessa operazione o concetto, sono fondamentalmente diversi. Ciò che più di tutto li differenzia è lo scopo per cui sono concepiti ed elaborati: mentre le funzioni acquisiscono importanza in senso operativo e di sviluppo, i requisiti definiscono il bisogno da soddisfare.