L’Ingegneria dei requisiti è una disciplina fondamentale per lo sviluppo di prodotti complessi. Aiuta ad implementare i processi del Model-Based System Engineering, e ad ottenere certificazioni quali ad esempio l’ISO 26262 e il CMMI. Più in generale è funzionale ad una visione chiara e complessiva del nuovo prodotto ed alla gestione di tutte le fasi del suo sviluppo.

La raccolta dei requisiti è l’attività più difficile e delicata nella fase di ideazione di un sistema/prodotto, e richiede la collaborazione di più gruppi di lavoro. Da qui la definizione di Stakeholders: insieme di persone che hanno possibilità e capacità di influenzare una attività o una organizzazione con il loro comportamento. Emergono, tra gli altri, i seguenti profili:

  • tutte le persone interessate alla realizzazione del nuovo sistema/prodotto;
  • il cliente e gli utenti finali: sono gli esperti nel loro settore, hanno una idea chiara di cosa il prodotto debba fare, ma sono poco preparati nei singoli campi tecnici che concorrono allo sviluppo del prodotto;
  • gli sviluppatori: sono i tecnici del gruppo e hanno grande esperienza nel loro sotto-dominio; hanno una conoscenza limitata dell’insieme, non riuscendo a cogliere l’impatto della loro attività su quelle dei colleghi che concorrono allo sviluppo del nuovo sistema/prodotto.

La gestione strutturata dei requisiti di progetto agevola le comunicazioni tra le differenti aree tecniche, minimizzando tempi e costi di sviluppo. In questo senso, meta-linguaggi come SysML o UML coadiuvano lo scambio interno di informazioni, garantendo una comune base di comunicazione ed evitando le incomprensioni derivanti dall’uso del linguaggio naturale.