Annoncørbetalt indhold

Agil udvikling – den moderne og fleksible udviklingsmetodik

Annonce

Denne artikel indeholder sponsoreret indhold

Agil udvikling er et af de mest anvendte begreber inden for drift af softwareudvikling og ledelse af udviklingsteams i dag. Hvad præcis agil udvikling er, hvordan det fungerer i praksis, og hvem der anvender det, kan du læse om lige her.

Annonce

Hvad er agil udvikling?

Begrebet stammer fra det engelske udtryk agile development, som betyder adræt udvikling og har fokus på, at udviklingsprocesserne skal være fleksible og behændige. Den agile udviklings bevægelse opstod omkring årtusindeskiftet, da softwareudvikling efterhånden var begyndt at have en signifikant effekt på den moderne arbejdsgang og fyldte en betydelig del på mange af verdens arbejdspladser.

Særligt var udviklere og ledere på det tidspunkt blevet trætte af, at softwareudvikling anvendte adskillige forskelligartede, inkonsistente og omfattende processer, samt at disse typisk var langsomme til at reagere og tilpasse sig, hvis kundernes ønsker ændrede sig undervejs i et forløb.

Derfor satte en gruppe udviklere sig sammen for at finde ud af og definere, hvordan agile metoder kunne forbedre, strømline og effektivisere moderne softwareudvikling. Deres arbejde resulterede i dét, der i dag kaldes Det Agile Manifest (The Manifesto for Agile Software Development).

Annonce

Det Agile Manifest

Kort sagt baserer al agil udvikling sig i dag på Det Agile Manifest, som særligt fremhæver fire kerneværdier:

·Individer og interaktioner er vigtigere end processer og værktøjer. Sidstnævnte er selvfølgelig vigtige, men det allervigtigste er at have kompetente personer, der kan finde ud af at arbejde sammen.

·Funktionel software er vigtigere end omfattende dokumentation. Fyldestgørende dokumentation er brugbart, i forhold til at andre skal kunne forstå, hvordan et stykke software er bygget, men det vigtigste i softwareudvikling er at skabe ny, funktionel software.

·Kundesamarbejde er vigtigere end kontrakter. En kontrakt kan ofte gavne et samarbejde, men det er mere essentielt at have et tæt samarbejde med kunden for at kortlægge og forstå deres behov løbende.

·Det er vigtigere at kunne tilpasse sig ændringer end at følge en plan slavisk. Det er brugbart at udarbejde en projektplan, men den må ikke være så rigid, at der ikke er plads til omstilling og tilpasninger undervejs i et forløb.

Derudover indeholder Det Agile Manifest også 12 principper, der alle læner sig op ad de fire kerneværdier.

Annonce

Hvordan fungerer det i praksis?

For at forstå hvordan agil udvikling fungerer i praksis, kan det være en fordel at forstå, hvad alternativet til agil udvikling er.

En af de mest fundamentalt anderledes tilgange til softwareudvikling er vandfaldsmodellen, hvor udviklingsforløbet så at sige flyder nedad gennem forskellige projektaktiviteter i lineære sekvensfaser. Ved brug af vandfaldsmodellen fastlægger man kravspecifikationer og design, inden man går videre til implementering eller kodning af det aftalte projekt. Vandfaldsmodellen består således af mere eller mindre rigide og kronologiske sekvenser, hvilket står i kraftig kontrast til agil udvikling, der har stort fokus på omstillingsparathed og løbende samarbejde med kunden.

Agil udvikling lægger vægt på at opdele produktudviklingsarbejdet i små trin eller bidder, der minimerer mængden af planlægning og design, før selve udviklingen påbegyndes. I agil udvikling består udviklingsarbejdet typisk i små, korte iterationer, der varer mellem en og fire uger. Et større projekt inddeles således i bittesmå bidder eller mini-projekter, som så designes, udvikles, testes og typisk også præsenteres for kunden. Med agil udvikling bliver det derfor nemmere at sikre, at et projekt lever op til kundens forventning, og at eventuelle udfordringer samt at justeringer fanges i opløbet og kan løses, inden et projekt har bevæget sig for langt i den forkerte retning.

