Ekstrem programmering (XP) -

Placeret i slutningen af ​​1900'erne så softwareudvikling og programmeringskoncepter en betydelig ændring i måde og tilgang til hele skemaet. Leaner og pakke-størrelse tilgange, vi på stigning og klare enhedsmodeller blev anvendt for at skabe ændringer i den måde, computersoftware blev udviklet på. Affald behov for at blive reduceret med stigningen i efterspørgsel efter effektive systemer, og dermed kom ælden af ​​metoder til effektiv softwareudvikling. Procedureprogrammering blev snart erstattet af objektorienteret programmering, og vandfaldsmodellen gjorde det muligt for Agile at overtage føringen. Japanske rammer for kvalitetskontrol fik snart fart og fremkom derefter konceptet med noget, der tidligere blev brugt i bits og stykker, men som nu var en fuldt udbygget metode til at løse softwareprogrammering og udviklingslidelser, ekstrem programmering!

Hvad er ekstrem programmering (XP)?

Med et betydeligt antal ændringer, der så dagens lys fra klienter, kom Extreme Programming (XP) ind som en lettelse for at organisere projekter, der blev udført af softwarespecialister.

Implementering af ekstrem programmering forbedrede softwarekvaliteten og reagerede mere effektivt på de ændrede krav fra virksomheden, forårsaget af skalering af virksomheder eller eksterne faktorer.

XP er en metode under Agile paraply, der tilskynder til hyppige versioner i korte udviklingscyklusser. Dette ville uundgåeligt øge produktiviteten i vid udstrækning, og de hyppige frigivelser ville bane vej for inkorporering af nyere krav.

Ekstrem programmering (XP) har "kundetilfredshed" i hjertet af dens rammer og "teamwork" som muskelkraften. Samarbejde er et must for ekstrem programmering (XP) for at være vellykket, da det tager iterative skridt hen imod produktion af software til klienter / kunder. Det er ikke fokuseret på at levere hele bæltet, men ser på, om kundens behov er opfyldt i alle faser undervejs.

En del af Agile Software Development

Agil softwareudvikling er den måde, udviklingen gennemføres på, men vigtigst af alt, hvad de fleste mennesker glemmer at erkende, er, at teams, det vil sige mennesker, er nødt til at være agile for at det skal få succes. Metoderne og processerne implementering sikrer kun, at der er en fast ramme, hvor hold kan være fleksible, skalerbare og mere definitivt kreative.

Med begreberne iteration og sprints, ligesom i tilfælde af Scrum, giver Agile en fantastisk platform til at få ændringer og feedback implementeret i hver udviklingscyklus, der går.

Når det kommer til Extreme Programming (XP), tager den hensyn til alle de muligheder, der kan resultere i forbedringer, der er foretaget til slutningen.

Traditionel udvikling versus ekstrem programmering (XP)

  • Mens traditionel udvikling holder fokus på processen og tager det i betragtning, når det drejer sig om færdiggørelse af cyklussen, fokuserer ekstrem programmering på kravet.
  • Extreme Programming (XP) tager de bedste fremgangsmåder, der er installeret i traditionel udvikling og bringer det til de ekstreme grænser. Strækningen, der udføres med ekstrem programmering (XP), er fantastisk til fleksible og elastiske projekter.
  • Traditionel udvikling har segmentering som den foregående faktor i softwareudviklingscyklusser, hvorimod ekstrem programmering (XP) går ind for samarbejdet mellem teams og også interessenterne for deres konstante feedback og synspunkter i iterationer og planlægningsfaser.

5 Værdier for et vellykket projekt

Ekstrem programmering (XP) involverer de 5 væsentlige måder eller værdier til at gå mod et vellykket softwareprojekt:

  1. Kommunikation - Denne softwareudviklingsmetodologi kræver i bund og grund tæt kommunikation mellem ledere, klienter / kunder og udviklere. Denne effektive kommunikation er nødvendig for, at softwareprojektet fungerer gnidningsløst, og andre projektstyringsværktøjer implementeres også inden for kommunikation, så de kan lette kommunikationen yderligere i projektets livscyklus.
  2. Mod - Med dramatiske ændringer i kundekravene er det for udviklerne at modigt tage de udfordringer, der dukker op i sidste øjeblik, eller modsige de ændringer, der er anvendt til projektet på ethvert tidspunkt.
  3. Feedback - Feedback implementeres gennem konstant enhedstest, og resultaterne evalueres og implementeres i overensstemmelse hermed inden for projektudviklingscyklusserne. Kunder holdes tæt på, og en demo præsenteres, så snart en udviklingscyklus er afsluttet, så feedback kan integreres.
  4. Respekt - Hver udviklingscyklus bringer sin succes til en ny milepæl, og den illustrerer kun de bidrag, der er lagt i cykler, der er gennemført.
  5. Enkelhed - ekstrem programmering (XP) er mest effektiv, når designet holdes enkelt og implementeringen planlægges på en klar og effektiv måde. En masse ekstrem programmering kører på de enkle regler, den har på plads.

