Requisiti funzionali e non funzionali

Differenza chiave tra requisiti funzionali e non funzionali

  • Un requisito funzionale definisce un sistema o un suo componente, mentre un requisito non funzionale definisce l'attributo prestazionale di un sistema software.
  • I requisiti funzionali, insieme all'analisi dei requisiti, aiutano a identificare i requisiti mancanti, mentre il vantaggio dei requisiti non funzionali รจ che aiuta a garantire una buona esperienza utente e facilitร  di utilizzo del software.
  • Requisito Funzionale รจ un verbo, mentre Requisito Non Funzionale รจ un attributo
  • I tipi di requisiti non funzionali sono capacitร  di scalabilitร , disponibilitร , affidabilitร , recuperabilitร , dati Integrity, ecc., mentre correzioni, aggiustamenti e cancellazioni delle transazioni, regole aziendali, requisiti di certificazione, requisiti di reporting, funzioni amministrative, livelli di autorizzazione, tracciamento degli audit, interfacce esterne, gestione dei dati storici, requisiti legali o normativi sono vari tipi di requisiti funzionali.
Requisiti funzionali e non funzionali
Differenza tra requisiti funzionali e non funzionali

Cos'รจ un requisito funzionale?

Nell'ingegneria del software, a requisito funzionale definisce un sistema o un suo componente. Descrive le funzioni che un software deve eseguire. Una funzione non รจ altro che input, il suo comportamento e output. Puรฒ trattarsi di un calcolo, una manipolazione dei dati, un processo aziendale, l'interazione dell'utente o qualsiasi altra funzionalitร  specifica che definisce quale funzione รจ probabile che un sistema svolga.

Richieste funzionali nell'ingegneria del software ti aiutano a catturare il comportamento previsto del sistema. Questo comportamento puรฒ essere espresso come funzioni, servizi o attivitร  o quale sistema รจ tenuto a eseguire.

Cos'รจ il requisito non funzionale?

A requisito non funzionale definisce l'attributo di qualitร  di un sistema software. Rappresentano un insieme di standard utilizzati per giudicare il funzionamento specifico di un sistema. Ad esempio, quanto velocemente viene caricato il sito web?

Un requisito non funzionale รจ essenziale per garantire l'usabilitร  e l'efficacia dell'intero sistema software. Il mancato rispetto dei requisiti non funzionali puรฒ portare a sistemi che non riescono a soddisfare le esigenze degli utenti.

I requisiti non funzionali consentono di imporre vincoli o restrizioni alla progettazione del sistema nei vari backlog agili. Ad esempio, il sito dovrebbe caricarsi in 3 secondi quando il numero di utenti simultanei รจ > 10000. DescriptL'integrazione dei requisiti non funzionali รจ altrettanto critica quanto un requisito funzionale.

Esempio di requisiti funzionali

Ecco alcuni esempi di requisiti funzionali nell'ingegneria del software:

  • Il software convalida automaticamente i clienti rispetto al sistema di gestione dei contatti ABC
  • Il sistema Vendite dovrebbe consentire agli utenti di registrare le vendite dei clienti
  • Il colore di sfondo per tutte le finestre dell'applicazione sarร  blu e avrร  un valore di colore RGB esadecimale pari a 0x0000FF.
  • Solo i dipendenti di livello manageriale hanno il diritto di visualizzare i dati sulle entrate.
  • Il sistema software dovrebbe essere integrato con l'API bancaria
  • Il sistema software dovrebbe passare Unitร  508 requisito di accessibilitร .

Esempi di requisiti non funzionali

Ecco alcuni esempi di requisiti non funzionali nell'ingegneria del software:

  1. Gli utenti devono modificare la password di accesso inizialmente assegnata immediatamente dopo il primo accesso riuscito. Inoltre, l'iniziale non dovrebbe mai essere riutilizzata.
  2. Ai dipendenti non รจ mai stato consentito aggiornare le informazioni sul proprio stipendio. Tale tentativo dovrebbe essere segnalato all'amministratore della sicurezza.
  3. Ogni tentativo infruttuoso da parte di un utente di accedere a un dato viene registrato su una pista di controllo.
  4. Un sito Web dovrebbe essere in grado di gestire 20 milioni di utenti con ripercussioni sulle sue prestazioni
  5. Il software dovrebbe essere portatile. Quindi il passaggio da un sistema operativo all'altro non crea alcun problema.
  6. Dovrebbero essere controllati la riservatezza delle informazioni, lโ€™esportazione di tecnologie soggette a restrizioni, i diritti di proprietร  intellettuale, ecc.

Differenza tra requisiti funzionali e non funzionali

Di seguito รจ riportata la differenza principale tra requisiti funzionali e non funzionali nell'ingegneria del software:

Scheda Sintetica Requisito funzionale Requisito non funzionale
Cos'รจ Verbo Attributi
Requisito รˆ obbligatorio Non รจ obbligatorio
Tipo di cattura Viene acquisito nel caso d'uso. Viene catturato come attributo di qualitร .
Risultato finale caratteristica di prodotto Proprietร  del prodotto
Catturare Facile da catturare Difficile da catturare
Obiettivo Aiuta a verificare la funzionalitร  del software. Ti aiuta a verificare le prestazioni del software.
Area di interesse Concentrarsi sulle esigenze dell'utente Si concentra sulle aspettative dell'utente.
Documentazione Descrivi cosa fa il prodotto Descrive come funziona il prodotto
Tipo di test Test funzionali come sistema, integrazione, end to end, Test dell'API, ecc. Test non funzionali come prestazioni, stress, usabilitร , Test di sicurezza, ecc.
Esecuzione del test L'esecuzione del test viene eseguita prima dei test non funzionali. Dopo il test funzionale
Informazioni sul prodotto Caratteristiche Proprietร  del prodotto

Vantaggi dei requisiti funzionali

Ecco i pro/vantaggi della creazione di un tipico documento sui requisiti funzionali:

  • Ti aiuta a verificare se l'applicazione fornisce tutte le funzionalitร  menzionate nei requisiti funzionali di tale applicazione
  • Un documento sui requisiti funzionali aiuta a definire la funzionalitร  di un sistema o di uno dei suoi sottosistemi.
  • I requisiti funzionali insieme all'analisi dei requisiti aiutano a identificare i requisiti mancanti. Aiutano a definire chiaramente il servizio e il comportamento del sistema previsti.
  • Gli errori rilevati nella fase di raccolta dei requisiti funzionali sono i piรน economici da correggere.
  • Supporta obiettivi, compiti o attivitร  degli utenti per una facile gestione dei progetti
  • I requisiti funzionali possono essere espressi nel modulo del caso d'uso o nella storia dell'utente poichรฉ mostrano un comportamento funzionale visibile esternamente.

Vantaggi dei requisiti non funzionali

Vantaggi/pro dei test non funzionali in Ingegneria del software siamo:

  • I requisiti non funzionali garantiscono che il sistema software segua le norme legali e di conformitร .
  • Garantiscono l'affidabilitร , la disponibilitร  e le prestazioni del sistema software
  • Garantiscono una buona esperienza utente e facilitร  di utilizzo del software.
  • Aiutano nella formulazione della politica di sicurezza del sistema software.

Riassumi questo post con: