Programare extremă (XP) -

Plasate la sfârșitul anilor 1900, dezvoltarea de software și conceptele de programare au înregistrat o schimbare considerabilă a modului și abordării întregii scheme. Abordări înclinate și de dimensiuni de pachete, noi în creștere și modele clare unitate au fost aplicate pentru a aduce schimbări în modul în care a fost dezvoltat software-ul computerului. Deșeurile trebuiau reduse odată cu creșterea cererii pentru sisteme eficiente și, astfel, a ajuns să crească epoca metodologiilor de dezvoltare software eficientă. Programarea procedurală a fost curând înlocuită de programarea orientată pe obiecte, iar modelul cascadei a făcut loc Agile să preia conducerea. Cadrele japoneze de control al calității au câștigat în curând avânt și apoi a apărut conceptul de ceva care a fost folosit anterior în biți și bucăți, dar care acum era o metodologie completă pentru rezolvarea problemelor de programare și dezvoltare software, Extreme Programming!

Ce este programarea extremă (XP)?

Având un număr considerabil de schimbări, văzând lumina zilei din partea clienților, Extreme Programming (XP) a venit ca o ușurare pentru organizarea de proiecte întreprinse de specialiști în software.

Punerea în aplicare a programării extreme a îmbunătățit calitatea software-ului și a răspuns mai eficient la cerințele în schimbare ale afacerii, cauzate de scalarea întreprinderilor sau a factorilor externi.

XP este o metodologie, sub umbrela Agile, care încurajează lansările frecvente ale versiunii în cicluri de dezvoltare scurte. Aceasta inevitabil ar crește productivitatea într-o mare măsură, iar lansările frecvente ar deschide calea pentru încorporarea de cerințe mai noi.

Programarea extremă (XP) are „satisfacția clienților” în centrul cadrului său și „munca în echipă” ca putere musculară. Colaborarea este o necesitate pentru ca programarea extremă (XP) să aibă succes, deoarece face pași iterativi spre producerea de software pentru clienți / clienți. Nu este axat pe livrarea întregii curele, ci analizează dacă nevoile clientului sunt îndeplinite la fiecare etapă de-a lungul drumului.

Parte a dezvoltării de software Agile

Dezvoltarea de software agil este modul în care se desfășoară dezvoltarea, dar cel mai important, ceea ce majoritatea oamenilor uită să recunoască este faptul că echipele, adică oamenii, trebuie să fie agili pentru a avea succes. Implementarea metodelor și proceselor asigură doar existența unui cadru fix în care echipele să poată fi flexibile, scalabile și mai creativ creative.

Cu conceptele de iterație și sprinturi, ca în cazul Scrum, Agile oferă o platformă excelentă pentru a obține modificările și feedback-ul implementat în fiecare ciclu de dezvoltare care trece.

Când vine vorba de Extreme Programming (XP), are în vedere toate oportunitățile care pot avea ca rezultat îmbunătățiri ale produsului la final.

Dezvoltare tradițională versus programare extremă (XP)

  • În timp ce dezvoltarea tradițională se concentrează pe proces și ia în considerare atunci când vine vorba de finalizarea ciclului, programarea extremă se concentrează pe cerință.
  • Extreme Programming (XP) ia cele mai bune practici instalate în dezvoltarea tradițională și o duce la limitele extreme. Întinderea efectuată cu programare extremă (XP) este excelentă pentru proiecte flexibile și elastice.
  • Dezvoltarea tradițională are segmentarea ca factor precedent în ciclurile de dezvoltare a software-ului, în timp ce programarea extremă (XP) pledează pentru colaborarea dintre echipe și, de asemenea, părțile interesate pentru feedback-ul constant și opiniile lor în timpul etapelor de planificare și planificare.

5 Valori pentru un proiect de succes

