Posso solo dare il mio consiglio dalla mia esperienza personale.
Un datore di lavoro che avevo completamente fallito in Agile. Il lavoro è stato svolto su 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 incendi e dimentica". L'implementazione di un qualche tipo di metodo di ingegneria del software sarebbe stata impossibile in quanto gli sviluppatori erano troppo oberati di lavoro per creare un qualche tipo di software di gestione dei progetti di tracciabilità delle storie.
In un altro datore di lavoro, il nostro team aveva un membro eroico che cercava disperatamente di stabilire alcune best practice Agile: avevamo una scheda Kanban, tracciabilità dei problemi, usavamo TDD e BDD (anche se non Agile in sé, tendono ad essere presenti nei gruppi Agile) . Sfortunatamente, mancavano cose come i punti della storia, le sessioni di stima, la pianificazione della capacità, i grafici di burn-down, i grafici della velocità - il tipo di cose utili per la gestione dei progetti Agile che consentono al lavoro di scorrere senza intoppi. Come un classico sintomo di Agile che va storto, quando la nostra tavola Kanban è diventata troppo piena, abbiamo comprato una tavola più grande: /
Il posto in cui mi trovo attualmente utilizza i punti di trama come un modo di pianificare la capacità con iterazioni di due settimane, TDD, standup giornalieri, retrospettive temporizzate iterazione per iterazione e accoppia la programmazione sulla maggior parte delle cose. Questo è il risultato del buy-in di gestione totale e della formazione del cliente.
Pensa che, affinché Agile abbia successo in un'azienda, sono necessari i seguenti elementi:
- Project manager che comprendono Agile e che useranno gli strumenti in modo appropriato.
- Sviluppatori che comprendono Agile, che sono aperti e onesti, con la disciplina richiesta da Agile
- Buy-in dal client. Devono riconoscere i vantaggi di Agile ed essere disposti ad ascoltare i consigli dei loro sviluppatori in merito a ciò che può essere sviluppato in un determinato arco di tempo.
EDIT: è anche fondamentale assicurarsi di avere una buona comprensione di -perché- cose come stand-up giornalieri e brevi iterazioni sono utili.