Activitate de programare extremă și artefacte

În acest capitol vom înțelege activitatea extremă de programare și artefacte.

XP - Clase

În programarea extremă, cele patru activități principale -

  • de codificare
  • testarea
  • audiție
  • desen

de codificare

În programarea pereche, codificarea este considerată inima dezvoltării. Codificați pentru că, dacă nu faceți acest lucru, la sfârșitul zilei nu ați făcut nimic.

testarea

În programarea asociată, trebuie efectuate teste pentru a se asigura că este efectuată codificarea. Dacă nu aveți experiență, nu știți când ați terminat de codat.

audiție

În programarea asociată, ascultați să știți ce este codul sau ce să verificați. Dacă nu ascultați, nu știți ce este codul sau ce să verificați.

desen

În pereche de programare, să proiectați, astfel încât să puteți păstra de codificare și testare, precum și pentru a asculta la infinit, pentru că un design bun vă permite să se extindă sistemul, cu modificări doar într-un singur loc.

Aceste acțiuni sunt efectuate în timpul -

  • Planificarea lansării
  • Planificarea iterării
  • punerea în aplicare

Planificarea lansării

Când planificăm lansarea, atât clientul, cât și dezvoltatorii vin împreună la plan în pregătirea pentru următoarea versiune, fiind de acord cu povestirile utilizatorilor pentru lansare și cu următoarea dată de lansare.

Planificarea lansării constă în trei etape -

  • Studiu de fază
  • Faza de obligații
  • Faza de control al direcției

Planificarea lansării - Studiu de fază

În prima etapă a explorării -

  • Clientul oferă o listă scurtă de cerințe cu o valoare adăugată ridicată pentru sistem.
  • Dezvoltatorii colectează cerințele și evaluează impactul fiecăreia dintre aceste cerințe.

Cerințele sunt înregistrate în istoricul utilizatorilor cărților. Pentru a scrie o poveste, clientul va veni cu o problemă în timpul unei întâlniri cu dezvoltatorii. Dezvoltatorii vor încerca să identifice această problemă și să obțină cerințe. Pe baza acestei discuții, povestea va fi scrisă de către client, indicând faptul că vor să facă o piesă a sistemului. Este important ca dezvoltatorii să nu aibă nicio influență asupra acestei povestiri.

Ascultarea activă este importantă în această fază și

Dezvoltatorii ar trebui să înțeleagă "ce solicită clientul" și "Care sunt cerințele de valoare ridicată".

Clientul trebuie să înțeleagă, împreună cu dezvoltatorii, care scenarii contribuie la aceste valori pentru a scrie o poveste.

Deși clientul scrie cerințele pentru istoricul cardului utilizatorului, trebuie să ascultați

  • Obțineți claritate
  • Evitați ambiguitatea
  • Exprimați-vă dacă există posibile lacune în înțelegere

Acest lucru este posibil numai cu comunicarea verbală.

Planificarea lansării - faza de angajament

În prima etapă, decizia finală, clientul și dezvoltatorii își iau obligațiile de funcționalitate, care vor include datele următoarei versiuni.

Această etapă implică determinarea costurilor, beneficiilor și impactului calendarului. În această etapă,

  • Clientul sortează povestirile utilizatorilor din valoarea afacerii.
  • Dezvoltatorii sortează povestirile de risc.
  • Dezvoltatorii determină efortul și durata (evaluarea) necesare pentru punerea în aplicare a poveștilor.
  • Vor fi selectate poveștile de utilizator care vor fi completate în următoarea versiune.
  • Bazându-se pe povestirile și evaluările utilizatorilor, data de lansare este determinată.

Ascultarea activă este importantă în această fază și -

Dezvoltatorii trebuie să înțeleagă ce funcționalitate au nevoie pentru a codifica versiunea curentă și efortul și durata (estimate) necesare pentru a furniza această funcționalitate.

Clientul și dezvoltatorii ar trebui să înțeleagă oportunitățile pentru obligații de la data următoarei emiteri.

Planificarea producției - faza de coordonare

În faza Guiding, clientul și dezvoltatorii "direcționează" -

  • Pentru a face schimbări în povestile individuale ale utilizatorilor și în prioritățile relative ale diferitelor povestiri ale utilizatorilor.
  • Pentru a ajusta planul.
  • Dacă estimările s-au dovedit a fi eronate.
  • Pentru a ține cont de modificări.

Ascultarea activă este importantă în această fază,

  • Pentru a înțelege -
    • Trebuie adăugate noi cerințe.
    • Ce schimbări trebuie să se facă pentru cerințele existente.
    • Impact asupra sistemului existent dacă oricare dintre cerințele existente este eliminată.
  • Sosirea în evaluările necesare pentru ajustarea planului, luând în considerare
    • Munca făcută până acum.
    • Trebuie adăugate noi cerințe.
    • Cerințe existente care trebuie modificate sau șterse.

Planificarea iterării

În planificarea iterativă, dezvoltatorii participă la planificarea activităților și a sarcinilor la repetare. În acest caz, clientul nu participă.