Programarea extremă (XP) implică cele 5 moduri sau valori esențiale de orientare către un proiect software de succes:

  1. Comunicare - Această metodologie de dezvoltare a software-ului necesită, în esență, o comunicare strânsă între manageri, clienți / clienți și dezvoltatori. Această comunicare eficientă este necesară pentru buna funcționare a proiectului software și alte instrumente de gestionare a proiectelor sunt, de asemenea, implementate în cadrul comunicării, astfel încât acestea să poată facilita comunicarea în timpul ciclului de viață al proiectului.
  2. Curaj - Cu schimbări dramatice ale cerințelor clienților, revine dezvoltatorilor să acționeze cu curaj provocările care se confruntă în ultima clipă sau să contrazică modificările aplicate proiectului în orice moment.
  3. Feedback - Feedback -ul este implementat prin testarea constantă a unităților, iar rezultatele sunt evaluate și în consecință implementate în ciclurile de dezvoltare a proiectului Clienții sunt păstrați la sferturi apropiate și o demo este prezentată imediat ce un ciclu de dezvoltare este finalizat, astfel încât feedback-ul să poată fi încorporat.
  4. Respect - Fiecare ciclu de dezvoltare aduce cu succes succesul unei noi repere și nu face decât să exemplifice contribuțiile aduse ciclurilor întreprinse.
  5. Simplitate - programarea extremă (XP) este cea mai eficientă atunci când designul este păstrat simplu, iar implementarea este planificată într-o manieră clară și eficientă. O mulțime de programări extreme se bazează pe regulile sale simple pe care le are în vigoare.

Cicluri de planificare-feedback

Colaborarea în echipă și conexiunea zilnică la business pentru dezvoltarea de produse optimizate constituie coloana vertebrală a programării extreme (XP), în timp ce poveștile utilizatorilor stau la baza planificării XP. Aceste povești ale utilizatorilor sunt notate pe cărți. Manipularea acestor cărți poate aduce viață obiectului și planului proiectului.

Aceste planificări XP sunt create cu trei niveluri sau niveluri.

  • Lunile viitoare
  • Următoarea iterație
  • Iterarea curentă

Planurile sunt întotdeauna temporare, iar recrearea planurilor trebuie făcută înainte de sfârșitul ultimului plan. Se schimbă ca și când există chiar o ușoară schimbare în proiect sau în programul său. Iterația începe în momentul în care este întâlnită o schimbare. Obțineți feedback de la client, vă revizuiți planul. Stai înainte sau după întârziere, îți revizuiești și îți schimbi planul.

Prin planificare intră în vigoare cele mai potrivite modele de livrare a produsului. În ceea ce privește programarea extremă (XP), dezvoltarea bazată pe test (TDD) și refactorizarea sunt utilizate pentru proiectarea eficientă și eficientă.

Având deja esența Agile, refactorizarea vine ca un instrument de proiectare important și crucial implicat în procesul de planificare. Refactorizarea presupune efectuarea de alternanțe și ajustări ale designului în concordanță cu nevoile care au fost modificate. Cu refactorizarea vine conceptul de testare într-o manieră unitară și acceptabilă.

Următorii pași iau rolul central atunci când este executată o buclă de planificare sau feedback. Fiecare acțiune aici este iterativă și poate fi executată succesiv odată ce o modificare este inițiată:

Fiecare etapă a secvenței care se realizează poate fi de natură iterativă și poate fi urmărită ca și când se începe secvența de schimbare și se creează un nou plan pentru fiecare inițiere. Fiecare pas are, de asemenea, o anumită durată atribuită acesteia și este prezentat un program pentru restul feedbackului pentru fiecare etapă a produsului.

  • Codare la programare în pereche - secunde
  • Programare pereche la Testing Unit - minute
  • Testarea unității la negociere în pereche - ore
  • Negocierea perechilor la întâlnirea de stand-up - într-o zi
  • Întâlnire stand-up la testarea acceptării - zile
  • Testarea acceptării la planificarea iterației - săptămâni
  • Iteration Planning to Release Release - luni

