10.0 Vattenfall vs. cyklisk projektledning (del 3) – Projektlivscykel och resultat

Under projektets livscykel ska användarna kunna testa alla mellanresultat. #

Kunderna uppmanas att definiera sina behov så exakt som möjligt under hela definitions- och designfasen. Detta är utmanande av två anledningar. Till att börja med har konsumenterna en begränsad förståelse för potentialen och omöjligheterna med informationsteknik. De har ingen aning om vad som är eller bör vara genomförbart, och de vet inte heller vad de bör eller inte bör önska. För det andra saknar konsumenterna ofta en grundlig förståelse för sina egna affärsprocesser.

Många IT-initiativ inkluderar datorisering av en organisations nuvarande affärsprocesser. Även om konsumenter har arbetat med processer under lång tid saknar de ofta förmågan att utforma sina egna affärsprocesser. De kan fungera bra på sitt eget sätt, men kan inte specificera vad det är. Exakt processdefinition krävs innan man utvecklar programvara som driver datorisering. Kundernas komplexitet ökar till följd av att de måste förklara nuvarande rutiner.

Bestämmande kriterier #

Ofta är listan över kriterier som tagits fram under definitionsfasen ofullständig. Programmerare skapar programvara i enlighet med denna dellista under implementeringsfasen. När konsumenter stöter på betaversioner av ny programvara blir extra behov uppenbara. “Det ser bra ut, men kan du kanske fixa det så att jag inte hela tiden behöver ange mitt lösenord?” Programmerare beklagar ofta att kunder är osäkra på vad de vill ha. Kunder hävdar att mjukvaruutvecklare som experter borde ha identifierat vad kunderna vill ha tidigare i processen.

En omfattande funktionell design skapades för ett mjukvaruprojekt som innefattade automatiserad behandling av ansökningar för en webbaserad tjänst. Många kundbehov sammanställdes. Efter att ha lagt till några skärmdesigner och flödesritningar kunde programmerarna komma igång.

Hantera kunder och begränsningar #

Möjligen som ett resultat av projektets svåra tidspress eller möjligen till följd av kundens ganska kaotiska organisation, hade konstruktörerna glömt att bestå av en kritisk komponent: manuell administration. Programmet behandlade ansökningarna. Eftersom ansökningarna skulle behandlas automatiskt resonerade programmerarna att ingen mänsklig administration skulle behövas. Detta kriterium utelämnades också från den funktionella designen.

När programmet tillhandahölls för testning upptäckte klienten att många appar hade undantag. Dessa ansökningar kan inte behandlas automatiskt och måste hanteras manuellt. Programmet fungerade dock helt automatiskt.

De projektledning för vattenfall kräver testning av projektets verkliga resultat i slutet av genomförandefasen. Det här är sent utvecklingsstadium . Mellan definitionsfasen, designfasen och implementeringsfasen kan månader eller till och med mer än ett år gå. Om konstruktionsbrister upptäcks i ett sent skede av projektet kan det bli kostsamt, för att inte säga omöjligt, att modifiera programmet utan att helt starta ett nytt projekt. Med tanke på att det är praktiskt taget omöjligt att definiera alla kriterier i förväg är ett arbetssätt som möjliggör testning av (mellanliggande) resultat önskvärt.

Analysera krav #

När man jämförde ett antal potentiella mjukvaruföretag frågade en kund om möjligheterna. En part var tveksam och ifrågasatte genomförbarheten av många av kundens krav. Den motsatta sidan representerades av en aggressiv försäljningsagent.

När en kund frågade om genomförbarheten av en specifik förfrågan ringde säljaren sina kodare. “Kan vi skapa en funktion som gör X?” Programmeraren, som främst tänkte i tekniska termer, sa att allting var teoretiskt tänkbart. Varken programmeraren eller säljaren brydde sig om projektledning genomförbarhet (t.ex. tid, pengar, komplexitet och risk).

Försäljarens upphetsning överträffade motpartens återhållsamma uppträdande. Kunden valde säljarens aggressiva erbjudande. Det nyförvärvade projektet överlämnades sedan till en projektledare och ett team av programmerare.

Efter en tid stod det klart att projektet inte levde upp till kundens förväntningar. Detta berodde delvis på att procedurerna var mycket mer komplexa för klienten än de såg ut från början. Under ett hett utbyte mellan de två parterna sa klienten att säljaren “hade sagt att funktionalitet X inte skulle vara ett problem.