2010-08-04 12 views
30

Praticamente ho familiarità con la metodologia Agile e Scrum.Come si riferiscono le metodologie Agile, Lean e Kanban?

Ma cosa sono "Lean Software Development" e "Kanban"?

È sicuro dire che Scrum, Lean e Kanban sono implementazioni della metodologia Agile? Oppure le metodologie Lean e Kanban sono diverse?

Do Lean e Kanban forniscono uno scheletro/linea guida (come Agile) e lasciano l'implementazione a un insieme adiacente di pratiche, come XP e Scrum?

+0

Questa domanda sembra essere off-topic perché dovrebbe andare su Programmers.SE. – Flimzy

risposta

30

In realtà, né Agile né Lean hanno una definizione precisa. Entrambi i casi riguardano piuttosto un insieme di principi e pratiche - nel primo caso, in base a Agile Manifesto, mentre il secondo si basa sul Toyota Production System adattato all'industria software/IT.

Direi che sia Lean che Agile sono due gusti dello stesso movimento nell'industria del software, concentrandosi sull'erogazione efficace di prodotti di cui i clienti hanno effettivamente bisogno (questa è una vasta generalizzazione). La differenza sta nel modo in cui questo obiettivo viene raggiunto.

Con Agile, l'attenzione si concentra sulla creazione di un processo ben organizzato, che consente consegne frequenti e consente facili adeguamenti alle esigenze dei clienti durante il corso dello sviluppo. Lean si concentra maggiormente sulla limitazione degli "sprechi" (compresi i lavori in corso considerati come uno dei tipi di rifiuti) e rendendo il flusso di lavoro di produzione e consegna il più efficiente possibile.

Spesso gli approcci agili e snelli vengono inseriti nello stesso bucket, quindi troverete tutti i tipi di missaggio: Scrum + Kanban è l'esempio più significativo; fare riferimento a Scrumban per ulteriori informazioni. A meno che non si parli con un ortodosso, non dovrebbe essere un problema se si etichetta Kanban come metodo Agile.

Per creare un ordine nelle etichette: Agile e Lean sono concetti generali. Scrum e XP sono implementazioni specifiche di Agile, mentre Lean Software Development e Kanban sono implementazioni specifiche di Lean.

Almeno questo è il modo in cui le persone di solito li percepiscono. È sicuramente possibile combinare approcci diversi, o singole pratiche, in un unico metodo. Scrum + XP o Scrum + Kanban sono probabilmente le combinazioni più popolari.

Se si desidera approfondire, posso consigliare un ottimo mini-book che confronta Kanban a Scrum: "Kanban and Scrum – Making the most of both". L'eBook in formato PDF può essere scaricato gratuitamente.

+5

+1 Estremamente utile, in particolare il paragrafo "ordina in etichetta". Grazie! – kmote

6

Esperto agile Mary Poppendieck wrote about the principles of Lean. Trova her credentials here.

Invece di scrivere molto su Kanban, please read what Swedish advisors Crisp say about it.

Le pratiche di Lean sono molto diverse dai pratici compiti pratici che XP ti richiede di programmare nel tuo progetto ("Automatizza tutto", "Avvia test", "Incontra ogni giorno"). L'analisi del flusso di valore potrebbe fornire nuove conoscenze e strumenti concettuali con cui ragionare sulle attività e sui compiti da svolgere.

Spero che questo aiuti a navigare nel processo di parlare. Buona fortuna!

6

A rischio di irritare i puristi e dal punto di vista pratico, Lean è il livello più alto di astrazione i cui principi e (la maggior parte) pratiche possono essere applicati a tutta l'azienda. Il tuo amministratore delegato comprenderà e parteciperà a Lean.Nella mia esperienza, collegare Agile a livello tattico a Lean a livello aziendale rende molto più facile la vendita ai dirigenti.

Kanban nella produzione è una tecnica di gestione delle code di inventario. Come applicato nel knowledge work (non solo IT) è una tecnica di visualizzazione del flusso di lavoro e di restrizione delle code progettata per concentrare i team sul più piccolo lotto di lavoro possibile in un momento in cui accelerare il flusso. Può essere semplice come note appiccicose su una lavagna con linee a nastro che segnano il passaggio del processo da sinistra a destra. O ci sono strumenti Kanban elettronici disponibili (standalone o componenti aggiuntivi per tutti gli strumenti ALM principali)

Kanban può essere facilmente applicato come strumento per i team Scrum semplicemente trattando la scheda kanban come rappresentazione della propria iterazione. Tu (prova a) permetti il ​​lavoro sulla scacchiera solo all'inizio dell'iterazione e deve essere nella corsia chiusa entro la fine dell'iterazione. E, usando le swimline orizzontali, puoi segmentare efficacemente la tavola in sezioni per il lavoro pianificato nell'iterazione e il (purtroppo inevitabile) lavoro di supporto alle operazioni che interrompe anche i team più disciplinati. Questo rende molto chiaro quale lavoro è stato commesso e cosa è stato coinvolto nello sprint.

Problemi correlati