Hvordan kommer man fra vandfald til agil UX?
Når man taler om softwareudvikling, taler man ofte om de udviklingsmodeller, der bruges til at styre arbejdet. Mange organisationer er gået fra at bruge en vandfaldsmodel til at gennemgå en agil transformation. Men hvad vil det sige – og hvilke fordele og ulemper er der ved de to tilgange, når vi taler om usability, user experience (UX) design og design?
Skrevet 22. juni 2017 08:06
Vandfaldsmodellen bruges ved at gå fra fase til fase strengt sekventielt. Dvs. det ikke er muligt at springe mellem faserne, hvorfor en fase skal være afsluttet før man fortsætter til næste, se figur 1. Denne tilgang ses ofte stadig i mange managementmodeller, hvor gates skal passeres strengt sekventielt.
Fordelene ved denne model er, at den giver en god basis for et gennemført og konsistent design. Ved mere iterative modeller, sker der ofte knopskydninger, der ikke er taget højde for fra starten. Derfor understøtter vandfaldsmodellen ofte også et vedligeholdelsesvenligt slutprodukt, da alt har været tænkt ind fra starten.
Problemer ved vandsfaldsmodellen
Virkelighedens softwareprojekter følger sjældent et strengt sekventielt forløb - der vil næsten altid være nye krav, viden, teknologi, etc. der skal tages højde for. Men når kravene i et vandfaldsprojekt først er på plads, er projektet mere eller mindre en ”black box” for kunden, indtil udviklingen er færdig. Dette gør det næsten umuligt at inddrage arbejdet med UX og usability i sådanne processer, da der ikke er working software før til slut i projektet og derfor ikke noget at teste på. Desuden er der heller ingen garanti for at kunden får det ønskede, da intet kørende system eksisterer før til slut i projektforløbet. Derfor er risikoen ved vandfaldsprojekter også utrolig høj, se figur 2.
Agil udvikling er mindre risikabelt
Agil udvikling gør op med disse risici ved at have fokus på transparens, omstillingsparate teams og kontinuerlig levering af working software. Fordelene ved agil udvikling er evnen til at reagere hurtigt på ændrede krav i projektet – både fra kunden, men også fra markedet. Risikoen ved et agilt projekt er derfor ikke så høj som ved et vandfaldsprojekt, da der pga. transparens og kontinuerlig levering, maksimalt vil være tale om en iteration, der skal kasseres, se figur 3.
Derudover sikrer agil udvikling også kontinuerlig kommunikation med kunden, hvilket sikrer at kunden altid ved, hvor projektet er på vej hen og har mulighed for at komme med input.
En af ulemperne ved store, agile projekter er dog, at det kan være svært at bedømme arbejdsindsatsen, økonomien og tiden projektet kræver. Dette skal ses i lyset af, at agil udvikling er udviklet til mindre teams og der har været en mangel på retningslinjer for, hvordan organisationer kan håndtere store, agile udviklingsprojekter. Dette er der dog ved at blive gjort op med og modeller for, hvordan man kan arbejde agilt på enterpriseniveau, er begyndt at se dagens lys.
Udfordringen er at få UX ind i den agile proces
En anden betydelig fordel ved agil udvikling er, at man kan inddrage brugerne løbende, da man netop har en kontinuerlig levering af working software, man kan teste på. Der kan dog være udfordringer med at integrere UX i den agile proces, da design og softwareudvikling normalt har meget forskellige udviklingsrytmer.
En anbefaling er dog at integrere arbejdet med UX i dag-til-dag arbejdet. Et specifikt forslag er at undersøge hvordan UX arbejdet kan udføres i mindre skala, således aktiviteterne kan integreres i sprints. Det kan også være at træne softwareudviklerne i af udføre mindre krævende UX-opgaver eller at lade UX-arbejdet og softwareudviklingen foregå parallelt, som fx i tilgangen Parallel UX. Læs mere om den tilgang her.
Kontrasten mellem hvordan man udfører UX arktiviteter og hurtigheden og den iterative natur ved fx Scrum er stor. Selvom flere forskellige initiativer med fokus på at mindske denne problemstilling og lette en integration mellem UX-design og agil softwareudvikling har set dagens lys, er det stadig ikke lykkedes at gøre til fulde. Derfor er kompetencer indenfor dette felt også noget, erhvervslivet eftersøger i stigende grad.
Kilder:
Balaji, S., Murugaiyan, M.S., 2012. Waterfall vs. V-Model vs. Agile: A comparative study on SDLC. Int. J. Inf. Technol. Bus. Manag. 2, 26–30.
Royce, W.W., 1970. Managing the development of large software systems, in: Proceedings of IEEE WESCON. Los Angeles, pp. 328–388.