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.
La situazione appena descritta non è realistica, dunque è ancor più evidente quanto nei progetti<br />
concreti sia necessario ridurre la quantità <strong>dei</strong> requisiti da soddisfare così da semplificare i progetti ed<br />
eliminare inutili sprechi di risorse. Questa considerazione comporterebbe, in definitiva, validazioni<br />
più mirate da parte del committente e degli altri stakeholder, fornendo anche una flessibilità<br />
maggiore rispetto alle eventuali modifiche da apportare ai requisiti.<br />
Ciò risulta perfettamente in linea se consideriamo le ultime stime pubblicate dallo Standish Group,<br />
dalle quali si evince che circa il 45% delle funzionalità di un sistema sia completamente inutilizzato,<br />
ed il 19% viene utilizzato solo raramente.<br />
Tuttavia, i requisiti rappresentano il patrimonio di progetto più importante, dal momento che<br />
costituiscono l’anello di congiunzione tra i bisogni e le percezioni degli stakeholder e le soluzioni<br />
tecnologiche progettate dagli esperti software.<br />
1.1 Pseudo requisiti<br />
Una considerazione interessante in merito alle caratteristiche richieste ad un sistema riguarda il<br />
concetto [2] di "pseudo requisito", ovvero un requisito secondario. Vengono così indicati i vincoli<br />
imposti dal cliente o dall' ambiente in cui opererà il sistema, come quelli sull' implementazione 7 ,<br />
relativi alle interfacce 8 , operazioni 9 , packaging 10 , vincoli di natura legale 11 .<br />
Ne sono un esempio:<br />
"Il linguaggio di programmazione adottato dovrà essere Java",<br />
oppure<br />
"La piattaforma dovrà interfacciarsi con documenti scritti con MS Word su Windows XP".<br />
Nei successivi paragrafi non verrà operata la distinzione tra requisiti primari e secondari 12 .<br />
1.2 <strong>Requisiti</strong> funzionali<br />
I requisiti funzionali si presentano come elenchi di funzionalità o servizi che il sistema deve<br />
fornire. Essi descrivono anche il comportamento del sistema a fronte di particolari input e come<br />
esso dovrebbe reagire in determinate situazioni.<br />
7 Vincoli posti su come implementare il sistema, ad esempio l'utilizzo di specifici tool, di particolari piattaforme<br />
hardware oppure di linguaggi di programmazione.<br />
8 Vincoli di interfaccia, cioè imposti da sistemi esterni (con i quali il sistema debba comunicare) e formati di scambio<br />
delle informazioni.<br />
9 Possono essere prescritte le operazioni da eseguire rispetto all'amministrazione del sistema e sulla sua gestione.<br />
10 Vincoli sul packaging riguardano la consegna del sistema.<br />
11 I vincoli di natura legale possono far riferimento a licenze, norme e certificazioni alle quali il sistema dovrà essere<br />
conforme.<br />
12 Ad esempio, lo pseudo requisito di interfaccia verrà indicato come requisito di interfaccia.<br />
11