Planificarea planificării constă în trei etape -

  • Studiu de fază.
  • Faza de angajament.
  • Controlul fazei de comandă.

Planificarea planificării - studiu de fază

În prima etapă de explorare,

  • Cerințele vor fi transpuse în diferite sarcini.
  • Sarcinile sunt înregistrate pe hărți țintă.
  • Dezvoltatorii evaluează timpul necesar pentru a finaliza fiecare activitate.
  • Dacă dezvoltatorii nu pot evalua sarcina, deoarece sunt prea mici sau prea mari, ar trebui să fuzioneze sau să împartă sarcina.

Planificarea iterării - faza de angajament

În prima etapă, decizia finală,

Sarcinile sunt alocate dezvoltatorilor.

Dezvoltatorul își asumă sarcini pentru care își asumă responsabilitatea.

Dezvoltatorul evaluează timpul necesar pentru îndeplinirea sarcinii, deoarece dezvoltatorul este acum responsabil pentru sarcini și el sau ea trebuie să ofere o evaluare finală a performanței acestei sarcini.

Echilibrarea încărcării se realizează după ce tuturor dezvoltatorilor din cadrul echipei i-au fost atribuite sarcini.

Se face o comparație între timpul așteptat al sarcinilor și factorul de încărcare.

Factorul de încărcare reprezintă timpul ideal de dezvoltare pentru fiecare dezvoltator în timpul unei iterații, care implică o săptămână de lucru de 40 de ore.

Apoi sarcinile sunt aliniate dezvoltatorilor. În cazul în care dezvoltatorul este supraîncărcat, alți dezvoltatori trebuie să-și asume unele dintre sarcinile sale și invers.

Planificarea iterării - faza de coordonare

În faza de coordonare,

  • Dezvoltatorul primește un card țintă pentru una dintre sarcinile pe care le-a efectuat.
  • Dezvoltatorul va îndeplini această sarcină împreună cu un alt dezvoltator, în conformitate cu practica de programare a perechii.

punerea în aplicare

Implementarea sarcinilor se face. Implementarea include proiectarea, scris teste de unitate, de codificare, unitate de testare, Refactorizare bază continuă cod de integrare, testarea de integrare și testarea pe baza de carduri de sarcini și poveste carte personalizate.

Programarea artefactelor extreme

Programarea extremă nu este anti-documentație, dar recomandă să faci cea mai mică sumă necesară. În acest document, atunci când este necesar pentru un schimb distribuit, nevoi istorice, însumare etc.

Essential Artefacte de programare extremă -

  • Istoric particularizat al hărților
  • Teste de acceptare
  • evaluare
  • planul de eliberare
  • planul de iterație
  • hărți de sarcini
  • desen
  • Unitatea de testare
  • Înregistrări de comunicații client-dezvoltator

Istoric utilizator al hărții

Hărțile istoricului utilizatorilor au următoarele caracteristici -

  • Istoricul hărților de utilizare -
    • Conține o scurtă descriere a comportamentului sistemului din punctul de vedere al clientului.
    • Ar trebui să fie scrise de către client, nu de dezvoltatorii înșiși.
    • Utilizează terminologia clientului fără jargon tehnic.
    • Dacă oferiți doar detalii suficiente pentru a face o estimare a duratei de timp a acestei povestiri pentru implementare.
  • Unul pentru fiecare funcție principală din sistem.
  • Folosit pentru a crea o estimare de timp pentru planificarea producției.
  • Efectuați teste de acceptare.

teste de acceptare

Testele de acceptare ar trebui să fie unul sau mai multe teste pentru a vă asigura că povestea a fost implementată corect.

Estimări - Planificarea lansării

Efortul și durata evaluării poveștilor care vor fi folosite în planificarea lansării -

  • Sosirea la data vizată de eliberare în etapa de explorare.
  • corectarea planului în faza de direcție.

Planul de eliberare

Planul de eliberare conține -

  • Utilizatorul a ales poveștile pentru lansare.
  • Efortul și durata evaluării.
  • Adresa țintă de ieșire, care este angajată.

hărți de sarcini

  • Conține sarcinile necesare pentru implementarea istoricului utilizatorilor.
  • Un card de sarcini în istoricul utilizatorilor.
  • Formele reprezintă baza pentru evaluarea sarcinilor și atribuirea sarcinilor.

Estimări - repetarea planificării

Forța și durata evaluării pe baza de povestiri sarcini de estimat a fi utilizate în planificarea iteratie pentru atribuirea de sarcini și de echilibrare a sarcinilor în faza de angajament.

Plan de planificare

Planul conține iertare -

  • Povestiri personalizate selectate pentru iterare
  • Atribuirea sarcinilor
  • evaluarea

Designul conține o construcție simplă, suficientă pentru a pune în aplicare o istorie personalizată.

Unități de testare a unității

Acest document conține cazuri de testare care controlează blocul de testare de codare și blocul.

Rapoarte de clienți și dezvoltatori

Clientul și dezvoltatorii discută despre poveste în detaliu pentru a trata detaliile. Este verbal atunci când este posibil, dar documentat dacă este necesar.