Kanban is een Lean benadering van Agile softwareontwikkeling.
De betekenis is eigenlijk heel breed. Kanban is een Japans woord dat letterlijk vertaald “visuele kaart” betekent. Bij Lean – Agile is Kanban de term die wordt gebruikt voor het visuele en fysieke signaleringssysteem dat het hele Lean Production-systeem verbindt. De meest Agile methoden zoals Scrum en XP waren al goed afgestemd op lean-principes. In 2004 pionierde David Anderson echter met een directere implementatie van Lean Thinking en Theory of Constraints voor softwareontwikkeling. Onder begeleiding van experts zoals Don Reinertsen, evolueerde dit naar wat David een “Kanban-systeem voor softwareontwikkeling” noemde. De meeste mensen noemen dit nu eenvoudigweg “Kanban”. Hoewel Kanban binnen de softwareontwikkeling betrekkelijk nieuw is, is het binnen Lean Production al meer dan een halve eeuw oud.
In welke situaties zal Kanban je ondersteunen?
Klinken deze geluiden bekend in de oren?
- We gebruiken Scrum nu al heel lang en onze procesverbetering is afgevlakt. Hoe kunnen we ons proces naar een hoger niveau tillen?
- Onze behoeften en prioriteiten verschuiven dagelijks
- We houden niet van fixed-length, fixed-commitment iteraties
- We besteden te veel tijd aan planning en schatting
Als dat zo is moet Kanban, net als Scrum en XP, in de gereedschapskoffer van je Agile bedrijf zitten. Alleen de keuze voor waar en wanneer je het tool inzet moet je zelf maken.
Hoe werkt Kanban?
Er zijn veel varianten, maar in de kern doe je volgende:
- Visualiseer de workflow
- Maak een schema met benoemde kolommen om aan te geven waar een item zich in de workflow kan bevinden. Iedere kolom staat voor een workflow status. Kolommen kunnen bijvoorbeeld zijn Backlog, Selected, Develop, Deploy en Live. Deze verdeling hangt sterk af van de taakverdeling (fasering) die binnen de organisatie is gemaakt.
- Splits het werk in stukken, schrijf ieder item op een kaart en neem het op in de ge-eigende kolom van het kolommenschema.
- Bij een wijziging van de workflowstatus van het item schuift de kaart een kolom op.
- Beperk WIP (work in progress) – bepaal expliciete limieten voor het aantal items dat onderhanden is bij iedere workflowstatus.
- Meet de doorlooptijd (gemiddelde tijd om een item te voltooien), optimaliseer het proces om de doorlooptijd zo klein en voorspelbaar mogelijk te maken.
Met deze aanpak heb je een directe implementatie van een lean pull scheduling-systeem te pakken.
Wat zijn de voordelen van Kanban?
Deze voordelen komen vaak voor bij het gebruik van Kanban:
- Knelpunten worden direct duidelijk zichtbaar. Dit leidt ertoe dat mensen samenwerken om de hele waardeketen te optimaliseren in plaats van zich alleen met hun eigen deel te bemoeien.
- Kanban biedt een geleidelijk evolutiepad van waterval- naar agile softwareontwikkeling. Hierdoor blijken bedrijven, die dat eerder niet konden, in staat om Agile methoden te proberen.
- Het biedt een manier om agile software te ontwikkelen zonder noodzakelijkerwijs tijdgebonden cyclussen zoals Scrum-sprints te hoeven gebruiken. Handig voor situaties waar sprints niet veel zin hebben, zoals bij system management en supportteams met een hoge mate van onzekerheid.
- Kanban heeft de neiging om zich van nature overal in de organisatie te verspreiden. Andere afdelingen, zoals HR en verkoop, nemen het over waardoor de zichtbaarheid van alles wat er in het bedrijf gaande is, toeneemt.
Kan ik Kanban combineren met mijn huidige proces?
Ja. Eigenlijk zou je het moeten combineren. De eerste stap is je huidige ongewijzigd proces te visualiseren. Zo wordt zichtbaar waar de knelpunten zitten. Er zitten bijvoorbeeld te veel of te weinig kaarten in een kolom. Vervolgens introduceer je WIP-limieten en start je een evolutiepad dat het huidige bedrijfsproces proces in de loop van de tijd wel of niet zal wijzigen of vervangen.
Veelvoorkomende misverstanden over Kanban
- Mythe: er worden geen iteraties toegepast
- Feit: iteraties zijn optioneel. Doe het alleen als je er behoefte aan hebt binnen de context van je project.
- Mythe: er worden geen schattingen gemaakt
- Feit: zijn schattingen optioneel. Doe het alleen als je er binnen de context van je project behoefte aan hebt.
- Mythe: Kanban is beter dan Scrum / XP / RUP / whatever
- Feit: Het is slechts een procestool en er bestaat niet zoiets als een universeel goed of slecht hulpmiddel. Het hangt allemaal af van je context.
- Mythe: Kanban is een vervanging voor Scrum / XP / RUP / wat dan ook
- Feit: Het wordt gebruikt voor het beheren van de workflow. Er wordt nauwelijks iets vervangen. In Kanban begin je met het onderhanden proces, je visualiseert het, je introduceert je WIP-limieten en van af dat punt evolueer je verder.
Discussieer mee op LinkedIn.
Samenvatting
ArtikelIs Kanban het ei van Columbus?
BeschrijvingBij Lean - Agile is Kanban de term die wordt gebruikt voor het visuele en fysieke signaleringssysteem dat het hele Lean Production-systeem verbindt. De meest Agile methoden zoals Scrum en XP waren al goed afgestemd op lean-principes, Met Kanban lukt dat ook met andere methodes.
Auteur Wim Hoogenraad
Publisher Naam ITpedia
Publisher Logo