Non sto cercando consigli su come dovrebbe funzionare il processo agile. Conosco quella parte. Sono curioso di sapere quale sia il modo migliore per adattare il processo a una tipica azienda grande e ben consolidata che ama i suoi "processi" e le revisioni di gate / passaporti.
Per chi è abbastanza fortunato da non sapere cosa sia, le porte / passaporti sono essenzialmente pietre miliari delle cascate presentate dai team di sviluppo ai dirigenti: Gate 0 - kick off, identificando i progetti positivi di npv; Gate 1 - pianificazione del lavoro per il rilascio, inizia la codifica, Gate 2 - codice completo / fase di test, Gate 3 ....
Mentre all'interno del nostro team abbiamo cercato di abbracciare il più possibile (revisioni tra pari, iterazioni, comunicazione costante, fare ciò che ha senso, miglioramento continuo ...), queste porte arrivano da cima a fondo e non c'è niente può fare su di loro.
Di molte cose che mi infastidiscono, una di queste è che l'ambiente aziendale in cui ci troviamo, impone alcuni vincoli che sembrano avere effetti negativi sul nostro modo di lavorare. Un esempio è che durante lo sviluppo ci concentriamo solo sulle nuove funzionalità e ignoriamo gli errori esistenti e introduciamo anche nuovi bug. Questo è sfortunato e va contro l'agilità, ma non abbiamo scelta poiché il codice completo potrebbe essere in 2 mesi, ma la fase di "testing / bug fixing" può durare 6 mesi. Siamo costantemente sotto pressione per "finire il lavoro", ma l'enfasi è sul completamento delle funzionalità, non sul raggiungimento di un prodotto stabile. Questa parte abbiamo imparato a convivere con noi.
La mia domanda è quale strategia (modalità operativa riuscita) ha individuato altri team / aziende per la fase di "testing" che segue una pietra miliare "completa del codice"?
Durante il "nuovo sviluppo" abbiamo iterazioni e ognuna viene riempita di storie e compiti. Tuttavia, attualmente una volta che lo sviluppo è "finito", non ci sono più iterazioni e non più pianificazione. Al contrario, utilizziamo esclusivamente il database di tracciamento dei bug per monitorare quanti nuovi bug sono stati trovati e quanto velocemente i bug sono stati risolti.
Personalmente, non vedo la differenza tra l'aggiunta di nuove funzionalità dell'interfaccia utente e il funzionamento della funzionalità dell'interfaccia utente esistente. Per me il lavoro è lavoro. Proposi di continuare ad avere iterazioni come di consueto e di continuare a programmare il lavoro come prima, ma né la direzione né altri membri del team sembravano esserne d'accordo. Quindi 1) sono lontano e il database delle tracce è il migliore che possiamo fare? e 2) se c'è un approccio migliore, mi piacerebbe esplorarlo e forse acquisire abbastanza munizioni da riportare al mio capo. Allo stesso tempo, sono un po 'd'accordo sul fatto che un sacco di volte quando si reagisce ai bug non abbiamo il lusso di aspettare fino alla prossima iterazione.
--- Chiaro chiarimento basato sulle prime poche risposte ---
Siamo appena entrati nella fase di test. Al momento, non ci sono più storie, non più iterazioni. Solo database di tracciamento dei bug. Questo non mi sta proprio bene, ecco perché sono curioso di sapere cosa farebbero gli altri team in questa situazione. Inoltre alcuni bug hanno sicuramente le dimensioni di una storia di medie dimensioni, mentre altri bug richiederebbero 5 minuti per essere risolti. Anche gli errori di 5 minuti diventano storie se dovessimo continuare con le iterazioni? L'altro argomento che abbiamo avuto è che durante il "nuovo sviluppo" interagiamo solo con lo strumento di tracciamento Agile (Rally) ma in "testing" se continuiamo con le iterazioni, dovremmo mantenere traccia cartacea in Rally così come in software di tracciamento dei bug.