Planlægning-feedback-cykler

Samarbejde i teamet og daglig forbindelse til virksomheden for optimeret produktudvikling udgør rygraden i ekstrem programmering (XP), mens brugerhistorier danner grundlaget for XP-planlægning. Disse brugerhistorier noteres på kort. Manipulering af disse kort kan bringe projektomfanget og planen til live.

Denne XP-planlægning oprettes med tre niveauer eller niveauer.

  • Fremtidige måneder
  • Næste iteration
  • Nuværende iteration

Planer er altid midlertidige, og rekreation af planer skal laves inden udgangen af ​​den sidste plan. De ændrer sig, når der endda er en mindre ændring i projektet eller dets tidsplan. Iterationen begynder i det øjeblik, hvor der opstår en ændring. Du får feedback fra kunden, du genovervejer din plan. Du står foran eller bag planen, du besøger og ændrer din plan.

Gennem planlægning træder i kraft de mest passende design til det produkt, der skal leveres. Med hensyn til ekstrem programmering (XP) bruges testdrevet udvikling (TDD) og refactoring til effektiv og effektiv design.

Reefactoring er allerede i essensen af ​​Agile, som et vigtigt og afgørende designværktøj, der er involveret i planlægningsprocessen. Refactoring involverer at foretage designvekslinger og justeringer i overensstemmelse med de behov, der er ændret. Med refactoring kommer konceptet med testning på en enhed og acceptabel måde.

De følgende trin er i centrum, når der udføres en planlægnings- eller feedbacksløjfe. Hver handling her er iterativ og kan udføres efter hinanden, når en ændring er igangsat:

Hvert trin i den sekvens, der udføres, kan have iterativ karakter og kan sløjpes, når og når ændringssekvensen indledes, og en ny plan gendannes til hver initiering. Hvert trin har også en bestemt varighed tildelt det, og en tidsplan er udalket for resten af ​​feedbacken for hvert trin i produktet.

  • Kodning til par-programmering - sekunder
  • Par programmering til enhedstest - minutter
  • Enhedstest til parforhandling - timer
  • Parforhandling til stand-up-møde - en dag
  • Stand-up-møde til accept-test - dage
  • Accept af test til Iteration Planning - uger
  • Iteration Planlægning til frigivelse af planlægning - måneder

Med det ønskede iterationsniveau bliver det obligatorisk for udviklerne at sikre og sikre, at koden er godt sorteret og er af optimal kvalitet. Rapportering af bugs er et strengt nej for udviklere efter den ekstreme programmeringsmetodologi til softwareudvikling.

Hvad er parprogrammering?

Da den centrale ressource for den ekstreme programmeringsmetodik er mennesker og ikke processer, er det mennesker, der kører begrebet parprogrammering. At tilføje produktivitet og kvalitet til tabellen, parprogrammering går sådan:

"Koden, der sendes til produktion, oprettes af to personer, der arbejder sammen om den kode, der skal oprettes, mens de sidder på en enkelt computer."

Fordelene ved dette koncept med parprogrammering er som følger:

  • Forbedret softwarekvalitet - selvom der ikke er nogen tilføjelse til funktionalitet med to personer, der sidder sammen eller fra hinanden, øger koncentration på en enkelt computer bestemt kvaliteten af ​​den gengivne kode
  • Ingen virkning på leveringstid - at give en win-win-situation for projektet og dets interessenter, ved hjælp af to funktionelle hoveder til at få en kode af høj kvalitet uden tidstab er fantastisk til softwareudvikling
  • Omkostningsbesparelser i senere faser - med den allerede gendannede kode af høj kvalitet er indvirkningen på senere faser enorm, og omkostningerne spares helt sikkert med hver iteration, der finder sted

Par programmering, da det involverer to karakteristiske individer, der arbejder sammen ved lige borde, det bliver vigtigt for dem at koordinere på et højere niveau, uanset erfaringsniveauet. Det er en social færdighed, der tager tid at lære, og den har brug for to dedikerede fagfolk, der ønsker at gøre en forskel i verdenen af ​​softwareudvikling.

Parprogrammering foregår altid ved omfattende og kontinuerlig integration af den integrerede nye funktionalitet, og cyklussen fortsætter.

Regler

Selvom vi ved, at reglerne, der arbejdes i verden af ​​ekstrem programmering (XP), er baseret på princippet og værdien af ​​enkelhed, er det vigtigt at have et godt overblik over disse regler, der udgør en god metodologi inden for softwareudviklingsteknikker.

Planlægning

