Agil udvikling og Scrum:
Sand agilitet ligger i forretningen, ikke i udviklingsprocessen
Sand agilitet ligger i forretningen, ikke i udviklingsprocessen
Det vrimler med buzzwords i alle brancher og inden for alle fagområder. Særligt i it-branchen har vi mange fantastiske ord og termer som ofte vinder genlyd i befolkningen og ude hos vores kunder. Nogle er mere værdifulde end andre.
Et af de termer er ’agil udvikling’, ofte koblet sammen med den specifikke agile udviklingsproces, vi kalder Scrum. I denne blogpost, giver vi en kort introduktion til agil udvikling og Scrum generelt.
Agil udvikling i modsætning til vandfald
Når udvikling af et produkt skal sættes i gang, er specifikation, design og konstruktion ofte ikke præcist på plads endnu, og det kan være problematisk at lægge sig fast på processer. Derfor kan agil udvikling være en fordelagtig metode at benytte.
Agil udvikling beskrives ud fra fire kerneværdier, som står i direkte modsætning til vandfaldsudvikling:
- Individualitet og samarbejde frem for processer og værktøjer
- Fungerende software frem for omfattende dokumentation
- Kundesamarbejde frem for kontraktforhandling
- Respondere på forandring frem for blot at følge en plan
Scrum giver mulighed for konstante forbedringer
Scrum er en udviklingsmetode der hører under fanen ’agil’. Metoden blev oprindeligt brugt i softwareudvikling, men kan i princippet anvendes i et hvilket som helst projekt.
Scrum er en populær agil proces fordi tilgangen giver gode resultater, specielt i forhold til at have en høj effekt af projektgennemførsler og udførelse af de værdifulde løsninger for brugerne og dermed kunderne. Målet med Scrum er at opnå maksimal værdi af den indsats der ydes, hvor teamet får mulighed for hele tiden at vokse og opnå konstante forbedringer. Dette er også kernen for Mjølners måde at arbejde med forretningsværdi for vores kunder på.
Når man arbejder efter Scrum-metoden, arbejder man i sprints, det vil sige iterationer, som typisk varer en til flere uger. En iteration opfattes som en projektcyklus i miniformat, hvor et team på baggrund af en liste med prioriterede behov og krav, designer og udvikler elementer, som er testet og klar til at indgå som del af den færdige løsning. Hvert sprint afsluttes med et delprodukt.
Hvorfor arbejder Mjølner med agile processer (herunder Scrum)?
I dette interview med Solution Architect Toke Boisen, dykker vi ned i ‘agil udvikling’ og Scrum, og vi får samtidig forklaret, hvordan Mjølner arbejder i forhold til krav om agilitet i udviklingen.
Hvad tænker du om termen ’agilitet’ inden for softwareudvikling?
I agile metoder arbejder vi selvfølgelig ikke med hovedet under armen og udvikler uden, at nogen har forholdt sig til, at der er specifikke krav og designvalg der skal tages. Vi udvikler og tester og går i produktion. Agiliteten kommer ind i billedet, når vi accepterer, at vores omverden ændrer sig og vi derfor bliver nødt til at ændre vores software.
“Jeg tror egentligt bare, vi er i en tid, hvor ændringer optræder hyppigere og vi derfor også har større behov for at arbejde agilt med behov.”
Hvorfor arbejder Mjølner med den agile tilgang?
Når vi arbejder agilt accepterer vi, at det der er tæt på os, ved vi meget om, mens det der er længere væk, ved vi mindre om. Det er ok, at der er lidt tåget ude i fremtiden. Omgivelserne og behovene ændrer sig typisk alligevel så hurtigt, så vi ikke kvalitativt kan udtale os korrekt om de krav, vi møder længere fremme. Vi skal selvfølgelig sørge for, at vi med rettidig omhu får forstået krav, så vi ikke får en tåge tæt på os.
Omvendt er det også vigtigt, at niveauet af agilitet varierer efter behov. Vi har mange projekter, hvor vi starter med en kravspecifikation, analyse og designfaser inden vi starter udvikling. De projekter bliver gennemført med lige så stor succes, som projekter, hvor der er større behov for agilitet. Det handler om, at vi agilt kan håndtere ændringer til krav og design. Det er en del af ’change management’ i et projekt, og det har vi heldigvis nogle projektledere, der er virkelig gode til.
Agilitet er at kunne justere i forhold til hvad de nuværende krav er. Vores forretning og udviklere skal kunne snakke sammen. Udviklere, projektledere, arkitekter, forretningseksperter og kunden (forretningen) selv. Hvis vi får det hele med, så kan vi begynde at snakke om noget, som er sandt agilt.
“Sand agilitet starter i forretningen, og den optræder, når vi i forretningen begynder at håndtere forandringer som værende en naturlig ’driver’ for al forretningsudvikling. Hvis ikke der er de forandringer, har vi ikke behov for at være agile. Så bliver agil udvikling blot et ’buzzword’ som er smart at bruge lige nu. Og det er der i sig selv ingen værdi i.”
Hvordan arbejder Mjølner konkret med agil udvikling?
Konkret betyder det, at vi, når vi eksekverer et projekt, arbejder agilt ud fra de principper, vi har diskuteret i dag. Det kan være Scrum, men også mange andre processer. Vi vælger metoder og processer og tilretter altid efter behov.
Hvad er de vigtigste ting at huske når man taler om agilitet i it-projekter?
“Sand agilitet ligger i forretningen, ikke i udviklingsprocessen.”
Hvis det kun er udviklingsprocessen, så har vi lidt karikeret ikke andet tilbage end at prioritere krav, håndtere risici og ændre projektorganisation. Den vigtigste disciplin er ’change management’ på alle niveauer.
Hos Mjølner ønsker vi agilitet, men det er vigtigt at forstå at Scrum ikke er mere agil end den forretning man arbejder med. Agilitet er i virkeligheden at håndtere forandringer i forretninger og lade forandringerne drive beslutningerne.
Kilder:
Interview med Toke Boisen
https://mpeople.dk/agil-udvikling-vs-klassisk-projektledelse/
https://danskprojektledelse.dk/community/introduktion-til-scrum/