Sono un grande fan dello sviluppo agile e ho utilizzato XP in un progetto di grande successo alcuni anni fa. Mi è piaciuto tutto, l'approccio di sviluppo iterativo, la scrittura del codice attorno a un test, la programmazione di coppie, l'avere un cliente sul posto per gestire le cose. È stato un ambiente di lavoro altamente produttivo e non ho mai sentito di essere sotto pressione.
Comunque gli ultimi posti in cui ho lavorato usano / usano Scrum. So che al giorno d'oggi è il bambino dei poster per uno sviluppo agile, ma non sono convinto al 100% che sia agile. Di seguito sono riportati i due principali motivi per cui semplicemente non mi sento agile.
Project Managers Love It
I project manager, che per loro stessa natura sono ossessionati dalle scadenze, sembrano tutti amare Scrum. Nella mia esperienza sembrano usare Sprint Backlog come mezzo per tenere traccia dei requisiti di tempo e tenere un registro di quanto tempo è stato speso per un determinato compito. Invece di usare una lavagna usano tutti un foglio Excel, che ogni sviluppatore deve compilare, religiosamente.
Secondo me è troppa documentazione / tracciamento del tempo per un processo agile. Perché dovrei sprecare tempo a stimare quanto a lungo mi ci vorrà un compito quando riesco ad andare avanti con il compito stesso. O allo stesso modo, perché dovrei sprecare tempo a documentare quanto tempo è stato necessario per un compito quando posso passare al prossimo compito a portata di mano.
Riunioni di stand-up
Gli incontri standup nel posto precedente in cui lavoravo erano un incubo. Ogni giorno dovevamo spiegare cosa avevamo fatto ieri e cosa avremmo fatto quel giorno. Se siamo andati oltre il nostro tempo di "stima" per un compito, il project manager avrebbe sollevato una puzza, e fare riferimento allo Sprint Backlog come mezzo di dimostrazione di incompetenza per non aderire alla timeline.
Ora capisco la necessità di comunicare, ma sicuramente il tono degli incontri quotidiani dovrebbe essere leggero e concentrarsi sulla condivisione della conoscenza. Non penso che dovrebbe trasformarsi in una dove è la tua sciarada stile di compiti. Inoltre sicuramente il punto di svolta di agile è che le linee temporali cambiano, non dovrebbero essere impostate in pietra.
Conclusione
L'idea di agile è quella di migliorare il software rendendo la vita degli sviluppatori più semplice. Pertanto, a mio parere, qualsiasi processo agile utilizzato da una squadra dovrebbe essere guidato dagli sviluppatori. Non credo che avere un project manager utilizzare un processo che hanno etichettato come "agile" per tenere traccia di un progetto ha a che fare con lo sviluppo agile.
Pensieri a qualcuno?