Le pratiche di XP in un sistema basato sul flusso—scambiando le iterazioni con la consegna continua.
XP originariamente utilizzava le iterazioni—una o due settimane di lavoro pianificato, poi una demo e una sessione di pianificazione. Kanban utilizza il flusso continuo: gli elementi di lavoro si muovono attraverso il sistema uno alla volta, senza lotti fissi.
Questi approcci non sono incompatibili. Le pratiche fondamentali di XP funzionano con qualsiasi sistema di flusso.
Cosa cambia:
Cosa rimane uguale:
Le pratiche tecniche sono indipendenti da come organizzi il lavoro.
Le pratiche ingegneristiche di XP sono agnostiche rispetto al tuo approccio di pianificazione. TDD non si preoccupa se stai facendo sprint o flusso.
La pratica distintiva di Kanban sono i limiti WIP: limitare quanto lavoro è in corso contemporaneamente.
Questo si allinea con i principi di XP:
Focus: I limiti WIP prevengono il cambio di contesto. XP valorizza il focus (ritmo sostenibile, pairing per lavoro profondo).
Flusso: Limitare il WIP crea flusso. Anche i rilasci piccoli e la CI di XP creano flusso.
Qualità: Meno WIP significa meno fretta. Il focus sulla qualità di XP beneficia della riduzione della pressione.
Finisci ciò che inizi: Sia Kanban che XP favoriscono il finire rispetto all'iniziare. Non iniziare nuovo lavoro quando il lavoro esistente può essere completato.
Pairing e WIP: Se fai pair programming, il WIP è naturalmente limitato. Due persone su un elemento significano meno elementi in corso.
La sinergia è forte. I vincoli di Kanban completano il focus di XP su qualità e completamento.
Kanban spinge verso la consegna continua: ogni elemento completato è potenzialmente rilasciabile. Le pratiche di XP rendono questo possibile.
Perché XP abilita la consegna continua:
Kanban senza le pratiche di XP fatica a raggiungere la consegna continua. Senza test, non puoi essere sicuro che le cose funzionino. Senza CI, l'integrazione è incerta. Senza design semplice, i rilasci sono complessi.
Insieme: Kanban dice "consegna continuamente." XP dice "ecco come."
Gli elementi di lavoro fluiscono attraverso la board: Backlog → In Progress → Review → Done. Gli sviluppatori lavorano in coppia sugli elementi, scrivono i test prima, integrano continuamente. Quando un elemento raggiunge Done, viene deployato immediatamente. Il WIP è limitato a 3 elementi in corso.
Un team usa una board Kanban ma non ha test, né pairing, né CI. Gli elementi si muovono attraverso la board ma la qualità è scarsa. 'Done' non significa deployabile—significa 'pensiamo che funzioni.'
ScrumBan combina Scrum, Kanban e (spesso implicitamente) XP:
Da Scrum:
Da Kanban:
Da XP:
Questo ibrido funziona bene per i team che vogliono struttura (Scrum) con flusso (Kanban) e qualità (XP).
L'etichetta conta meno delle pratiche. Usa ciò che funziona; abbandona ciò che non funziona.
Quando usare XP con iterazioni (stile Scrum):
Quando usare XP con flusso (stile Kanban):
Entrambi gli approcci funzionano con le pratiche di XP. Le pratiche rimangono; cambia il contenitore organizzativo.
Molti team evolvono da Scrum verso Kanban man mano che maturano. Le iterazioni forniscono rotelle di supporto. Il flusso è il livello avanzato. Ma non c'è niente di sbagliato nel rimanere con le iterazioni se funzionano per te.
Se non sei sicuro, inizia con le iterazioni. La struttura aiuta i team a imparare. Puoi sempre passare al flusso più tardi man mano che maturi.