Agile programmering

Agile proces har en vigtig rolle at spille i softwareudviklingen og styringscyklussen. Agile har et sæt principper, der sætter et direkte fokus på kundeverdi, iterativ og inkrementel levering. Agile metoder sætter fokus på to forskellige aspekter, den ene er smidig praksis, der er ekstrem programmering og parprogrammering, andre fokuserer på at styre projekterne, der er gennem scrum-metoden. Agile proces bruges, når virksomheden eller organisationen har klarheden om sit mål, men vejen til at komme til løsningen er uklar, den agile processtyring bruges.

Ekstrem programmering af smidig praksis betragtes som den bedste praksis til at drage fordel af programmeringscyklussen. Ekstrem programmering kom til, efter at problemerne opstod i den traditionelle softwareudviklingscyklusmodel. Introduktionen blev foretaget bare for at fokusere på 'blot få jobbet gjort', og det blev fundet effektivt til udviklingen. ekstrem programmering er afprøvet agile udviklingspraksis; det sætter maksimalt fokus på kundeinteraktion for at kende det nøjagtige krav og derefter kun komme i udviklingen af ​​produktet.

Funktion af agile programmering

Det opdeler hele cyklusbehandlingen i mindre eller korte cyklusser. I udviklingsfasen, eller vi kan sige fase før levering (kan også være den sidste fase), kan kunden foretage ændringer baseret på hans krav. Det fungerer i fem faser-

  • Udforskning - Ekstrem programmering starter produktudviklingscyklus ved at indsamle kravene fra brugeren. Brugeren angiver sine ideer eller krav på historiekortet, som de vil se i frigivelsestiden. Historiekortpladser definerer den attribut, der skal føjes til produktet. I samme fase dokumenterer teamet oversigt over praksis, værktøjer og teknologi, der er nødvendigt til produktudviklingen, baseret på brugerens krav. Den teknologi, der er nødvendig til at skabe det nye produkt, testes, og nye muligheder undersøges ved at oprette en prototype af systemet. Det kan tage en uge eller et par måneder at gennemføre efterforskningsfasen, det afhænger helt af programmøren, hvor velkendt programmet er for teknologien.
  • Planlægning - De indsamlede data opdeles derefter i små cyklusser for at forstå enhver smule af brugerens krav. Dataene prioriteres til den første udgivelse af produktet, hvorefter udviklingen finder sted. Estimering og tidsplan for indsatsen for den første frigivelse beregnes og aftales derefter om frigivelsen. Den første udgivelsesperiode er under to måneder.
  • Iterationer - I dette trin finder der flere iterationer af systemerne sted inden den første produktudgivelse. Iterationerne er opdelt i et antal små iterationer og får to til fire uger til implementering. Nu er iterationsplanlægningsfasen aktiv, hvilket betyder, at beslutningen om cykeldeling, prioriteringskrav og arbejdsstyrke, der er nødvendig til udviklingen, er taget om. Iterationerne skaber konturet af systemet, så systemet opnås ved at vælge kortene fra historiekort lavet af brugeren. Beslutningen træffes af den bruger, som han først skal vælge. Kunden kører iteration i slutningen af ​​hver slot, som han har besluttet for hver iterationsdel.
  • Produktionering - Denne fase betragtes som vigtig, fordi den endelige test udføres til denne fase, før produktet leveres til kunden, testes ydelsen. Nye ændringer findes sandsynligvis i løbet af dette tidsrum, og som skal være korrekte i produktet inden den første frigivelse af produktet. Et team er parat til at acceptere ændringer i enhver fase af udviklingen, fordi nye krav kan dukke op i en hvilken som helst fase. For korrektioner skal iterationstiden reduceres fra tre til en uge. Andre ideer og forslag gemmes til senere implementering. Produktionen fortsætter med at køre efter den første frigivelse af produktet for det samme produkt, eller for det kan være til nye iterationer. Vedligeholdelsesteamet bliver bedt om korrektioner i defekter i denne fase, dette gøres efter den første frigivelse af produktet. Kommunikationen med kunden kan også spørge gennem kundesupportdesk. Tilføjelse af nye teammedlemmer og ændring i teamet, en struktur kan muligvis kræves under vedligeholdelse.
  • Dødsfase - Dette er den fase, hvor kunden er enig om ikke mere historiekort til implementering. Dette er den fase, hvor den endelige dokumentation vedrørende produktet kan udføres, menes, at der ikke foretages flere ændringer i arkitektur, design eller kode. Det er for at sikre, at produktet har leveret det ønskede produkt, ellers betragtes systemet som død. Det bør holde udgifterne i grænsen for videre udvikling.

Holdet (rolle og ansvar)

Agile cykler har flere medlemmer (team) til at skabe det nye produkt. Hver opgave er delt mellem teamet og samles trods alt godt.

  • Programmerer - Programmerer er en af ​​hovedorganerne, han opretter koden til produktet og holder koden enkel og klar til muligheden. Den bedste måde at kode korrekt på er at kommunikere igennem med andre programmerere og holdkammerater. Det kan være til at kende de nøjagtige krav til produktet.
  • Kunde - Kunden er hovedorganet til at skrive historiekort til hans krav og beslutter hvilket krav der tilfredsstiller hans behov. Implementeringsprioriteten fastlægges af kunden.
  • Tester - Tester er ansvarlig for at køre funktionelle tests, han hjælper kunden med at skrive funktionelle tests. Testning udføres igennem (regelmæssigt), og testværktøjer opretholdes.
  • Tracker - Tracker giver feedback og holder styr på estimatet foretaget af teamet giver også forslag til forbedring.
  • Coach - Coach er guide til teammedlemmerne i hele udviklingsprocessen. Han er den erfarne, der har været i behandling i mange år.
  • Konsulent - Konsulent er det eksterne medlem, der guider teamet med specifik teknisk viden, der kan være behov for udviklingen af ​​projektet.
  • Manager - Han er det afgørende organ. Manageren holder teamet i rute for at få arbejdet gjort. Han er åben for kommunikation til teammedlemmer om spørgsmålsteam, der står over for under udvikling. Han sørger for, at arbejdet skrider frem, indtil projektet er leveret.

Anbefalede artikler

Dette har været en guide til Agile-programmering. Her diskuterer vi funktion og teamrolle og ansvar for Agile programmering. Du kan også se på de følgende artikler for at lære mere -

  1. Hvad er Agile Software Development?
  2. Er MySQL-programmeringssprog?
  3. Hvad er Agile og Scrum?
  4. Hvad er Kotlin programmeringssprog?