Qual è la differenza tra requisiti funzionali e non funzionali nel contesto della progettazione di un sistema software?
Fornisci esempi per ciascun caso.
Qual è la differenza tra requisiti funzionali e non funzionali nel contesto della progettazione di un sistema software?
Fornisci esempi per ciascun caso.
Risposte:
Un requisito funzionale descrive cosa dovrebbe fare un sistema software, mentre i requisiti non funzionali pongono vincoli su come il sistema lo farà.
Lasciami elaborare.
Un esempio di requisito funzionale sarebbe:
Un requisito non funzionale correlato per il sistema può essere:
Il requisito funzionale descrive il comportamento del sistema in relazione alla funzionalità del sistema. Il requisito non funzionale elabora una caratteristica prestazionale del sistema.
I requisiti in genere non funzionali rientrano in settori quali:
Un elenco più completo è disponibile alla voce di Wikipedia per i requisiti non funzionali .
I requisiti non funzionali sono talvolta definiti in termini di metriche (ovvero qualcosa che può essere misurato sul sistema) per renderli più tangibili. I requisiti non funzionali possono anche descrivere aspetti del sistema che non riguardano la sua esecuzione, ma piuttosto la sua evoluzione nel tempo (es. Manutenibilità, estensibilità, documentazione, ecc.).
i requisiti funzionali sono le principali cose che l'utente si aspetta dal software, ad esempio se l'applicazione è un'applicazione bancaria, l'applicazione dovrebbe essere in grado di creare un nuovo account, aggiornare l'account, eliminare un account, ecc. i requisiti funzionali sono dettagliati e specificati nella progettazione del sistema
I requisiti non funzionali non sono semplici requisiti del sistema, ma sono correlati all'usabilità (in qualche modo), ad esempio per un'applicazione bancaria sarà disponibile un requisito non funzionale principale, l'applicazione dovrebbe essere disponibile 24 ore su 24, 7 giorni su 7, senza tempi di inattività se possibile.
Requisiti funzionali specifica una funzione che un sistema o un componente di sistema deve essere in grado di eseguire. Può essere documentato in vari modi. I più comuni sono descrizioni scritte nei documenti e casi d'uso.
I casi d'uso possono essere elenchi di enumerazione testuali nonché diagrammi che descrivono le azioni dell'utente. Ogni caso d'uso illustra scenari comportamentali attraverso uno o più requisiti funzionali. Spesso, tuttavia, un analista inizia suscitando una serie di casi d'uso, da cui l'analista può derivare i requisiti funzionali che devono essere implementati per consentire a un utente di eseguire ogni caso d'uso.
Requisiti funzionali è ciò che un sistema dovrebbe realizzare . Può essere
Un tipico requisito funzionale conterrà un nome e un numero univoci, un breve riepilogo e una logica. Queste informazioni vengono utilizzate per aiutare il lettore a capire perché è necessario il requisito e per tracciare il requisito attraverso lo sviluppo del sistema.
LBushkin ha già spiegato di più sui requisiti non funzionali. Aggiungerò altro.
I requisiti non funzionali sono altri requisiti oltre ai requisiti funzionali. Questi sono i requisiti che specificano i criteri che possono essere utilizzati per giudicare il funzionamento di un sistema, piuttosto che comportamenti specifici .
I requisiti non funzionali si presentano sotto forma di "sistema deve essere" , una proprietà generale del sistema nel suo insieme o di un aspetto particolare e non una funzione specifica. Le proprietà complessive del sistema indicano comunemente la differenza tra successo o fallimento del progetto di sviluppo.
Requisiti non funzionali - possono essere suddivisi in due categorie principali:
- Requisiti di prestazione
- Requisiti di interfaccia
- Requisiti operativi
- Requisiti di risorse
- Requisiti di verifica
- Requisiti di accettazione
- Requisiti per la documentazione
- Requisiti di sicurezza
- Requisiti di portabilità
- Requisiti di qualità
- Requisiti di affidabilità
- Requisiti di manutenibilità
- Requisiti di sicurezza
Se un requisito sia espresso come requisito funzionale o non funzionale può dipendere:
Ex. Potrebbe essere necessario un sistema per presentare all'utente una visualizzazione del numero di record in un database. Questo è un requisito funzionale. Quanto aggiornato sia questo aggiornamento, è un requisito non funzionale. Se il numero deve essere aggiornato in tempo reale, gli architetti di sistema devono assicurarsi che il sistema sia in grado di aggiornare il conteggio dei record [visualizzati] entro un intervallo accettabilmente breve del numero di record che cambiano.
Riferimenti:
I requisiti funzionali sono quelli correlati alla funzionalità tecnica del sistema.
requisito non funzionale è un requisito che specifica i criteri che possono essere utilizzati per giudicare il funzionamento di un sistema in condizioni particolari, piuttosto che comportamenti specifici.
Ad esempio, se si considera un sito di shopping, l'aggiunta di articoli al carrello, la navigazione di articoli diversi, l'applicazione di offerte e offerte e l'inserimento corretto di ordini rientrano nei requisiti funzionali.
Laddove, come prestazioni del sistema nelle ore di punta, il tempo impiegato dal sistema per recuperare i dati dal DB, la sicurezza dei dati dell'utente, la capacità del sistema di gestire se un gran numero di accessi degli utenti rientra in requisiti non funzionali.
REQUISITI FUNZIONALI delle attività che il sistema deve svolgere
Penso che il requisito funzionale sia dal lato client a quello sviluppatore per quanto riguarda la funzionalità dell'utente da parte del software e il requisito non funzionale sia dallo sviluppatore al client, ovvero il requisito non è dato dal client ma è fornito dallo sviluppatore per far funzionare il sistema senza problemi, ad es. sicurezza, protezione, flessibilità, scalabilità, disponibilità, ecc.