I planlægningen af ​​projektlederen og hans team skal vi se grundigt på kravene og overholde følgende regler:

  • Brugerhistorier skal noteres
  • Udgivelsesplanlægning skal resultere i en frigørelsesplan
  • Projektet er opdelt i iterationer
  • Releaser er nødt til at hyppige, men små
  • Iterationsplanlægning skal starte iterationen

Styring

Projektlederens rolle er styringen af ​​de tildelte opgaver og varigheden for hver særlige opgave. Det er vigtigt, at projektlederen er opmærksom på risiciene og overholdelsen af ​​hvert trin, der udføres af teammedlemmerne, og styrer arbejdsstyrken og ressourcerne i overensstemmelse hermed for at opfylde konceptet med ekstrem programmering (XP). Her er nogle af de regler, der skal gennem en premierminister:

  • Holdet skal have et åbent arbejdsområde for at udvide deres fantasi
  • Den tildelte tidsplan skal være realistisk og omhyggelig tempo
  • Hver arbejdsdag skal begynde med et stand-up-møde
  • Samarbejde og teamwork er vigtige komponenter og kræver den største opmuntring
  • Projektets hastighed skal måles under hver inkorporering af ændringer
  • Folk skal aldrig holdes stagneret og bør flyttes rundt
  • Styring af ekstrem programmering (XP) er meget vigtig, og planlægningen bør initieres ved hver ændringsmulighed

Designing

Design er det trin, der nøje følger planlægningen, og det bestemmer, hvordan kravene håndteres i projektets første fase. Et godt design reflekterer tankeprocessen og kreativiteten og kræver et mindre antal iterationer og sikrer således høje kvalitetsniveauer helt i starten af ​​projektet. Som en afspejling af planlægningstrinnet, her er et par regler, som du skal huske på under implementeringen af ​​design i ekstrem programmering (XP):

  • Enkelhed er nøglen
  • Ingen funktionalitet bør introduceres på et tidligt tidspunkt
  • Refactoring er vigtig i alle faser for at tilvejebringe effektiv og effektiv produktdesign
  • Spike-løsninger kan bruges til at reducere antallet og intensiteten af ​​risikoen for softwareprojektet

Coding

Når designen er på plads, er det tid til at få alle hænderne på dækket og give den klokkeslæt for at oprette og generere kode, der kommer ind i produktion til test og til levering. Kodning kommer som det trin, der demonstrerer projektmetodens faktiske funktion og tilskynder til iteration på den mest effektive måde. Her er hurtige regler, man skal være opmærksom på, når man er inden for kodningstrinnet:

  • Kunden skal altid være i løkken under produktudgivelser
  • Kode skal overholde kodningsstandarder og praksis, der er vedtaget over hele verden
  • Enhedstesten skal være kode som start
  • Produktionskode skal gennemgå parprogrammering af høj kvalitet
  • Integrer koder ofte og bør kun udføres af et par på et bestemt tidspunkt
  • Ansvarlighed bør deles, og intensivt teamwork bør fremmes
  • Parprogrammering skal finde sted på en computer
  • Parret skal foretrækkes side om side

Test

Når koden er klar og rullende, kommer testning som et segl for, at kodelinjerne fungerer gnidningsløst. Testning af formularer som et seglstempel for at sikre, at softwaren er klar til forbrug. Følgende er de regler, der er indført for test inden for Extreme Programming (XP):

  • En kode skal indeholde enhedstest
  • En frigivelse kræver koder for at bestå disse enhedstest
  • Tests skal oprettes ved registrering af fejl
  • Acceptantest skal have en høj frekvens, og resultaterne skal offentliggøres
  • Brugere bør ikke registrere eventuelle fejl i en kode

Hvornår skal man bruge ekstrem programmering (XP)?

Ekstrem programmering blev født på grund af behovet for at arbejde omkring et projekt, der gennemførte en masse ændringer i mange tidspunkter i tid. Det blev nødvendigt, at den vedtagne metodologi var iterativ og enkel i dets kerne. Følgende er de situationer, der kan bede om brug af ekstrem programmering (XP):

  • Kunder har ikke en god idé om systemets funktionalitet
  • Ændringer er dynamiske og forventes at ændre sig efter korte tidsintervaller
  • Forretningen stiger kraftigt
  • Tildelte ressourcer er et minimum. ingen enorme medarbejdere
  • Brug for en betydelig stigning i produktiviteten
  • Risiko har brug for høje niveauer af afbødning
  • Høje bestemmelser til test

Så her er ekstrem programmering (XP) til dig i korte og enkle ord. Denne metode har rapporteret succes i alle softwareudviklingsvirksomheder og har haft en stor succesrate gennem dens implementeringshistorie. Født ud fra normale og forenklede krav vinder ekstrem programmering (XP) nu langsomt anerkendelse som en metode til at regne med.

Hvis du kan lide konceptet Extreme Programming (XP), skal du give denne artikel tommelfingeren op. Hvis du elskede det, skal du sørge for at dele og kommentere dine synspunkter.