Extrem programmering (XP) -

Placerades i slutet av 1900-talet såg programvaruutveckling och programmeringskoncept en betydande förändring i sättet och tillvägagångssättet för hela schemat. Leaner och paketstorlekar som vi ökar och tydliga enhetliga modeller tillämpades för att åstadkomma förändringar i hur datorprogramvara utvecklades. Avfall behövde minskas med ökningen i efterfrågan på effektiva system och därmed ökade eran med metoder för effektiv mjukvaruutveckling. Procedursprogrammering ersattes snart av objektorienterad programmering och vattenfallsmodellen gjorde det möjligt för Agile att ta över ledningen. Japanska ramverk för kvalitetskontroll fick snart fart och framkom sedan konceptet med något som tidigare använts i bitar, men som nu var en fullfjädrad metod för att lösa programvaruprogrammering och utvecklingsproblem, Extreme Programming!

Vad är extrem programmering (XP)?

Med ett betydande antal förändringar som såg dagens ljus från klienter kom Extreme Programming (XP) in som lättnad för att organisera projekt som genomförts av mjukvaruspecialister.

Implementering av extrem programmering förbättrade programvarukvaliteten och svarade mer effektivt på de förändrade kraven i verksamheten, orsakad av skalning av företag eller externa faktorer.

XP är en metod under Agile-paraplyet, som uppmuntrar till ofta versioner av versioner i korta utvecklingscykler. Detta skulle oundvikligen öka produktiviteten i stor utsträckning och de frekventa utsläppen skulle bana väg för införandet av nyare krav.

Extreme Programming (XP) har "kundnöjdhet" i centrum för sitt ramverk och "teamwork" som muskelkraften. Samarbete är ett måste för att extrem programmering (XP) ska vara framgångsrik eftersom det tar iterativa steg mot att producera programvara för klienter / kunder. Det är inte fokuserat på att leverera hela bältet utan tittar på om kundens behov uppfylls i varje steg på vägen.

Del av Agile Software Development

Agile mjukvaruutveckling är hur utvecklingen genomförs, men viktigast av allt, vad de flesta glömmer att erkänna är att team, det vill säga människor, måste vara agila för att det ska bli framgångsrikt. Implementeringen av metoder och processer garanterar bara att det finns en fast ram där team kan vara flexibla, skalbara och mer definitivt kreativa.

Med begreppet iteration och sprints, som i fallet med Scrum, ger Agile en utmärkt plattform för att få förändringar och feedback implementerad i varje utvecklingscykel som går förbi.

När det gäller Extreme Programming (XP) tar den hänsyn till alla möjligheter som kan resultera i förbättringar av produkten i slutet.

Traditionell utveckling kontra extrem programmering (XP)

  • Medan traditionell utveckling håller fokus på processen och tar hänsyn till det när det gäller slutförandet av cykeln, fokuserar extrem programmering på kravet.
  • Extreme Programming (XP) tar de bästa metoderna som installerats i traditionell utveckling och tar det till de yttersta gränserna. Sträckningen som utförs med extrem programmering (XP) är bra för flexibla och elastiska projekt.
  • Traditionell utveckling har segmentering som föregående faktor i mjukvaruutvecklingscykler, medan extrem programmering (XP) förespråkar samarbetet mellan team och även intressenterna för deras ständiga feedback och synpunkter under iterationer och planeringsstadier.

5 Värden för ett framgångsrikt projekt

Extrem programmering (XP) involverar de fem väsentliga sätten eller värdena att gå mot ett framgångsrikt programvaruprojekt:

  1. Kommunikation - Denna mjukvaruutvecklingsmetodik kräver i grund och botten nära kommunikation mellan chefer, klienter / kunder och utvecklare. Denna effektiva kommunikation behövs för att mjukvaruprojektet ska fungera smidigt och andra projekthanteringsverktyg implementeras också inom kommunikation så att de kan underlätta kommunikationen ytterligare under projektets livscykel.
  2. Mod - Med dramatiska förändringar i kundkraven är det för utvecklarna att modigt ta sig an de utmaningar som dyker upp i sista minuten eller motsäger förändringar som tillämpas på projektet när som helst.
  3. Feedback - Feedback genomförs genom ständig enhetstestning och resultaten utvärderas och implementeras i enlighet därmed inom projektutvecklingscyklerna. Kunderna hålls på nära håll och en demo presenteras så snart en utvecklingscykel är klar så att feedback kan integreras.
  4. Respekt - Varje utvecklingscykel ger sin framgång till en ny milstolpe och den exemplifierar bara de bidrag som läggs in i genomförda cykler.
  5. Enkelhet - extrem programmering (XP) är mest effektiv när designen hålls enkel och implementeringen planeras på ett tydligt och effektivt sätt. Många extrema programmeringar rider på de enkla regler som den har på plats.

