Lavoro in un piccolo team di quattro sviluppatori, un esperto di dominio e un manager. Stiamo cercando di passare all'utilizzo di scrum per provare e formalizzare i nostri processi.
Da quanto ho capito di agile, sembra essere vicino (ish) a quello che stiamo facendo comunque. Abbiamo un breve documento con le caratteristiche generali del nostro prodotto. Quando arriviamo a codificare ogni funzione, ci sediamo e la buttiamo fuori verbalmente, facendo affidamento sul nostro esperto di dominio per ciò che il cliente vorrà. Quindi lo codifichiamo e viene testato in modo vago dagli altri sviluppatori / esperti di dominio. I miglioramenti vengono suggeriti e implementati.
Al nostro ultimo audit ISO 9001 siamo stati (meritatamente) rimproverati per mancanza di tracciabilità. L'auditor voleva un modo per vedere i registri di ciò che il prodotto avrebbe fatto, e poi testare per dimostrare che lo ha fatto.
Stiamo cercando di offrirci un processo per questo, insieme ad altri vantaggi, ma la mia lettura fino ad ora non ha risposto alla mia domanda su dove sono registrati / testati i requisiti funzionali dettagliati? La mia comprensione di agile / scrum è lungi dall'essere completa, quindi per favore correggimi se ho delle incomprensioni.
Ad esempio, supponiamo di avere una User story che dice: "Come cliente, devo essere in grado di selezionare uno stato del sistema di A, B o C". Ha un test di accettazione che dice "Dovrei essere in grado di selezionare lo stato A, B o C, e il sistema cambierà in quello stato"
Vieni allo sprint dove questo viene implementato, ci sediamo e decidiamo che costruiremo un widget con i pulsanti radio A, B e C e un pulsante "Applica". Quindi lo codifichiamo.
Quando questo widget viene testato, vengono trovati i seguenti problemi: 1. La selezione di B a volte non deseleziona il pulsante di opzione precedente. 2. A volte l'opzione C non è disponibile sul sistema e quindi dovrebbe essere disattivata. 3. Alla prima apertura, la selezione iniziale non corrisponde allo stato attuale del sistema.
La mia domanda è come e dove viene registrato? Non ci sono specifiche funzionali dettagliate che dicano "Ci sarà un widget con tre pulsanti radio. Quando viene creato il widget, la selezione radio corrente deve corrispondere allo stato del sistema" blah blah. Data la mancanza di questo documento, come dovremmo dimostrare che il sistema fa o non fa ciò che deve fare un auditor?