25 jan Essence: Efficiënte ontwikkeltrajecten door het gebruik van Alpha’s
Harmen de Boer
In een eerdere publicatie schreven Marco van Dop en Dennis Geluk over Essence, een krachtig framework voor softwareontwikkeling dat het mogelijk maakt om op een abstract conceptueel niveau naar een ontwikkelproces te kijken.
Uit onderzoek blijkt dat softwareontwikkelmethoden zoals bijvoorbeeld Waterval, RUP, RAD, SCRUM, Lean, Agile, en Safe allemaal dezelfde kern bevatten. Dit wil zeggen dat, als we deze kern begrijpen, we in elke situatie de optimale ontwikkelmethode kunnen definiëren als een combinatie van best practices uit verschillende ontwikkelmethodes. Zo zijn we niet langer beperkt door één bepaalde ontwikkelmethode en kunnen we de sterke punten van verschillende methodes combineren.
Volgens Essence bestaat de kern van elke ontwikkelmethode uit drie (verzamelingen van) basiselementen:
- Things to work with (Alpha’s),
- Things to do (Activity spaces),
- Skills needed (competences)
De Alpha’s nemen een belangrijke plek in binnen Essence. Deze 7 “things to work with” (opportunity, stakeholders, requirements, software system, work, team en way of working) geven een indicatie van de voortgang en de kwaliteit van een ontwikkeltraject.
In dit artikel beschrijven we kort hoe we Alpha’s kunnen gebruiken om onze ontwikkeltrajecten (ongeacht de ontwikkelmethode) nog efficiënter te maken.
Wat zijn de Alpha’s in Essence?
De 7 Alpha’s kunnen als volgt samengevat worden:
- Er is altijd een Klantbehoefte (Customer) die we kunnen identificeren als probleem of kans (Opportunity). Er zijn belanghebbenden (Stakeholders) die een eventuele oplossing financieren, gebruiken of er voordeel mee behalen.
- Er is een oplossing (Solution) die moet voldoen aan de wensen en eisen (Requirements) en die geïmplementeerd zal worden met behulp van een softwaresysteem (Software system)
- Er is een project (Endeavour) dat we gaan uitvoeren. Hierbij gaan we werk verzetten (Work) met een groep gekwalificeerde medewerkers (Team) volgens een goede, efficiënte manier van werken (Way of working).
Elke Alpha heeft een aantal mogelijke statussen die de mate van voortgang / volwassenheid aangeven voor het betreffende onderdeel. Doordat elke status vanuit de Essence theorie eenduidig beschreven is, is het voor alle leden van een ontwikkelteam mogelijk om relatief eenvoudig de huidige status van een onderdeel te bepalen. Omdat de statussen op volgorde van volwassenheid staan, is direct ook duidelijk wat het volgende niveau is. De Essence theorie biedt vervolgens hulpmiddelen om het volgende niveau te bereiken.
Praktische toepassing van Esscence via Alpha State Card Games
In het bovenstaande is de theoretische werking van de Alpha statussen beschreven. Om de theorie echt te laten leven is meer nodig. Daarom is het goed het Essence gedachtegoed nog een stapje verder te verkennen en twee praktische voorbeelden te laten zien op basis van de zogeheten “Alpha state card games”. Deze games zijn voorbeelden van hoe een team met Alpha state kaarten snel inzicht kan krijgen in een of meerdere dimensies van een lopend software ontwikkelingstraject. De games zijn interactief en vergen niet meer dan 10 tot 30 minuten van het team.
Progress Poker schept duidelijkheid in het team
Bij nieuwe ontwikkelteams of teams die van samenstelling zijn veranderd kost het tijd voordat iedereen op één lijn zit met betrekking tot de beoogde kwaliteit van bijvoorbeeld de requirements. Hoe zou Essence kunnen helpen om snel duidelijkheid te krijgen over het beeld van het team over de kwaliteit van de beschikbare requirements? Het “Progess Poker” spel geeft hierover binnen tien minuten uitsluitsel.
Bij Progress Poker krijgen alle aanwezigen een set met de Alpha state cards van de Requirements Alpha. Iedereen legt vervolgens de kaart voor zich op tafel die voor hem/haar het beste de status van de requirements weergeeft. Legt iedereen dezelfde kaart neer dan is het meningsverschil minder groot dan gedacht en is direct duidelijk wat een volgende stap kan zijn. Liggen er verschillende kaarten op de tafel, dan worden de hoogste en laagste kaart toegelicht. Na de toelichting wordt weer een stemronde gedaan, net zolang tot het team consensus bereikt heeft. In dit geval is Progress Poker dus een variant van het bekende agile pokeren wat wordt gedaan om tot story points te komen.
Uiteraard kan dit spel ook voor alle zeven Alpha’s gespeeld worden om zo een overzicht te krijgen van de algehele status van het project. De praktijk leert ons dat de conclusie van een simpel rondje Progress Poker soms verrassende dingen laat zien.
Chase the State: Ideaal voor nulmetingen en evaluaties
De praktijk leert dat bij veel ontwikkelteams het maar niet wil lukken om er, ondanks alle positieve inzet, een soepel draaiend geheel van te maken. Steeds opnieuw ontstaan er onverwachte hobbels en het team weet niet goed waar de oorzaak ligt.
Het “Chase the State” spel kan in een dergelijke situatie worden gebruikt om als team de status van alle onderdelen te bepalen. In een half uur heeft het team weer een eenduidig zicht op de voortgang, samenwerking en betrokkenheid van bijvoorbeeld de stakeholders.
Hoe werkt het? Voor elke Alpha wordt aan de hand van de Alpha state cards in een discussie van een paar minuten bepaald wat de actuele status is. Staakt de discussie, dan kan “Progress Poker” helpen om consensus over de huidige status te bereiken. Nu voor elke Alpha de actuele status bepaald is kan per Alpha gezamenlijk bepaald worden of de huidige status al voldoende is of dat we als team het ambitieniveau hoger willen leggen. Uit het verschil tussen de actuele status en de gewenste status kunnen nu concrete verbeterstappen benoemd worden om te komen tot de gewenste status (Chase the State).
Health check
Zowel “Progress Poker” als “Chase the State” bepalen de actuele status van alle Alpha’s en kunnen daarom ook heel goed gebruikt worden om aan het begin van een ontwikkeltraject een nulmeting uit te voeren. Door in een later stadium deze meting nog een keer uit te voeren kan zo op een simpele en efficiënte manier een “heath check” gedaan worden en wordt inzicht verkregen in de ontwikkeling van het team.
Aan de slag!
Naast de genoemde games staan op de site van Ivar Jacobson International nog meer voorbeelden van spellen die kunnen helpen om snel inzicht te krijgen met behulp van Alpha state cards. Deze games maken de Essence theorie op een laagdrempelige manier toegankelijk.
Heb je liever wat begeleiding in de kennismaking met Essence, dan kan DiVetro daarbij helpen. Aarzel niet en neem vrijblijvend contact met ons op via de knop hieronder, info@divetro.nl of +31 (0) 88 000 54 00. Wij helpen u graag verder.
Harmen de Boer is meer dan 25 jaar in verschillende rollen werkzaam binnen de ICT. Tien jaar in applicatie ontwikkeling als analist bij KLM en vervolgens ruim tien jaar als manager van infrastructuur bij KLM en Rabobank. Continue verbetering is de rode draad door de jaren heen. Momenteel werkt Harmen als Servicemanager aan een ICT professionaliseringstraject bij een zorginstelling.