Agil udvikling fungerer i praksis gennem nogle helt lavpraktiske processer og arbejdsmetoder. Det er for eksempel de korte 1-4 ugers sprints, hvor en opgave løses og testes af, men også princippet om, at de (typisk tværfaglige) teams, der arbejder på et projekt, sidder tæt fysisk sammen og har mulighed for at indgå i effektiv interaktion og kommunikation ansigt til ansigt.

Derudover består agil udvikling også af daglige ”stand-ups”, som er helt korte morgenmøder, hvor alle på projektteamet rapporterer til hinanden, hvordan de den foregående dag arbejdede hen mod teamets iterationsmål, hvad de har til hensigt at arbejde med i dag samt eventuelle hindringer, de kan se i forhold til målet.

Sidst, men ikke mindst, har agil udvikling også et stort fokus på kvalitetssikring. Denne kvalitetssikring foregår med forskellige værktøjer og metoder blandt andet gennem par-programmering, hvor to udviklere arbejder sammen ved én computer; de skiftes til at skrive kode og gennemgå den skrevne kode. En anden hyppigt anvendt kvalitetssikring er refactoring, hvor eksisterende kode omskrives og typisk forsimples, så den bliver lettere at læse for andre udviklere.

Dette fokus på kvalitetssikring sørger for, at der bliver opbygget en høj kvalitet fra starten af et projekt og gør det agile udviklingsteam i stand til at demonstrere software til kunder på ethvert tidspunkt, eller i det mindste ved slutningen af hver iteration.

Annonce

Hvem anvender agil udvikling?

I dag anvendes agil udvikling som en form for paraplybegreb for udviklingsmetodikker, der anvender principper eller kerneværdier fra Det Agile Manifest. Principperne bliver hovedsageligt brugt af udviklingsteams og af projektledere (for eksempel Product Ownere). For eksempel er scrum en udviklingsmetode under den agile tankegang, som har fokus på projektledelse, og som typisk bruges af scrum mastere, som er tovholdere på et team, der bruger scrum og sikrer, at alle forstår scrum teori, praksis, regler og værdier.

Udover scrum er Kanban en anden hyppigt anvendt agil udviklingsmetode, som blandt andet blev brugt til at udføre forbedringer hos Toyota. I Kanban er fokusset på et planlægningssystem, som kan informere teamet om, hvad der produceres, hvornår det skal produceres, og hvor meget der skal produceres. Kanban anvendes typisk i forbindelse med lean produktion, men bruges også tit af softwareudviklingsvirksomheder.

Denne artikel indeholder sponsoreret indhold

Om Annoncørbetalt indhold

Annoncørbetalt indhold er et annonceformat, der er blevet til i samarbejde mellem Jysk Fynske Mediers kommercielle afdelinger og en annoncør.

Jysk Fynske Mediers uafhængige redaktionelle medarbejdere er således ikke involveret i nogen faser af udviklingen af det betalte indhold. Lige som annoncørerne ikke har nogen indflydelse på det redaktionelle indhold på Jysk Fynske Mediers nyhedssites.

Når en artikel er markeret med ’annonce’ eller ‘annoncørbetalt indhold’, betyder det, at en annoncør har betalt for artiklen og har haft indflydelse på indholdet i den konkrete artikel.

Annoncørbetalt indhold skal leve op til Jysk Fynske Mediers nyhedssites øvrige stil, tone og den generelle kvalitet, som læserne normalt forventer sig at møde.

Annoncørbetalt indhold vil altid være tydeligt afmærket med ‘Annoncørbetalt indhold’ og annoncørens logo for at gøre det tydeligt for vores læsere, at artiklen er betalt. Desuden vil valg af skrifter, farver og design adskille sig fra Jysk Fynske Mediers uafhængige redaktionelle artikler for at undgå forveksling.