Attualmente sto lavorando in un piccolo team di sviluppo software interno di quattro persone. Avendo avuto molto successo con Agile in passato (che nessuno dei miei colleghi ha mai usato prima), sono desideroso di provare a passare a un processo più agile.
Il problema è che non abbiamo risorse di QA dedicate. Non è così pericoloso come sembra: il 90% del lavoro che facciamo è su progetti interni e il "team di test" finisce per essere gli utenti che fanno UAT. Ovviamente non è l'ideale: non sono così veloci o completi quanto il QA dedicato, ma in sostanza funziona.
Al momento eseguiamo versioni e demo incrementali, dopo di che gli utenti eseguono alcuni test e contrassegnano le cose come completate. Tuttavia, sto cercando di capire come integrare questo processo nel tradizionale framework Agile.
Comprendo l'importanza di terminare un'attività in uno sprint e di non contrassegnare una funzionalità come completa finché non è stata testata. Apprezzo anche che possiamo eseguire molti test automatizzati, ma, secondo la mia esperienza, ci sono spesso molti requisiti che non sono adatti per un test automatico e richiedono una sorta di controllo qualità.
Allo stato attuale, non possiamo fare test fino a dopo il rilascio. E non possiamo avere alcun controllo su quando questo test viene eseguito (gli utenti hanno altri compiti da fare). E non possiamo avere una risorsa di QA dedicata (ho chiesto, ma sono in una situazione di uova e galline di dover dimostrare che funziona prima di ottenere il budget).
Che cosa posso fare? E 'abbastanza buono solo per fare i nostri magri test interni / automatizzati e contrassegnare le cose come "fatte" per ora, con UAT che è una fase separata? O esiste un modo per integrare meglio l'UAT nei cicli di sprint?
Ci sono altre domande
- Codifica e test nello stesso sprint
- Dilemma del QA rispetto alle iterazioni
- Viabilità di un team di sviluppo senza * dedicato * Ruolo del tester
Sembrano simili al problema centrale di questo, tuttavia, tutte le risposte presumono un team di controllo qualità esistente, solo uno che non funziona in sincronia con gli sviluppatori. In questa situazione non c'è alcun QA. In effetti, il solito livello intermedio di test è del tutto assente.