PROJECTIE
WAT
IS
AGILE?
Verandering omarmen en zelf het pad creëren Auteur:
Hans Freriks (
[email protected]), Mantica agile services
REAGEREN
De laatste jaren is de interesse voor Agile projectmethoden toegenomen, ook onder projectmanagers van andere dan IT-projecten. Vooral in de Angelsaksische landen zien we de populariteit van de aanpak stijgen. Zelfs in het Princedom Nederland wordt steeds vaker de vraag gesteld: “Zou een Agile methode ook onze projecten kunnen verbeteren?”. Maar veel lezers van deze special zullen waarschijnlijk eerst antwoord willen hebben op een andere vraag, namelijk: “Wat is dat precies, Agile projectmanagement, en waarin onderscheidt deze aanpak zich van de meer gevestigde projectmanagementmethoden?”. In dit artikel geef ik een uitleg van wat Agile betekent en wat de kenmerken zijn van een Agile aanpak.
OP VERANDERING
Laat ik voor een nadere uitleg van wat Agile op het gebied van projectmanagement precies inhoudt, beginnen met een (vertaald) citaat van Jim Highsmith, één van de grondleggers van de Agile beweging:
”De toekomst van onze informatietijdperkeconomie behoort toe aan agile organisaties, de organisaties die verandering kunnen creëren voor hun concurrenten en misschien zelfs een beetje chaos. Als je beter en sneller kunt innoveren, creëer je verandering voor je concurrenten. Als je snel kunt reageren op initiatieven van de concurrentie, op nieuwe technologie en op eisen en wensen van je klanten, creëer je verandering voor je concurrenten. Als je langzamer bent, minder innovatief en minder snel kunt reageren, dan ben je
De letterlijke vertaling van de Engelse term agile is vlug
aangewezen op overlevingstrategieën in een zee van
en lenig, behendig, flexibel. Maar als we spreken over
chaos die door anderen is veroorzaakt. Gaat uw bedrijf
softwareontwikkeling of over projecten in het algemeen
het tempo van de veranderingen aangeven, of gaan uw
dekken deze vertalingen net de lading niet. ‘Behendige
concurrenten dat doen? In een wereld van voortduren-
softwareontwikkeling’ en ‘flexibel projectmanagement’
de verandering zijn traditionele, inflexibele methoden
hebben niet dezelfde gevoelswaarde als ‘Agile software-
voor projectmatige softwareontwikkeling niet meer
ontwikkeling’ en ‘Agile projectmanagement’. Vandaar
toereikend voor succes.”
dat we voorlopig de term Agile hanteren. Dit citaat gaat over één van de belangrijke aspecten van een Agile aanpak, namelijk reageren op verandering. Een Agile aanpak probeert niet om verandering buiten het project te houden, maar vráágt juist om verandering, omdat verandering meestal ook verbetering van kwaliteit betekent. En kwaliteit is tenslotte niet wat de opdrachtgever nodig heeft aan het begin van het project, maar aan het eind. Door rekening te houden met de onvermijdelijke veranderingen in de omgeving van de organisatie en in de eisen en wensen van de opdrachtgever, verhogen we de kwaliteit van de op te leveren producten.
AGILE MANIFESTO In 2001 kwam een aantal professionals uit de softwareontwikkeling samen in Utah, Verenigde Staten om te zoeken naar gemeenschappelijke waarden. Diverse ontwikkelmethoden waren vertegenwoordigd, zoals DSDM,
Hans Freriks, directeur Mantica Agile Services.
eXtreme Programming (XP) en Scrum. Het resultaat was
5
AGILE? IS
WAT
het Agile Software Development Manifesto. Omdat de
wil en dat dit ook niet meer verandert of realiseren we
ondertekenaars allemaal uit de software-industrie kwa-
ons dat ze pas weet wat ze wil als ze ziet wat ze krijgt?
men, gaat het manifest over softwareontwikkeling. Een Agile aanpak is echter niet alleen maar geschikt voor
AGILE PRINCIPLES
IT-projecten. In dit artikel is het woord ‘software’ dan ook
Na de publicatie van het Agile Manifesto werkten de
vervangen door ‘product’, in het bijzonder in de vertaling
opstellers verder aan de Agile Principles. Hieronder een
van het manifesto en de principes. Daardoor is de aan-
korte uitleg van deze twaalf uitgangspunten.
sluiting met niet-IT-projecten goed te maken. De inhoud 1. De hoogste prioriteit is de klant te bedienen door
van het manifesto luidt vertaald in het Nederlands:
het vroegtijdig en frequent opleveren van bruikbare
We ontdekken betere manieren om producten te
producten.
ontwikkelen in de praktijk en door anderen daarbij
Uit onderzoek blijkt dat er een verband is tussen uitein-
te helpen. Door dit werk hebben we geleerd
delijke kwaliteit en het vroegtijdig opleveren van gedeel-
meer waarde te hechten aan:
telijk functionerende systemen. Hoe minder functioneel
Individuen en interactie dan aan
de eerste oplevering, hoe hoger de kwaliteit van het
processen en hulpmiddelen
uiteindelijke product. Een ander verband werd gevonden
Werkende producten dan aan
tussen kwaliteit en het frequent opleveren van groei-
uitgebreide documentatie
ende functionaliteit. Hoe vaker er opgeleverd werd, hoe
Samenwerking met de klant dan aan
hoger de uiteindelijke kwaliteit.1
contractonderhandelingen Reageren op verandering dan aan
2. Werkende producten frequent opleveren, liefst in een
het strikt volgen van een plan
paar weken, hooguit in een paar maanden.
Dat wil zeggen: de zaken aan de rechterkant zijn
Dit principe sluit aan op het voorgaande. Een Agile
zeker belangrijk, maar we hechten meer waarde
proces levert werkende producten op en geen pakken
aan de zaken aan de linkerkant.
documentatie en plannen.
Dit manifest is de grondslag voor de Agile beweging.
3. Werkende producten is de belangrijkste maat voor
Het geeft aan dat we prioriteiten moeten stellen tijdens
vooruitgang.
ons werk in projecten en dat we geneigd zijn die priori-
Vooruitgang wordt gemeten aan het deel van de
teiten verkeerd te leggen. Verhogen we de (schriftelijke)
gevraagde functionaliteit dat werkt. De fase waarin het
rapportagefrequentie als we niet goed meer weten
project verkeert of de hoeveelheid plannen of documen-
wat er in het project gebeurt of gaan we praten met de
ten zijn dus geen maat.
teamleden? Pinnen we onze leverancier vast en kleden we hem uit voordat we gaan samenwerken of richten
4. Sta open voor veranderende eisen, zelfs in een laat
we ons op een goede relatie met de leverancier binnen
stadium tijdens de bouw. Agile processen benutten
een wat ruimer contractueel kader? Eisen we van de
verandering en leveren zo een concurrentievoordeel
gebruiker dat zij vooraf precies kan aangeven wat ze
voor de business. Deelnemers aan een Agile project zijn niet bang voor verandering. Ze doen er alles aan om zo flexibel mogelijk te blijven, zodat wijzigingen kunnen worden aangebracht met zo weinig mogelijk inspanning. Zo kunnen inspelen op veranderingen verhoogt de kwaliteit van het uiteindelijke product. 5. Vertegenwoordigers van de business en ontwikkelaars werken dagelijks samen gedurende het gehele project. In een Agile project ligt de nadruk op de communicatie tussen alle betrokkenen. Deze communicatie is zo veel
Als symbool voor Agile wordt wel de Bengaalse tijger gebruikt. Deze is immers vlug, lenig en behendig en tegelijkertijd krachtig en robuust. Eigenschappen die organisaties nodig hebben, ook in projecten, om snel en proactief te kunnen reageren op verandering.
1. Product-Development Practices That Work: How Internet Companies Build Software, MIT Sloan Management Review, 2001.
6
AGILE?
mogelijk face-to-face. ‘Dagelijks’ betekent overigens niet ‘heel de dag’.
IS
hen de omgeving en de ondersteuning die ze nodig
WAT
6. Bouw projecten rond gemotiveerde individuen. Geef
De belangrijkste factor voor succes in een Agile project
hebben en vertrouw erop dat ze de klus klaren. vormen de mensen. Alle andere factoren passen zich aan als dat nodig is. Als een proces bijvoorbeeld een belemmering vormt voor het team, wordt het proces aangepast, niet het team. Een Agile project is als een wandeling door de woestijn. Er is geen gedefinieerd pad vóór ons, alleen achter ons. We maken zelf de weg en alleen voor deze ene wandeling.
7. De meest efficiënte en effectieve manier om informatie te delen in een ontwikkelteam is via praten met elkaar. In een Agile project praten de mensen met elkaar. Plannen,
12. Regelmatig onderzoekt het team hoe het effec-
ontwerpen en specificaties kunnen worden gemaakt als
tiever kan worden en past vervolgens zijn gedrag
daar behoefte aan is, maar de standaard is conversatie.
daarop aan. In een Agile project is veel aandacht voor leren. Het
8. De beste architecturen, eisen en ontwerpen komen
team evalueert haar functioneren in de veranderende
voort uit zelfsturende teams.
omgeving voortdurend en past regels, afspraken en
Een Agile team is een zelfsturend team. Alle teamleden
organisatie aan om effectief en agile te blijven.
werken aan alle aspecten van het project en zijn dus ook allemaal verantwoordelijk voor alle aspecten. Er is
EMPIRISCH
dus niet één teamlid verantwoordelijk voor de architec-
Als een Agile team zelfsturend is, is er dan nog project-
tuur of voor het testen.
management nodig? Zeker wel! Ook de Agile processen
MANAGEMENT
waar een Agile project gebruik van maakt, kunnen niet 9. Voortdurende aandacht voor een hoge technische
zonder projectmanagement. Maar het is wel een ander
kwaliteit en voor een goed ontwerp versterken agility.
soort management.
Door constant kwaliteit te leveren, blijft de snelheid in een project hoog. De producten moeten zo clean en
Bij veel projecten kan de projectmanager niet voor-
robuust mogelijk blijven. Opschonen van software bij-
spellen hoe de wensen en eisen zullen veranderen,
voorbeeld wordt niet uitgesteld ‘tot er meer tijd is’. Dat
welke technische kwesties zich zullen voordoen, hoe de
is alleen schijnbare tijdwinst.
omgeving zal veranderen, enzovoort. Hier kunnen we geen gebruik maken van de klassieke voorspellende methoden die gebaseerd zijn op gedefinieerde proces-
10. Agile processen maken doorgaande ontwikkeling mogelijk. Opdrachtgever, ontwikkelaars en gebrui-
sen, het tegengaan van verandering en kennis van de
kers moeten een constant tempo eindeloos kunnen
werking van die processen in eerdere projecten. We
volhouden.
hebben empirische managementmethoden nodig, dat
Een Agile project is geen sprint, maar een marathon.
wil zeggen methoden die we steeds kunnen aanpassen
Alleen dan is de snelheid ook vast te houden tot het
en waarmee we ons steeds kunnen aanpassen aan de
einde van het project. En kan een volgend project weer
veranderingen die we op de projectweg tegenkomen.
rekenen op een snelle start. In een Agile project wordt Ken Schwaber, de grondlegger van de Agile methode
dus ook niet overgewerkt.
Scrum, heeft eens een aantal traditionele softwareont11. Eenvoud, de kunst van het maximaliseren van het
wikkelmethoden voorgelegd aan experts in de proces-
werk dat niet gedaan wordt, is essentieel.
controle-theorie bij Dupont. Hij beschrijft het verschil
Een Agile team kiest altijd voor de eenvoudigste weg
in gebruik van afgebakende managementmethoden
om haar doel te bereiken, het doel zoals dat nú bekend
(‘defined’) en empirische managementmethoden
is. Het houdt geen rekening met eventuele toekomstige
(‘empirical’) aan de hand van hun reacties. De experts
problemen of uitdagingen, maar houdt de oplossing wel
zagen meteen de mismatch tussen de realiteit van
flexibel voor die toekomst.
softwareontwikkeling en de traditionele methoden.
7
APPM Management Consultants is een onafhankelijk adviesbureau voor projectmanagement en managementadvies binnen de vakgebieden ruimtelijke ontwikkeling, verkeer en vervoer, bouwen en infrastructuur.
APPM adviseert opdrachtgevers bij de ontwikkeling van organisatie, management en samenwerking en verzorgt het management van projecten rond railinfrastructuur, wegen, kunstwerken, gebiedsontwikkeling, stedelijke vernieuwing, gebouwen, havens en luchthavens.
DESKUNDIG ENTHOUSIAST NUCHTER
APPM spant zich in om met alle betrokkenen op deskundige, enthousiaste en nuchtere wijze de gestelde doelen te realiseren. Daarbij speelt een plezierige samenwerking een belangrijke rol.
HOOFDDORP
WWW.APPM.NL
ZOETERMEER
AGILE?
Met uitgebreide change control procedures en het veelvuldig rapporteren over de afwijkingen. Samen met de urenverantwoording en de controle daarop
IS
blijft er weinig tijd over voor de belangrijker taken van de projectmanager, waardoor het team haar focus verliest en het project in gevaar komt. Daar reageert
WAT
het (project)management dan vaak weer op met méér controle, méér procedures en méér rapportage, terwijl het gaat om de mensen in en rond het project. Er komt meer aandacht voor de documentatie, terwijl het opleveren van werkende producten op de achtergrond raakt. Er wordt opnieuw en scherper onderhandeld over de contracten, waardoor er nog minder wordt
Agile is ook werken met elkaar en samen. Communiceren, motiveren, ondersteunen en vooral ook gezamenlijk projectsuccessen vieren.
samengewerkt. En we gaan ons nog strakker aan de planning houden, waardoor we niet meer met veranderingen kunnen omgaan.
Geen van de processen en taken in softwareontwikkeling ligt voldoende vast om het afgebakende model
Een Agile project is als een wandeling door de woes-
te gebruiken. In dit licht wordt ook duidelijk waarom
tijn: er is geen gedefinieerd pad vóór ons, alleen ach-
zaken als ‘softwarefabriek’ of ‘ontwikkelstraat’
ter ons. We maken zelf de weg en alleen voor deze
gedoemd zijn te mislukken. Zij beschouwen software-
ene wandeling. We kunnen zien welk pad we gegaan
ontwikkeling als een afgebakend proces. Op basis van
zijn, maar niet hoe we onze weg zullen vervolgen. We
het empirische model echter verwacht men het onver-
leren van de manier waarop we de weg naar het doel
wachte. Het geeft controle door het steeds monitoren
hebben gemaakt, zodat we bij een volgende wandeling
en aanpassen van de processen die niet volledig vast-
nog succesvoller kunnen zijn.
■
gelegd zijn en ook onvoorspelbare en niet-herhaalbare output opleveren.2 Het gaat er niet om een waardeoordeel te hechten aan één van beide. In stabiele, niet veranderlijke omgevingen kunnen we een afgebakende methode goed gebruiken, samen met een klassieke vorm van projectmanagement. De vraag is echter wel waar we dit soort omgevingen nog tegenkomen.
GEEN
GEDEFINIEERD PAD
Het zal ook duidelijk zijn dat de empirische methoden die we nodig hebben in een veranderlijke omgeving ook een ander projectmanagement nodig hebben. Hier is de projectmanager gericht op het samenstellen van
AAN
het team, het goed in beeld houden van het project-
Wat kunt u met dit artikel? Als uw interesse
doel, omgaan met onzekerheden, authentiek commu-
gewekt is, wilt u misschien meer weten. Of u wilt
niceren, faciliteren, stimuleren, vertrouwen opbouwen
uw projecten meteen al meer Agile gaan aanpak-
met en tussen alle betrokkenen en het afschermen
ken en veranderingen niet meer als uitzonde-
van het team, zodat het zijn werk kan doen.
ringen behandelen. U kunt googelen op ‘Agile’.
DE SLAG MET EEN
AGILE
AANPAK
In het Engels is al heel veel beschikbaar. In het We kennen allemaal wel voorbeelden van de pro-
Nederlands begint het langzaam ook te groeien.
jectmanager die het grootste deel van zijn tijd bezig
En er zijn natuurlijk trainingen en workshops,
is met het aanpassen van de gedetailleerde plan-
waar wat dieper op de materie wordt ingegaan
ningen, na de zoveelste verandering in het project.
en waar ook ruimte is voor het uitwisselen van ervaringen.
2. Ken Schwaber, Agile Software Development with Scrum, 2002.
9