Posso solo dare il mio consiglio dalla mia personale esperienza.
Un datore di lavoro che avevo totalmente fallito in Agile. Il lavoro è stato svolto su una base ad-hoc, i test erano inesistenti e i requisiti sono stati documentati nelle e-mail e nei verbali delle riunioni. L'unico metodo di sviluppo utilizzato era l'anarchia, o "codifica del tipo" ignora e dimentica ". Implementare una sorta di metodo di ingegneria del software sarebbe stato impossibile in quanto gli sviluppatori erano troppo oberati di lavoro per creare una sorta di software per la gestione dei progetti di tracciamento della storia.
In un altro datore di lavoro, il nostro team ha avuto un membro eroico che ha disperatamente cercato di stabilire alcune best practice Agile: avevamo una scheda Kanban, tracciamento di problemi, abbiamo usato TDD e BDD (mentre non Agile in sé, tendono ad essere presenti in Gruppi agili). Sfortunatamente, mancavano punti come story point, sessioni di stima, pianificazione della capacità, grafici di burn-down, grafici di velocità - il tipo di utili risorse di gestione del progetto Agile che consentono al lavoro di scorrere senza intoppi. Come un classico sintomo di errore di Agile, quando la nostra scheda Kanban si è riempita troppo, abbiamo acquistato una scheda più grande: /
Il posto in cui mi trovo attualmente utilizza i punti storia come un modo di pianificare la capacità con iterazioni di due settimane, TDD, standup quotidiani, retrospettive timebox iterazione iterazione e programmazione di coppie sulla maggior parte delle cose. Questo è il risultato del totale coinvolgimento del management e della formazione del cliente.
Pensa che per far sì che Agile abbia successo in un'azienda, hai bisogno delle seguenti cose:
- Project manager che comprendono Agile e che useranno gli strumenti in modo appropriato.
- Gli sviluppatori che comprendono Agile, che sono aperti e onesti, con la disciplina che richiede Agile
- Buy-in dal cliente. Hanno bisogno di riconoscere i vantaggi di Agile e di essere disposti ad ascoltare i consigli dei loro sviluppatori riguardo a ciò che può essere sviluppato in un dato periodo di tempo.
EDIT: è anche fondamentale assicurarsi di avere una buona conoscenza di -why- cose come stand-up giornalieri e brevi iterazioni sono utili.