Sto cercando di capire la differenza un po 'meglio perché sembra che siano la stessa cosa.
Lavoro in progetti che non usano i requisiti e tutto è un criterio di accettazione e su progetti che hanno entrambi.
Sto cercando di capire la differenza un po 'meglio perché sembra che siano la stessa cosa.
Lavoro in progetti che non usano i requisiti e tutto è un criterio di accettazione e su progetti che hanno entrambi.
I criteri di accettazione definiscono quando l'applicazione è finita. O per dirla in altro modo, quando puoi spedirla. Include un elenco di requisiti che has to
soddisfa. Ciò significa che alcuni requisiti (in genere i requisiti "carini di avere") potrebbero cadere e essere implementati nella prossima versione.
Per espanderlo ulteriormente (tratto da qui ):
Microsoft Press defines Acceptance Criteria as “Conditions that a software product must satisfy to be accepted by a user, customer or other stakeholder.” Google defines them as “Pre-established standards or requirements a product or project must meet.”
e
Acceptance Criteria are a set of statements, each with a clear pass/fail result, that specify both functional (e.g., minimal marketable functionality) and non-functional (e.g., minimal quality) requirements applicable at the current stage of project integration. These requirements represent “conditions of satisfaction.” There is no partial acceptance: either a criterion is met or it is not.
Un requisito descrive una determinata funzionalità dell'applicazione.
Oppure, come wiki ben indicato:
a requirement is a singular documented physical and functional need that a particular design, product or process must be able to perform.
What is the difference between the acceptance criteria and the application requirements?
Con le definizioni di cui sopra, la differenza è abbastanza chiara.
I requisiti sono che devi fare.
I criteri di accettazione sono concordati misure per dimostrare che li hai fatti.
I requisiti sono ciò che il cliente / cliente ha richiesto.
I criteri di accettazione, spesso espressi come test, sono usati per illustrare i Requisiti e per indicare, quando i test superano, che i Requisiti sono stati soddisfatti.
È spesso una questione di tempistiche
I requisiti sono in anticipo. I criteri di accettazione sono al punto di consegna del software.
Questo è come altri hanno risposto ...
C'è un problema più profondo e forse lo stai vedendo:
In un mondo "ideale", questi sarebbero semplicemente uguali. Tuttavia nel mondo reale accade molto tra questi due eventi, spesso inclusi alcuni dei seguenti:
Spesso è una questione di "livello di dettaglio", con i requisiti ad alto livello, ad es. "un modulo di elaborazione dei rimborsi" e i criteri di accettazione a un livello più basso e più dettagliato come "un rimborso richiesto deve essere completato entro 3 giorni e un avviso inviato via email al cliente"
I Requisiti rientrano nella verifica che risponde alla domanda:
Was the product built correctly? (bottom-up as per the requirements)
I criteri di accettazione rientrano nella validazione che risponde alla domanda:
Was the correct product built? (top-down as evidenced by passing acceptance tests)
I requisiti sono spesso guidati dal cliente. In uno schema di sviluppo a cascata questi sono l'elenco dei risultati attesi dal completamento di un progetto. Nella sua descrizione di base i requisiti non sono altro che una cosa da fare per un progetto.
I criteri di accettazione sono spesso guidati dalla relazione tra due parti. Possono essere indipendenti dai requisiti e / o correlati ai requisiti. Ciò non li rende la stessa cosa, ma solo correlati. A differenza dei requisiti, i criteri di accettazione non sono una lista di cose da fare. È un elenco di condizioni che devono essere rispettate affinché l'accordo sia considerato concluso.
Alcune risposte hanno dichiarato test unitari, budgeting e project management come esempi, ma questi sono solo esempi di condizioni inserite nel accordo come criteri di accettazione .
È possibile che uno sviluppatore completi nessuno dei requisiti e soddisfi ancora i criteri di accettazione per completare il progetto.
Ad esempio;
Requisiti per aggiornare il sistema di punti vendita con nuove modifiche alla normativa fiscale. Criteri di accettazione tra lo sviluppatore e lo sviluppatore degli stati del client accetta di completare 40 ore di lavoro per eseguire l'aggiornamento. Se il lavoro non viene completato in quel momento, non verranno pubblicati aggiornamenti per il sistema poiché questo è il limite di budget dei clienti.
Lo sviluppatore stipula il contratto e, dopo 40 ore di lavoro, riferisce che il cambiamento è significativo, con oltre 40 ore di completamento. Il client accetta questo risultato, paga allo sviluppatore i loro salari e il loro accordo è finito.
Leggi altre domande sui tag requirements agile acceptance-testing