Cu nivelul de iterație căutat, devine obligatoriu pentru dezvoltatori să se asigure și să asigure bine că codul este bine sortat și are o calitate optimă. Raportarea erorilor este un no-no strict pentru dezvoltatori care urmează metodologia extremă de programare pentru dezvoltarea de software.

Ce este programarea perechilor?

Deoarece resursa centrală a metodologiei extreme de programare sunt oamenii și nu procesele, oamenii sunt cei care conduc conceptul de programare în perechi. Adăugând productivitate și calitate la masă, programarea în perechi este ceva similar:

„Codul trimis în producție este creat de două persoane care lucrează împreună la codul care urmează să fie creat, în timp ce stau pe un singur computer.”

Avantajele acestui concept al programării perechilor sunt următoarele:

  • Calitatea îmbunătățită a software-ului - în timp ce nu se adaugă funcționalitatea cu două persoane care stau împreună sau deoparte, concentrarea pe un singur computer adaugă cu siguranță calitatea codului redat
  • Fără efect asupra timpului de livrare - oferirea unei situații câștig-câștig pentru proiect și părțile interesate, folosind două capete funcționale pentru a obține un cod de înaltă calitate, fără pierderi de timp, este excelent pentru dezvoltarea de software
  • Economii de costuri pentru etapele ulterioare - cu codul de înaltă calitate deja redat, impactul pe care îl are în etapele ulterioare este uriaș, iar costurile sunt cu siguranță economisite la fiecare iterație care are loc

Programarea perechilor, deoarece implică două persoane distincte care lucrează împreună la tabele egale, devine esențial pentru ei să se coordoneze la un nivel superior, indiferent de nivelul de experiență. Este o abilitate socială care necesită timp pentru învățare și are nevoie de doi profesioniști dedicați care vor să facă diferența în lumea dezvoltării de software.

Programarea perechilor este continuată printr-o integrare extensivă și continuă a noii funcționalități încorporate, iar ciclul continuă.

reguli

Cu toate că știm că regulile puse în aplicare în lumea programării extreme (XP) se bazează pe principiul și valoarea Simplicității, este esențial să aveți o viziune bună despre aceste reguli care alcătuiesc o metodologie excelentă în cadrul tehnicilor de dezvoltare software.

Planificare

În cadrul planificării managerului de proiect și a echipei sale, analizați cu atenție cerințele și respectați următoarele reguli:

  • Poveștile utilizatorilor trebuie notate
  • Planificarea eliberării ar trebui să conducă la un program de eliberare
  • Proiectul este împărțit în iterații
  • Eliberările trebuie să frecventeze, dar mici
  • Planificarea iterației ar trebui să înceapă iterația

de conducere

Gestionarea sarcinilor alocate și durata pentru fiecare sarcină particulară este rolul managerului de proiect. Este important ca managerul de proiect să fie atent la riscurile și respectarea fiecărei etape întreprinse de membrii echipei și să conducă forța de muncă și resursele în consecință pentru a îndeplini conceptul de programare extremă (XP). Iată câteva dintre regulile care trebuie să treacă printr-un PM:

  • Echipa ar trebui să primească un spațiu de lucru deschis pentru a-și extinde imaginația
  • Programul alocat trebuie să fie realist și atent ritmat
  • Fiecare zi lucrătoare ar trebui să înceapă cu o întâlnire de stand-up
  • Colaborarea și munca în echipă sunt componente majore și au nevoie de maximă încurajare
  • Viteza proiectului trebuie măsurată în timpul încorporarii
  • Oamenii nu ar trebui niciodată menținuți stagnați și trebuie mutați
  • Programarea extremă a direcției (XP) este nesemnificativă și planificarea ar trebui inițiată la fiecare oportunitate de schimbare

proiect