Planering-feedbackcykler

Samarbete i teamet och daglig anslutning till verksamheten för optimerad produktutveckling utgör ryggraden i extrem programmering (XP), medan användarhistorier utgör grunden för XP-planering. Dessa användarhistorier noteras på kort. Manipulering av dessa kort kan leva upp projektets omfattning och plan.

Denna XP-planering skapas med tre nivåer eller nivåer.

  • Framtida månader
  • Nästa iteration
  • Nuvarande iteration

Planer är alltid tillfälliga och rekreation av planer måste göras före slutet av den sista planen. De ändras när och till och med en liten förändring i projektet eller dess schema. Iterationen börjar just när en förändring påträffas. Du får feedback från kunden, du går igenom din plan. Du står framför eller bakom schemat, du besöker och ändrar din plan.

Genom planering träder i kraft de mest lämpliga designerna för produkten som ska levereras. När det gäller extrem programmering (XP) används testdriven utveckling (TDD) och refactoring för effektiv och effektiv design.

Redan med essensen av Agile kommer refactoring som ett viktigt och avgörande designverktyg som är involverat i planeringsprocessen. Refactoring innefattar att göra designväxlingar och justeringar i enlighet med de ändrade behoven. Med refactoring kommer begreppet testning på ett enhetligt och acceptabelt sätt.

Följande steg är i centrum när en planerings- eller feedbackslinga utförs. Varje åtgärd här är iterativ och kan utföras i följd när en förändring har inletts:

Varje steg i sekvensen som utförs kan vara iterativ till sin natur och kan slingas när och när förändringssekvensen initieras, och en ny plan återskapas för varje initiering. Varje steg har också en viss tid som tilldelas det och ett schema chalkas ut för resten av feedbacken för varje steg i produkten.

  • Kodning till par-programmering - sekunder
  • Para programmering till enhetstestning - minuter
  • Enhetstestning för parförhandling - timmar
  • Parförhandling till stand-up-möte - en dag
  • Stand-up-möte till acceptansprövning - dagar
  • Acceptantest till Iteration Planning - veckor
  • Iteration Planning för att släppa planering - månader

Med den eftertraktade nivån av iteration blir det obligatoriskt för utvecklarna att säkerställa och säkerställa att koden är väl sorterad och är av optimal kvalitet. Rapportering av buggar är ett strikt nej för utvecklare enligt den extrema programmeringsmetodiken för programvaruutveckling.

Vad är parprogrammering?

Eftersom den centrala resursen för den extrema programmeringsmetodiken är människor och inte processer, är det människor som driver begreppet parprogrammering. Att lägga till produktivitet och kvalitet i tabellen, parprogrammering går något så här:

"Koden som skickas i produktion skapas av två personer som arbetar tillsammans om koden som ska skapas medan de sitter på en enda dator."

Fördelarna med detta koncept med parprogrammering är följande:

  • Förbättrad programvarukvalitet - även om det inte finns något tillägg i funktionalitet med två personer som sitter tillsammans eller isär, ger koncentration på en enda dator säkert kvaliteten på den återgivna koden
  • Ingen effekt på tid att leverera - att tillhandahålla en win-win-situation för projektet och dess intressenter, med två funktionella huvuden för att få en högkvalitativ kod utan tidsförlust är bra för programutveckling
  • Kostnadsbesparingar för senare stadier - med den högkvalitativa koden som redan har gjorts, är effekten på senare stadier enorm och kostnaden sparas säkert med varje iteration som äger rum

Koppla ihop programmering eftersom det handlar om två distinkta individer som arbetar tillsammans vid lika bord, det blir viktigt för dem att samordna på en högre nivå, oavsett erfarenhetsnivå. Det är en social färdighet som tar tid att lära sig och den behöver två dedikerade yrkesverksamma som vill göra en skillnad i världen av mjukvaruutveckling.

Parprogrammering fortsätter alltid genom omfattande och kontinuerlig integration av den nya funktionaliteten som ingår och cykeln fortsätter.

regler

Även om vi vet att reglerna för att arbeta i världen för extrem programmering (XP) är baserade på principen och värdet av enkelhet, är det viktigt att ha en bra bild av dessa regler som utgör en bra metod inom mjukvaruutvecklingstekniker.

Planera

