12.0 Vandfald vs. cyklisk projektledelse (del 5) – Betingelser for styring af cykliske projekter

Brugere/kunder deltager aktivt #

Hver cyklus af cyklisk projektledelse involverer udvikling af krav, design, udførelse og test. Dette indebærer, at mange valg skal træffes i løbet af en cyklus. Hvis programmet præcist skal repræsentere kundens ønsker, skal kunden være et aktivt medlem af projektteamet.

Kunder skal kommunikere deres krav til programmører og designere så tydeligt som muligt. Dette indebærer ofte ugentlig (eller i det mindste hver anden uge) deltagelse i projektteamet.

Inden for et projekt bidrager forbrugerne til definitionen af nødvendige funktioner og cyklusplanlægning. De samarbejder om accepttests, godkender eller afviser foreløbige resultater og bidrager til projektets overordnede retning. Derudover resulterer aktiv kundeinddragelse i forbedrede resultater ved brug af vandfaldsmetoden.

Teamet er bemyndiget til at træffe valg. #

Inden for en cyklus skal projektteamet have beføjelse til at træffe deres egne beslutninger. Hvis projektteamet mangler denne autoritet, vil den cykliske model for projektstyring ikke fungere. Hvis der kræves konstant godkendelse fra overordnede gennem en cyklus, kan dette resultere i stagnation. Derudover er udenforstående ofte uvidende om, hvad der sker, fordi de ikke er aktivt involveret i projektgruppen; dette gør det svært for dem at træffe rationelle beslutninger.

Projektets output (software) kan dekomponeres i mindre komponenter. #

Cyklisk projektledelse er en metode til at styre projekter, hvor dele af projektet afsluttes i en række cyklusser. Dette er kun muligt, hvis softwaren, der udvikles, kan nedbrydes i en række mere eller mindre adskilte komponenter.

Ledelsens krav til projektstyringssoftware er primært globale; ledelsen stiller ikke direkte, konkrete eller specifikke krav. En af fordelene ved cyklisk projektledelse er det tætte samarbejde mellem kunden, designere, programmører og eventuelle testere under cyklusserne. Hvis der stilles specifikke og konkrete krav i starten af et projekt, begrænser dette projektgruppens mulighed for at bruge deres bedste dømmekraft, når de skal træffe designvalg. Adskillige krav til et projekt viser sig at have behov for tilpasning i løbet af processen og bør derfor ikke være (for) fast etableret i starten.

Kunden forstår aktiviteterne. #

Hvis væsentligt teknisk arbejde, som er svært for kunden at overskue, skal ske inden for en cyklus, er der risiko for, at kunden ikke kan bidrage effektivt til teamet. I en sådan situation har kunden meget lidt indflydelse på de designbeslutninger, der skal træffes.

En lignende risiko eksisterer, når kunden ikke er klar over fremskridtet. For eksempel kan meget af arbejdet være afsat til kodning, med lidt opmærksomhed på brugergrænsefladen. Det er afgørende for kunderne at have tilstrækkelig indsigt i substansen og udviklingen af en cyklus for at undgå at blive skubbet ud på sidelinjen.

Det skal være muligt at gå igen. #

Selv i cyklisk projektledelse forfølger teams lejlighedsvis veje, der viser sig at være forkerte. Det burde være muligt at træde et skridt tilbage i sådan et tilfælde. Hvis et nyt modul oprettet under en cyklus viser sig at være utilstrækkeligt, skal det være muligt at genoptage arbejdet med det forrige modul. Dette stiller krav, især til arkivering og dokumentation af projektmaterialer. CVS og Subversion er to nyttige værktøjer til disse opgaver (se bilag 3 for en komplet liste over værktøjer).

Sammen med programmeringsfærdigheder bør programmører være i stand til at interagere effektivt med kunder og omvendt. Teammedlemmer skal være intellektuelle tænkere. Der kræves disciplin for at fortsætte med jobbet.

Den organisation, som projektet udføres i, skal også yde tilstrækkelig støtte til denne driftsform. Tidsregistrering, arkivering og planlægningssystemer er påkrævet for at understøtte projekterne. Disse registreringssystemer giver den nødvendige åbenhed til at garantere en retfærdig fordeling af ressourcer på tværs af projekter og tidsperioder.

Prioritering #

Projekter bør tillægges tilstrækkelig betydning, og teammedlemmer bør stilles til rådighed for dem. At kræve, at teammedlemmer skal arbejde på for mange opgaver samtidigt, er ineffektivt. Hvis en organisation ikke er tilstrækkeligt tilpasset til projektbaseret arbejde, vil den cykliske projektledelsesfleksibilitet sandsynligvis resultere i kaos. Derudover nyder vandfaldsteknikken godt af en organiseret tilgang til projektledelse (se Wijnen, 2004, s. 111).

Direktøren for et softwareudviklingsfirma, som var mere visionær end leder, fik en god idé næsten hver måned og igangsatte konstant nye tiltag i sin virksomhed. Som følge heraf blev ældre projekter aldrig afsluttet, og arbejdere arbejdede på så mange som fem projekter samtidigt. Den karismatiske instruktør havde netop læst en bog om hurtig applikationsudvikling (RAD) og var meget begejstret for det – især det ‘hurtige’ element. Han tapede de grundlæggende ideer om RAD til kopimaskinen og forventede derefter, at alle ville begynde at arbejde med disse begreber. Det var trods alt en fremragende teknik.

Risici ved cyklisk projektstyring #

Cykliske projektstyringsteknikker efterlader nogle gange utilstrækkelig tid til at udføre de nødvendige funktioner. Fordi projektets varighed er fast, vil der næsten med sikkerhed blive tilføjet færre funktioner end oprindeligt forventet.

Selvom dette er en legitim bekymring, er det også iboende i vandfaldstilgangen . Det definerende trin i vandfaldstilgangen indebærer en dybdegående undersøgelse af kravene. Denne analyse vil sandsynligvis resultere i forbedret tidsstyring. Dette er ofte ikke tilfældet i virkeligheden af ovennævnte grunde.

Derudover er funktionaliteter udeladt i denne tilgang på grund af mangel på midler til at udvikle dem.

Krav behandles pragmatisk i cyklustilgange. For eksempel kan behov i cyklusser klassificeres ved hjælp af MoSCoW-kriterierne (Stapleton, 2003) som følger:

  • Skal have: systemkritiske krav
  • Bør have: kritiske behov, som brugerne virkelig ønsker
  • Kunne have: ønskelige behov, der let kan ignoreres
  • Ønsker at have: krav, der ikke bliver opfyldt denne gang: krav, der kan vente til senere

Uanset om visse kapaciteter ikke længere er tilgængelige, mener DANS projektledere, at cyklisk arbejde giver højere kundetilfredshed end vandfaldstilgangen. Under alle omstændigheder kontrolleres forventningerne regelmæssigt mere effektivt, og projekter producerer rutinemæssigt resultater, der virker, selvom de er mindre komplekse end oprindeligt forudset.

Forstå potentielle ulemper #

En almindeligt nævnt ulempe ved XP er, at betydelig magt overføres til programmører. Hvis de misbruger denne autoritet, kan de udnytte kundens manglende tekniske ekspertise til deres fordel. For at undgå dette scenarie kræver det en projektleder, der kan varetage både programmørernes og kundens interesser. Disse projektledere hjælper deres kunder med at udvælge og planlægge cyklusser, med at gøre det tekniske grundlag for deres valg forståeligt og med at levere administration og rapportering.

Endelig er en anden ulempe ved XP, at metodens implementering kræver en høj indlæringskurve for programmører, ledere og forbrugere.