Proiectarea este etapa care urmărește cu atenție planificarea și determină modul în care sunt gestionate cerințele în faza inițială a proiectului. Un design bun reflectă procesul de gândire și creativitatea și solicită un număr mai mic de iterații, asigurând astfel niveluri ridicate de calitate chiar la începutul proiectului. Fiind o reflectare a etapei de planificare, iată câteva reguli de care trebuie să ții cont în timpul implementării proiectelor în programare extremă (XP):

  • Simplitatea este cheia
  • Nicio funcționalitate nu trebuie introdusă într-o etapă timpurie
  • Refactorizarea este esențială în fiecare etapă pentru a oferi un design eficient și eficient al produsului
  • Soluțiile spike pot fi utilizate pentru a reduce numărul și intensitatea riscului pentru proiectul software

Codificare

Odată ce designul este în vigoare, este timpul să puneți toate mâinile pe punte și să oferiți acest lucru pentru crearea și generarea codului care va intra în producție pentru testare și livrare. Codificarea vine ca etapa care demonstrează funcționarea reală a metodologiei proiectului și încurajează iterarea în cel mai eficient mod. Iată reguli rapide pentru care trebuie să aveți în vedere momentul în care se află în etapa de codare:

  • Clientul trebuie să fie mereu în buclă în timpul lansărilor de produse
  • Codul trebuie să respecte standardele și practicile de codificare adoptate la nivel mondial
  • Testul unității trebuie să fie codul ca început
  • Codul de producție ar trebui să fie supus programării perechilor de înaltă calitate
  • Integrați codurile deseori și ar trebui realizate de o singură pereche doar la un moment dat
  • Responsabilitatea trebuie împărtășită și promovarea activității în echipă
  • Programarea perechilor ar trebui să aibă loc pe un computer
  • Locurile preferabile ale perechii trebuie să fie una lângă alta

Testarea

Cu codul gata și rulat, testarea vine ca un sigiliu de funcționare lină a liniilor de cod. Testarea formularelor ca sigiliu pentru a vă asigura că software-ul este gata de consum. Următoarele sunt regulile stabilite pentru testarea în cadrul programării extreme (XP):

  • Un cod trebuie să conțină teste unitare
  • O versiune ar necesita coduri pentru a trece aceste teste unitare
  • Testele ar trebui create pe detectarea erorilor
  • Testele de acceptare ar trebui să aibă o frecvență ridicată și rezultatele ar trebui publicate
  • Utilizatorii nu ar trebui să detecteze erori într-un cod

Când să folosiți programarea extremă (XP)?

Programarea extremă s-a născut datorită necesității de a lucra în jurul unui proiect care a dus cu el o mulțime de schimbări la multe intersecții în timp. A devenit necesar ca metodologia adoptată să fie iterativă și simplă la baza sa. Următoarele sunt situațiile care pot solicita utilizarea programării extreme (XP):

  • Clienții nu au o idee bună despre funcționalitatea sistemului
  • Modificările sunt dinamice și se așteaptă să se schimbe după intervale scurte de timp
  • Afacerile sunt în continuă creștere
  • Resursele alocate sunt minime minime; niciun personal uriaș
  • Aveți nevoie de o creștere considerabilă a productivității
  • Riscul are nevoie de niveluri ridicate de atenuare
  • Prevederi ridicate pentru testare

Deci, aici este o programare extremă (XP) pentru tine pe scurt și în cuvinte simple. Această metodologie a înregistrat succes în toate întreprinderile de dezvoltare software și a avut o rată de succes mare de-a lungul istoriei sale de implementare. Născută din cerințe normale și simpliste, programarea extremă (XP) acum câștigă încet recunoașterea ca metodă de luat în calcul.

Dacă vă place conceptul de programare extremă (XP), dați-vă acestui articol de mari ori. Dacă v-a plăcut, asigurați-vă că împărtășiți și comentați părerile dvs.