Identificare e stabilire un insieme di requisiti all'inizio di qualsiasi progetto è fondamentale per raggiungere il successo. Questo articolo, in modo semplice, mira a introdurvi alla creazione di un piano di gestione dei requisiti nei progetti di ingegneria attraverso alcuni concetti di base e l'uso di Altium Develop requirements and systems capabilities.
Questo blog è destinato a ingegneri, professionisti, project manager, product manager e chiunque abbia la necessità di comprendere come creare un piano di gestione dei requisiti.
Leggi di più: Guida alla Gestione dei Requisiti per i Team di Hardware Elettronico Moderno
Sebbene sia ovvio, vale la pena riflettere sulla questione "cos'è un requisito?" Un requisito, secondo il dizionario, è "una circostanza o condizione necessaria per qualcosa". Nel mondo dell'ingegneria, i requisiti sono un modo di comunicare tra utenti o clienti e gli sviluppatori di un progetto. A volte, specialmente in progetti di grandi dimensioni, questa è una delle poche modalità possibili per gli utenti di dire agli sviluppatori ciò che desiderano.
Esempio di un requisito in un progetto automobilistico:
"Gli utenti devono essere in grado di viaggiare automaticamente a velocità predefinite mediante il controllo della crociera."
Si dice che:"una cattiva definizione e gestione dei requisiti può costarti una fortuna e portare al fallimento nell'esecuzione del progetto."
La definizione dei requisiti è così importante che generalmente costituisce la base dei contratti tra clienti e fornitori. Ciò che è definito nei requisiti deve essere considerato nel progetto e può essere richiesto dal cliente, tuttavia, ciò che non appare nella definizione dei requisiti non potrà essere richiesto nella fase di consegna del progetto.
Quindi, se siamo responsabili della stesura dei requisiti, dovremmo:
Questo gruppo di azioni è noto come piano di gestione dei requisiti. È molto importante avere un manager o un team di gestione nell'organizzazione che identifichi, definisca e tracci i requisiti per tutta la durata del progetto.
Scrivere un requisito non è semplice e banale come può sembrare. È un documento che deve soddisfare certi criteri. Pertanto, un requisito deve:
Esempio di un requisito ben scritto:
Esempio di un requisito scritto male:
Nell'esempio sopra, il requisito ben scritto è conciso e definisce perfettamente senza ambiguità ciò che è richiesto, mentre il requisito scritto male ha troppo testo, il quale non contribuisce a nulla, confonde il lettore ed è impreciso (non definisce su quale lato i componenti dovrebbero essere posizionati).
I requisiti sono sempre obbligatori e, quindi, dovrebbero essere scritti usando 'deve'. Quando i requisiti sono preferenze o desideri (non obbligatori) si può usare 'dovrebbe' per definirli o anche 'può' quando è un suggerimento o viene data un'autorizzazione.
Oltre a quanto sopra, quando definiamo un requisito, questo deve seguire alcune regole base:
Ogni requisito definito deve avere un ID unico in modo che possa essere riferito durante la definizione e la revisione dei requisiti, così come in qualsiasi momento durante la fase di esecuzione del progetto. Un esempio di identificazione dei requisiti è mostrato utilizzando Altium Develop requirements and systems capabilities.
Esistono principalmente due tipi di requisiti:
La combinazione di questi requisiti funzionali e non-funzionali costituisce quello che è noto come specifica del sistema. Nella specifica del sistema, i requisiti sono raggruppati secondo i seguenti livelli:
I requisiti iniziali o del cliente sono quelli forniti direttamente dal cliente o dall'utente prima dell'inizio del progetto. Sono fondamentali, poiché catturano le esigenze del cliente e quindi fungono da punto di partenza per la creazione della nostra matrice dei requisiti. Successivamente, la specifica del sistema organizza i requisiti in base al livello di dettaglio pertinente a ciascuna parte del progetto. In questo modo, abbiamo requisiti di sistema, che si applicano all'intero sistema, e requisiti di sottosistema, che si applicano solo a parti specifiche del sistema. Illustreremo ciò con un esempio.
Supponiamo che stiamo sviluppando un progetto in cui verrà creato un nuovo smartwatch. I requisiti di sistema, quindi, sono quelli che si applicano all'insieme (vedi gli esempi di seguito):
Una volta definiti i requisiti di sistema, i restanti requisiti sono suddivisi in diversi sottosistemi.
Seguendo l'esempio del progetto di sviluppo dello smartwatch, esempi di sottosistemi includono:
Quindi, la definizione dei requisiti dei sottosistemi potrebbe essere la seguente:
Questa organizzazione strutturata dei requisiti permette una definizione, tracciamento e gestione più semplici.
In un piano di gestione dei requisiti,la tracciabilità dei requisiti è essenziale; ciò significa tracciare o osservare l'evoluzione dell'implementazione dei requisiti durante il progetto.
Proseguendo con l'esempio del progetto di smartwatch, una volta che gli schemi del prodotto sono stati progettati, ingegneri e manager devono tenere tutte le riunioni necessarie per verificare che la soluzione progettata soddisfi i requisiti definiti prima di passare al passo successivo, in questo caso, il layout del PCB.
Altium Develop requirements e le capacità dei sistemi aiutano in questo compito, poiché forniscono visibilità dei requisiti definiti direttamente in Altium. Ciò significa che manager e ingegneri possono ora tracciare i requisiti nel design in tempo reale, tramite un browser web, consentendo loro di aggiungere commenti, assegnare compiti ai membri del team e fornire visibilità in tempo reale dei cambiamenti nei requisiti agli ingegneri del design, trasformando completamente il tradizionale paradigma di progettazione e revisione.
Esistono vari modi per gestire i requisiti. Le aziende con minori risorse finanziarie e i professionisti indipendenti spesso utilizzano strumenti semplici ed economici come fogli di calcolo controllati da versione, mentre le aziende più grandi tipicamente utilizzano software specializzati per la gestione dei requisiti come DOORS, Valispace, Confluence, ReqView, tra gli altri.
Basandoci sulle sezioni precedenti, potremmo definire il piano di gestione dei requisiti come l'insieme di azioni attraverso le quali l'azienda definisce, gestisce, verifica e valida le esigenze o i requisiti degli stakeholder durante l'esecuzione del progetto, dalla concezione alla commercializzazione. L'immagine seguente illustra un flusso di lavoro di un piano di gestione dei requisiti standard.
Ogni progetto di ingegneria deve avere un piano di gestione dei requisiti che assicura che il team di sviluppo comprenda pienamente le esigenze del cliente e tutti i requisiti di sistema e sottosistema.
Devono essere seguite delle regole base per scrivere e definire i requisiti. Allo stesso modo, è essenziale comprendere i tipi di requisiti che esistono e come classificarli correttamente, così come comprendere cosa sia la tracciabilità dei requisiti.
I requisiti sono stati scritti per essere soddisfatti, quindi, osservarli e tracciarli durante l'esecuzione del progetto è molto importante, poiché più presto viene rilevata una deviazione o una non conformità, minore sarà l'impatto sul progetto.
Utilizza Altium per sviluppare requisiti e capacità di sistema al massimo delle loro potenzialità. Questo consente un'interazione molto più stretta tra l'ingegneria dei requisiti e l'ingegneria dello sviluppo, riducendo la probabilità di deviazioni del progetto e accorciando i tempi di sviluppo.
Inizia oggi a utilizzare la gestione dei requisiti moderna e potenziata dall'IA!