10.0 Vandfald vs. cyklisk projektledelse (del 3) – Projektlivscyklus og resultater

I hele projektets livscyklus skal brugerne kunne teste alle mellemliggende resultater. #

Kunder opfordres til at definere deres behov så præcist som muligt gennem hele definitions- og designfaserne. Dette er udfordrende af to grunde. Til at begynde med har forbrugerne en begrænset forståelse af informationsteknologiens potentiale og umuligheder. De har ingen forestilling om, hvad der er eller bør være muligt, og de ved heller ikke, hvad de bør eller ikke bør ønske sig. For det andet mangler forbrugerne ofte en grundig forståelse af deres egne forretningsprocesser.

Talrige it-initiativer omfatter computerisering af en organisations nuværende forretningsprocesser. Selvom forbrugerne har arbejdet med processer i længere tid, mangler de ofte evnen til at designe deres egne forretningsprocesser. De kan fungere godt på deres egen måde, men kan ikke specificere, hvad den måde er. Præcis procesdefinition er påkrævet, før der udvikles software, der vil drive computerisering. Kundernes kompleksitet stiger som følge af, at de skal forklare nuværende procedurer.

Bestemmelse af kriterier #

Ofte er listen over kriterier udarbejdet i definitionsfasen ufuldstændig. Programmører opretter software i overensstemmelse med denne delliste under implementeringsfasen. Når forbrugere støder på betaversioner af ny software, bliver ekstra behov tydelige. ‘Det ser godt ud, men kunne du måske ordne det, så jeg ikke hele tiden skal indtaste min adgangskode?’ Programmører beklager ofte, at kunder er usikre på, hvad de vil have. Kunder hævder, at softwareudviklere som eksperter burde have identificeret, hvad kunderne ønsker tidligere i processen.

Et omfattende funktionelt design blev skabt til et softwareprojekt, der omfattede automatiseret behandling af applikationer til en webbaseret tjeneste. Der blev samlet talrige kundebehov. Efter at have tilføjet et par skærmdesigns og flow-tegninger kunne programmørerne komme i gang.

Håndtering af kunder og begrænsninger #

Muligvis som følge af projektets hårde tidspres eller muligvis som følge af kundens ret kaotiske organisation, havde designerne glemt at bestå af en kritisk komponent: manuel administration. Programmet behandlede ansøgningerne. Fordi ansøgningerne skulle behandles automatisk, ræsonnerede programmørerne, at ingen menneskelig administration ville være nødvendig. Dette kriterium blev ligeledes udeladt fra det funktionelle design.

Da programmet blev leveret til test, opdagede klienten, at mange apps havde undtagelser. Disse ansøgninger kan ikke behandles automatisk og skal behandles manuelt. Programmet fungerede dog helt automatisk.

Det projektledelse af vandfald kræver test af projektets reelle resultat ved afslutningen af implementeringsfasen. Det er for sent udviklingsstadiet . Mellem definitionsfasen, designfasen og implementeringsfasen kan der gå måneder eller endda mere end et år. Hvis der opdages designfejl på et sent stadium af projektet, kan det være dyrt, hvis ikke umuligt, at ændre programmet uden at starte et nyt projekt helt. Da det er praktisk talt umuligt at definere alle kriterier på forhånd, er en arbejdstilgang, der muliggør test af (mellem)resultater, ønskelig.

Analyse af krav #

Ved sammenligning af en række potentielle softwarevirksomheder spurgte en kunde om mulighederne. Den ene part var tøvende og satte spørgsmålstegn ved gennemførligheden af mange af kundens krav. Den modsatte side var repræsenteret af en aggressiv salgsagent.

Når en klient spurgte om gennemførligheden af en specifik anmodning, ringede sælgeren til sine kodere. ‘Kan vi lave en funktion, der gør X?’ Programmøren, der hovedsageligt tænkte i tekniske termer, sagde, at alt var teoretisk tænkeligt. Hverken programmøren eller sælgeren var bekymret over projektledelse gennemførlighed (f.eks. tid, penge, kompleksitet og risiko).

Sælgerens begejstring overgik den anden parts tilbageholdne opførsel. Kunden valgte salgsrepræsentantens aggressive tilbud. Det nyerhvervede projekt blev derefter overdraget til en projektleder og et team af programmører.

Efter noget tid stod det klart, at projektet ikke levede op til kundens forventninger. Det skyldtes blandt andet, at procedurerne var meget mere komplekse for klienten, end de så ud til at begynde med. Under en ophedet udveksling mellem de to parter sagde klienten, at sælgeren ‘havde udtalt, at funktionalitet X ikke ville være et problem.