När du planerar projektledaren och hans team ser du noggrant på kraven och följer följande regler:

  • Användarhistorier måste noteras
  • Släppplanering bör resultera i ett släppschema
  • Projektet är uppdelat i iterationer
  • Releaser måste ofta men små
  • Iterationsplanering bör starta iterationen

hantera

Att hantera tilldelade uppgifter och varaktigheten för varje speciell uppgift är projektledarens roll. Det är viktigt att projektledaren är medveten om riskerna och efterlevnaden av varje steg som teammedlemmarna genomför och styr arbetskraften och resurserna i enlighet därmed för att uppfylla konceptet extrem programmering (XP). Här är några av reglerna som måste gå igenom en PM:

  • Teamet bör få ett öppet arbetsområde för att öka fantasin
  • Tilldelat schema ska vara realistiskt och noggrant tempo
  • Varje arbetsdag bör inledas med ett stand-up-möte
  • Samarbete och teamwork är viktiga komponenter och behöver ytterst uppmuntran
  • Projektets hastighet ska mätas under varje förändringsinkorporation
  • Människor ska aldrig hållas stagnerade och bör flyttas runt
  • Styrning av extrem programmering (XP) är avgörande och planering bör initieras vid varje förändringsmöjlighet

Design

Designing är det steg som noggrant följer planeringen och det avgör hur kraven hanteras i projektets första steg. En bra design återspeglar tankeprocessen och kreativiteten och kräver ett mindre antal iterationer, vilket säkerställer höga kvalitetsnivåer redan i början av projektet. Som en återspegling av planeringsstadiet är här några regler att tänka på vid implementeringen av mönster i extrem programmering (XP):

  • Enkelhet är nyckeln
  • Ingen funktionalitet bör introduceras i ett tidigt skede
  • Refactoring är viktigt i varje steg för att tillhandahålla effektiv och effektiv produktdesign
  • Spike-lösningar kan användas för att minska antalet och intensiteten i risken för programvaruprojektet

Kodning

När designen är på plats är det dags att få alla händerna på däck och ge den ledningen för att skapa och generera kod som kommer in i produktion för testning och för leverans. Kodning kommer som scenen som demonstrerar projektmetodens faktiska funktion och uppmuntrar iteration på det mest effektiva sättet. Här är snabba regler att tänka på när du är i kodningsstadiet:

  • Kunden måste vara i slingan hela tiden vid produktlanseringar
  • Koden måste följa kodningsstandarder och praxis som antas över hela världen
  • Enhetstestet bör vara kod som start
  • Produktionskod bör genomgå parprogrammering för hög kvalitet
  • Integrera koder ofta och bör göras av ett par endast vid en viss tidpunkt
  • Ansvar bör delas och intensivt teamarbete bör främjas
  • Parprogrammering bör ske på en dator
  • Föredragna sittplatser för paret bör vara sida vid sida

Testning

Med koden klar och rullande kommer testning som en försegling för att kodlinjerna fungerar smidigt. Testa formulär som en förseglingsstämpel för att säkerställa att programvaran är klar för konsumtion. Följande är reglerna för testning inom Extreme Programming (XP):

  • En kod bör innehålla enhetstester
  • En utgåva kräver koder för att klara dessa enhetstester
  • Tester bör skapas vid upptäckt av buggar
  • Acceptantest bör ha en hög frekvens och resultaten bör publiceras
  • Användare ska inte upptäcka några fel i en kod

När ska man använda extrem programmering (XP)?

Extrem programmering föddes på grund av behovet av att arbeta runt ett projekt som medförde en hel del förändringar vid många korsningar i tid. Det blev nödvändigt att den antagna metodiken var iterativ och enkel i dess kärna. Följande är de situationer som kan begära användning av extrem programmering (XP):

  • Kunder har ingen bra idé om systemets funktionalitet
  • Förändringar är dynamiska och förväntas förändras efter korta tidsintervaller
  • Verksamheten stiger kraftigt
  • Tilldelade resurser är ett minimum. ingen enorm personal
  • Behöver en betydande produktivitetsökning
  • Risken behöver höga nivåer av minskning
  • Höga bestämmelser för testning

Så här är extrem programmering (XP) för dig i korta och enkla ord. Denna metod har rapporterat framgång i alla mjukvaruutvecklingsföretag och har haft en stor framgångsgrad under hela dess implementeringshistorik. Född från normala och förenklade krav, får extrem programmering (XP) nu långsamt erkännande som en metod att räkna med.

Om du gillar konceptet Extreme Programming (XP), ge denna artikel tummen upp. Om du älskade det, se till att du delar och kommenterar dina åsikter.