Qual è la differenza tra un requisito non funzionale e un attributo di qualità?


13

Sto cercando di capire la differenza tra requisiti non funzionali e attributi di qualità. Sono la stessa cosa?

È possibile trovare un set di attributi di qualità nello standard ISO9126.

So che ogni sistema è definito da una serie di requisiti funzionali e ognuno di questi requisiti ha associato uno o più attributi di qualità. Ad esempio, supponiamo di avere il requisito che descrive la funzionalità di accesso di un sistema. È possibile associare a tale requisito gli attributi di sicurezza e prestazioni.

Se dico che il sistema non può richiedere più di 1 secondo per rispondere, sto parlando di un vincolo.

Quindi, dove entra in gioco il concetto di requisiti non funzionali? Sono definiti dagli utenti? Come posso identificarli?


3
Per rispondere alla tua domanda: sì, i requisiti non funzionali e gli attributi di qualità sono la stessa cosa.
divorato elisio

Risposte:


9

Penso che ci stia pensando un po 'troppo. I requisiti funzionali e non funzionali non sono realmente separabili come si suggerisce, ad esempio il caso di accesso.

L'utente DEVE essere in grado di accedere tramite un'interfaccia web. Tecnicamente, questo è un requisito funzionale.

Il sistema DEVE rispondere alle richieste di accesso entro 1 secondo. Tecnicamente, questo è un requisito non funzionale.

In entrambi i casi, entrambi sono altrettanto importanti, indipendentemente dalla classificazione specifica.

I requisiti possono provenire da qualsiasi numero di posti. Potresti desiderare prestazioni migliori rispetto a un concorrente. Un cliente potrebbe avere esigenze specifiche. Potrebbe esserci una richiesta dal marketing o dalle vendite. Non c'è un posto da dove vengano. Tuttavia, potresti probabilmente sottrarre tutte le diverse fonti e fare riferimento a loro come clienti. Alla fine è quello che sono.

È possibile identificare la differenza utilizzando la seguente metrica. I requisiti funzionali descrivono cosa farà un sistema. Un requisito non funzionale specifica come lo fa.



9

La regola è semplice e chiara.

I requisiti funzionali sono cose che il sistema fa .

I requisiti non funzionali sono attributi di qualità o aspetti di come il sistema è progettato, costruito o implementato.

  • Performance (1 secondo)
  • manutenibilità
  • Adattabilità
  • Costo
  • sicurezza
  • usabilità (che è una proprietà del sistema nel suo insieme)
  • testabilità
  • scalabilità

Leggi questo È molto chiaro http://en.wikipedia.org/wiki/Non-functional_requirement

I requisiti non funzionali si presentano allo stesso modo dei requisiti funzionali. Utenti. Il contesto in cui verrà implementato il sistema. Molti posti. Gestione. Altre organizzazioni Amministratori di rete, amministratori di sistema, amministratori di database. Chiunque sia un stakeholder o semplicemente uno spettatore contribuirà con requisiti non funzionali.

Se guardo ai "documenti sui requisiti" degli ultimi 30 anni, posso dire questo. Molti documenti sui requisiti scritti da grandi organizzazioni IT interne sono dichiarazioni politiche con forse l'80% di requisiti non funzionali e meno del 20% di requisiti funzionali.

Ne ho letto uno con una sola frase che era un requisito funzionale. Il resto del documento di 30 pagine parlava di piattaforma, supporto, backup e ripristini, sistemi operativi e database, standard e operazioni, nonché un sacco di cose che il sistema non faceva .


LOL, ho avuto l'esperienza opposta di molti requisiti funzionali e non di quelli non funzionali fino a quando il sistema non è completato e non è abbastanza veloce (o abbastanza sicuro, ecc.), MA allora i nostri requisiti sono scritti da persone sul lato commerciale.
HLGEM,

4

I requisiti non funzionali e gli attributi di qualità sono la stessa cosa

L'idea alla base della modifica del nome negli ultimi tempi è che questi cosiddetti requisiti non funzionali sono in realtà funzionalità di sistema (o un insieme di funzionalità di sistema) che ha un impatto trasversale nel sistema. Ciò significa che l'impatto trasversale che questo tipo di "funzionalità speciale" ha in un sistema lo rende un attributo di qualità di quel sistema. Come esempio:

Un sistema con 5 componenti deve elaborare una richiesta in 10ms. Se un componente ha un difetto che impiega 5 ms per fare la sua parte nell'elaborazione, ciò influenzerà le prestazioni del sistema nel suo insieme.

Proprio come la sicurezza non riguarda solo un account di accesso e quando è interessato influisce sull'intero sistema.

Riassumendo, gli attributi di qualità (ovvero i requisiti non funzionali) riguardano la funzionalità, il modo in cui implementate qualcosa e il modo in cui questa implementazione influenza i vostri sistemi. In genere, la differenza rispetto ai "requisiti normali" sta nel suo impatto, portata e visibilità.

Ecco un link interessante su come identificarli in modo strutturato:

E un libro su come documentarli e definirli correttamente:

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.