Som teamleder på en del større danske ehandelsprojekter har jeg gjort nogle observationer omkring hvilke forhold der typisk gør, at projektet trækker ud, og ender med ikke at kunne gå i luften ifølge tidsplanen og/eller bliver dyrere end forventet. I denne serie af subjektive og ensidige betragtninger omkring softwareprojekter vil jeg forsøge at formulere nogle gode råd set fra softwareleverandørens perspektiv, der kan hjælpe dig med at navigere igennem processen at søsætte et nyt it-projekt.
Af Joachim Lykke Andersen - http://devtalk.dk
Når man nu har besluttet sig for at få en lækker ny webshop, så vil det typisk inspirere til en brainstorm session, hvor man bringer alle de fede ideer på banen, som man overhovedet kan komme i tanke om, og finde rundt omkring på konkurrenternes shops. Der er mange interesser i organisationen der skal tilfredsstilles,der går også let politik i den omkring hvilke områder på sitet der skal have prioritet, og der dukker alskens darlings på banen, som man har forelsket sig i. Alt i alt vil man bare gerne gå i luften med et site som Amazon fra dag et.
Ud fra dette bliver der så skrevet en projektbeskrivelse og/eller lavet en foranalyse, og i mange tilfælde bliver projektet sat i værk med en enorm backlog af featureønsker, som skal gennemføres før projektet er "færdigt". Og det er her det går galt, for prioriteterne ender ofte med at blive uklare, mudret af alle de feature ønsker man glæder sig til at se på shoppen. Derved ender fokus med at ligge på elementer der ikke indgår i det, der er allermest fundamentalt for en webshop: At man kan lægge et produkt i kurven, og gennemføre et køb.
Prioritetskampen om hvilken darling der er vigtigst, og nørkleriet om hvordan konkret alle detaljerne skal implementeres er en af de største årsager til at et softwareprojekt bliver forsinket. Udviklerne bliver forvirrede hvis prioriteter ændrer sig hele tiden, og der er desuden en masse overhead i at context-switche fra en opgave til en anden, og tilbage igen. Derudover vil den øgede mængde features også give en øget kompleksitet i projektet og i projektplanlægningen. Det er ikke en ukendt sag, at man i softwarehuse kaster ekstra folk på et projekt der er ved at løbe af sporet, fordi der er mange features der kan løses som "selvstændige opgaver", hvilket aldrig gør noget godt for processen.
Når man når den kritiske fase til sidst i projektet retter fokus sig altid på det der er vigtigst, at kunne handle. Og når indkøbskurven ikke helt spiller, og produktlisterne er langsomme, vil det altid føles som den største ærgelse, at man har lagt en masse energi på at lave en liste over medarbejdere, en blog eller twitter integration.
Tip: Lav kernen først
Hvis du vil hurtigt i mål med din shop så gør dig og din leverandør den tjeneste at lave et projektforløb, der fokuserer på at få lavet kernefunktionaliteten først. Lav en prioriteret liste over hvad der absolut er need to have, aflever den prioritetsliste til leverandøren og lav den ikke om. Alle ændringer, tilføjelser og udvidelse gemmes til efter kernen er færdig og afleveret.
Der er ingen der siger, at du skal gå live kun med kernen, men lav den først og hold prioriteterne. Modtag det og test det rigtigt godt igennem. Sørg for at det performer godt også ved det besøgstal i forventer. Når det er sket, så tag en iteration mere, test det - og fortsæt indtil du vurderer sitet er klar.
Prøv at lade være med at holde leverandøren fast på en endegyldig fast leveringsdato, men aftal en tidsramme og følg med i den udvikling der sker, så du kan se at fremskridt sker som planlagt, og vær tæt på projektet så du ved når der er forhindringer i vejen, som du måske kan være med til at få afklaret.
Andre tips
Softwareleverandørens Tip #1: Content, content, content