Extrémne programovanie (XP) -

Koncom 20. rokov 20. storočia sa vývoj softvéru a koncepcia programovania výrazne zmenili v spôsobe a prístupe celej schémy. Štíhlejšie a paketovo veľké prístupy, ktoré sme na vzostupe, sa použili jasné zjednotené modely s cieľom dosiahnuť zmenu v spôsobe vývoja počítačového softvéru. Odpady sa museli znižovať so zvyšujúcim sa dopytom po účinných systémoch, a tým sa zvýšila éra metodológií pre efektívny vývoj softvéru. Procedurálne programovanie bolo čoskoro nahradené objektovo orientovaným programovaním a vodopádový model umožnil Agile prevziať vedenie. Japonské rámce na kontrolu kvality čoskoro naberali na sile a potom sa objavil koncept niečoho, čo sa predtým používalo v bitoch a kusoch, ale ktoré bolo teraz plnohodnotnou metodológiou riešenia problémov so softwarovým programovaním a vývojom, Extreme Programming!

Čo je extrémne programovanie (XP)?

Extrémne programovanie (XP) prišlo so značným počtom zmien, ktoré sa odohrali na denné svetlo klientov, ako úľava pri organizovaní projektov softvérových odborníkov.

Implementácia extrémneho programovania zvýšila kvalitu softvéru a účinnejšie reagovala na meniace sa požiadavky podnikania, ktoré spôsobila škálovanie podnikov alebo vonkajšie faktory.

XP je metodika pod záštitou Agile, ktorá podporuje časté vydávanie verzií v krátkych vývojových cykloch. To by nevyhnutne do značnej miery zvýšilo produktivitu a časté uvoľňovanie by vydláždilo cestu pre začlenenie novších požiadaviek.

Program Extreme Programming (XP) má v jadre svojho rámca „spokojnosť zákazníka“ a „tímová práca“ ako sila svalov. Spolupráca je nevyhnutnou podmienkou úspechu extrémneho programovania (XP), pretože podniká iteratívne kroky smerom k výrobe softvéru pre klientov / zákazníkov. Nie je zameraný na dodanie celého pásu, ale skúma, či sú potreby klienta splnené v každej fáze cesty.

Súčasť agilného vývoja softvéru

Agilný vývoj softvéru je spôsob, akým sa vývoj uskutočňuje, ale čo je najdôležitejšie, to, čo väčšina ľudí zabudne uznať, je, že tímy, to znamená ľudia, musia byť agilné, aby boli úspešné. Implementácia metód a procesov zaisťuje iba to, že existuje pevný rámec, v ktorom môžu byť tímy flexibilné, škálovateľné a definitívnejšie kreatívne.

S konceptmi iterácie a sprinty, ako v prípade Scrumu, Agile poskytuje skvelú platformu na uskutočnenie zmien a spätnej väzby implementovaných v každom vývojovom cykle, ktorý prechádza okolo.

Pokiaľ ide o programovanie Extreme Programming (XP), berie do úvahy všetky príležitosti, ktoré môžu nakoniec viesť k zlepšeniam produktu.

Tradičný rozvoj verzus extrémne programovanie (XP)

  • Aj keď tradičný vývoj upriamuje pozornosť na tento proces a zohľadňuje ho pri dokončení cyklu, extrémne programovanie sa zameriava na požiadavku.
  • Program Extreme Programming (XP) preberá osvedčené postupy inštalované v tradičnom vývoji a presahuje extrémne limity. Natiahnutie vykonávané pomocou extrémneho programovania (XP) je vynikajúce pre flexibilné a elastické projekty.
  • Tradičný vývoj má segmentáciu ako predchádzajúci faktor v cykloch vývoja softvéru, zatiaľ čo extrémne programovanie (XP) obhajuje spoluprácu medzi tímami a tiež zúčastnenými stranami kvôli ich neustálej spätnej väzbe a názorom počas iterácií a plánovacích fáz.

5 Hodnoty pre úspešný projekt

Extrémne programovanie (XP) zahŕňa 5 základných spôsobov alebo hodnôt smerujúcich k úspešnému softvérovému projektu:

  1. Komunikácia - Táto metodika vývoja softvéru v zásade vyžaduje úzko prepojenú komunikáciu medzi manažérmi, klientmi / zákazníkmi a vývojármi. Táto efektívna komunikácia je potrebná na hladké fungovanie softvérového projektu a ďalšie nástroje riadenia projektov sa implementujú aj v rámci komunikácie, aby mohli ďalej uľahčovať komunikáciu počas životného cyklu projektu.
  2. Odvaha - S dramatickými zmenami v požiadavkách zákazníka je na vývojových pracovníkoch, aby odvážne podnikli výzvy, ktoré sa objavia na poslednú chvíľu, alebo protichodné zmeny aplikované na projekt kedykoľvek.
  3. Spätná väzba - Spätná väzba je implementovaná prostredníctvom neustáleho testovania jednotiek a výsledky sú vyhodnotené a podľa toho implementované v cykloch vývoja projektu. Zákazníci sú držaní v tesnej blízkosti a demo je prezentované hneď po dokončení vývojového cyklu, aby bolo možné zahrnúť spätnú väzbu.
  4. Rešpekt - Každý vývojový cyklus so svojim úspechom prináša nový míľnik a len ilustruje príspevky vložené do uskutočnených cyklov.
  5. Jednoduchosť - extrémne programovanie (XP) je najúčinnejšie, ak je návrh jednoduchý a implementácia sa plánuje jasným a efektívnym spôsobom. Mnoho extrémnych programov sa riadi jednoduchými pravidlami, ktoré má zavedené.

Cykly plánovania a spätnej väzby

Spolupráca v tíme a denné spojenie s podnikmi na optimalizovaný vývoj produktov tvoria chrbticu extrémneho programovania (XP), zatiaľ čo príbehy používateľov tvoria základ plánovania XP. Tieto príbehy používateľov sa zapisujú na karty. Manipulácia s týmito kartami môže oživiť rozsah a plán projektu.

Tieto plánovanie XP sú vytvorené s tromi úrovňami alebo úrovňami.

  • Budúce mesiace
  • Ďalšia iterácia
  • Aktuálna iterácia

Plány sú vždy dočasné a plány treba obnoviť pred koncom posledného plánu. Menia sa, keď dôjde k malej zmene v projekte alebo jeho rozvrhu. Iterácia sa začína v okamihu, keď dôjde k zmene. Získate spätnú väzbu od zákazníka, prehodnotíte svoj plán. Stojíte pred alebo za plánom, prehodnocujete a meníte svoj plán.

Prostredníctvom plánovania nadobúda účinnosť najvhodnejšie vzory pre dodávaný produkt. Pokiaľ ide o extrémne programovanie (XP), na efektívne a efektívne navrhovanie sa používajú vývojom riadené testy (TDD) a refaktoring.

Refactoring, ktorý už má podstatu agilnosti, je dôležitým a rozhodujúcim nástrojom navrhovania zapojeným do procesu plánovania. Refaktoring zahŕňa zmeny dizajnu a úpravy v súlade s potrebami, ktoré boli zmenené. Pri refaktoringu prichádza koncept testovania jednotným a prijateľným spôsobom.

Nasledujúce kroky sa dostanú do centra pozornosti, keď sa vykoná slučka plánovania alebo spätnej väzby. Každá akcia je iteratívna a môže sa vykonať postupne, keď sa iniciuje zmena:

Každý krok v uskutočnenej sekvencii môže mať iteračný charakter a môže sa opakovať pri iniciovaní zmeny sekvencie a pre každú iniciáciu sa vytvorí nový plán. Každý krok má tiež pridelené konkrétne trvanie a je zostavený časový plán pre zvyšok spätnej väzby pre každú fázu produktu.

  • Programovanie pre párovanie - sekundy
  • Párové programovanie na testovanie jednotky - minúty
  • Testovanie jednotiek na párové rokovania - hodiny
  • Párové vyjednávanie na pohotovostnom stretnutí - jeden deň
  • Pohotovostné stretnutie na akceptačné testovanie - dni
  • Akceptačné testovanie na plánovanie iterácie - týždne
  • Plánovanie iterácie na plánovanie prepustenia - mesiace

S požadovanou úrovňou iterácie sa pre vývojárov stáva povinnosťou zabezpečiť a zabezpečiť, aby bol kód dobre triedený a mal optimálnu kvalitu. Nahlasovanie chýb je pre vývojárov prísnym zákazom, ktorý dodržiava extrémnu metodológiu programovania pri vývoji softvéru.

Čo je to párové programovanie?

Pretože ústredným zdrojom extrémnej metodológie programovania sú ľudia a nie procesy, sú to ľudia, ktorí vedú koncepciu párového programovania. Ak pridáte do tabuľky produktivitu a kvalitu, párové programovanie ide takto:

„Kód odoslaný do výroby tvoria dvaja ľudia, ktorí spolu pracujú na vytvorenom kóde, zatiaľ čo sedí na jednom počítači.“

Výhody tohto konceptu programovania párov sú nasledujúce:

  • Vylepšená kvalita softvéru - zatiaľ čo nedochádza k ďalšiemu zvýšeniu funkčnosti, keď dvaja ľudia sedia spolu alebo od seba, koncentrácia na jednom počítači určite zvyšuje kvalitu vykresleného kódu.
  • Žiadny vplyv na čas dodania - poskytnutie prospešnej situácie pre projekt a jeho zúčastnené strany, použitie dvoch funkčných hláv na získanie vysoko kvalitného kódu bez straty času je pre vývoj softvéru skvelé
  • Úspora nákladov pre neskoršie fázy - s už poskytnutým kódom vysokej kvality je dosah na neskoršie fázy obrovský a náklady sa s každou iteráciou, ktorá sa uskutoční, určite ušetria.

Párové programovanie, pretože zahŕňa dvoch výrazných jednotlivcov pracujúcich spolu pri rovnakých tabuľkách, je nevyhnutné, aby sa koordinovali na vyššej úrovni bez ohľadu na úroveň skúseností. Je to sociálna zručnosť, ktorá si vyžaduje čas na učenie sa a potrebuje dvoch špecializovaných odborníkov, ktorí chcú zmeniť svet vývoja softvéru.

Párové programovanie vždy prebieha rozsiahlou a nepretržitou integráciou novej zabudovanej funkcionality a cyklus pokračuje.

pravidlá

Aj keď vieme, že pravidlá uvádzané do praxe vo svete extrémneho programovania (XP) sú založené na zásade a hodnote jednoduchosti, je nevyhnutné mať dobrý prehľad o týchto pravidlách, ktoré tvoria veľkú metodológiu v rámci techník vývoja softvéru.

plánovanie

V rámci plánovania projektový manažér a jeho tím dôkladne preskúmajú požiadavky a dodržiavajú nasledujúce pravidlá:

  • Príbehy používateľov je potrebné zapisovať
  • Plánovanie vydania by malo vyústiť do harmonogramu vydania
  • Projekt je rozdelený do iterácií
  • Vydania musia byť časté, ale malé
  • Iteračné plánovanie by malo začať iteráciu

správa

Riadenie pridelených úloh a trvanie každej zvláštnej úlohy je úlohou projektového manažéra. Je dôležité, aby si projektový manažér uvedomoval riziká a dodržiavanie každej fázy, ktorú vykonávajú členovia tímu, a podľa toho nasmeroval pracovnú silu a zdroje, aby splnil koncepciu extrémneho programovania (XP). Tu sú niektoré z pravidiel, ktoré musia prejsť PM:

  • Tím by mal dostať otvorený pracovný priestor, aby rozšíril svoju fantáziu
  • Pridelený harmonogram by mal byť realistický a starostlivo nastavený
  • Každý pracovný deň by sa mal začať samostatnou schôdzou
  • Spolupráca a tímová práca sú hlavnými prvkami a je potrebné ich čo najviac podporovať
  • Rýchlosť projektu by sa mala merať počas každého začlenenia zmien
  • Ľudia by nikdy nemali byť stagnovaní a mali by sa pohybovať
  • Programovanie extrémneho riadenia (XP) je nevyhnutné a plánovanie by sa malo začať pri každej príležitosti zmeny

Projektovanie

Navrhovanie je fáza, ktorá starostlivo sleduje plánovanie a určuje spôsob, akým sa požiadavky riešia v počiatočnej fáze projektu. Dobrý dizajn odráža myšlienkový proces a kreativitu a vyžaduje si menší počet iterácií, čím sa zabezpečí vysoká úroveň kvality na samom začiatku projektu. Ako odraz etapy plánovania je potrebné pamätať na niekoľko pravidiel pri implementácii návrhov v extrémnom programovaní (XP):

  • Jednoduchosť je kľúčová
  • V počiatočnom štádiu by sa nemala zaviesť žiadna funkčnosť
  • Refaktoring je nevyhnutný v každej fáze, aby sa zabezpečil efektívny a efektívny dizajn výrobkov
  • Riešenia Spike možno použiť na zníženie počtu a intenzity rizika v softvérovom projekte

kódovanie

Akonáhle je návrh na svojom mieste, je čas dostať všetky ruky na palubu a dať to vpred na vytváranie a generovanie kódu, ktorý vstúpi do výroby na testovanie a dodanie. Kódovanie prichádza ako fáza, ktorá demonštruje skutočné fungovanie metodológie projektu a čo najúčinnejšie podporuje iteráciu. V štádiu kódovania je potrebné pamätať na rýchle pravidlá:

  • Počas vydania produktu musí byť zákazník neustále v slučke
  • Kódex musí dodržiavať normy a postupy kódovania prijaté na celom svete
  • Jednotková skúška by mala byť kódom ako začiatok
  • Výrobný kód by mal podliehať programovaniu párov kvôli vysokej kvalite
  • Integrujte kódy často a mal by ich vykonať iba jeden pár v určitom čase
  • Mala by sa zdieľať zodpovednosť a mala by sa podporovať intenzívna tímová práca
  • Párové programovanie by sa malo uskutočňovať na jednom počítači
  • Prednostné sedenie by malo byť vedľa seba

testovanie

Keď je kód pripravený a rozbehnutý, testovanie prichádza ako pečať hladkého fungovania kódových riadkov. Testovanie formulárov ako pečiatky, aby sa zabezpečilo, že softvér je pripravený na spotrebu. Nasledujú pravidlá zavedené na testovanie v rámci programu Extreme Programming (XP):

  • Kód by mal obsahovať jednotkové testy
  • Uvoľnenie by vyžadovalo kódy, aby prešli týmito jednotkovými testami
  • Testy by sa mali vykonávať pri zisťovaní chýb
  • Akceptačné testy by mali mať vysokú frekvenciu a výsledky by sa mali zverejňovať
  • Používatelia by nemali zisťovať žiadne chyby v kóde

Kedy použiť extrémne programovanie (XP)?

Programovanie extrémov sa zrodilo z dôvodu potreby obísť projekt, ktorý so sebou niesol veľa zmien v mnohých časových okamihoch. Bolo nevyhnutné, aby prijatá metodika bola vo svojej podstate iteračná a jednoduchá. Nasledujú situácie, ktoré môžu vyžadovať použitie extrémneho programovania (XP):

  • Zákazníci nemajú dobrý prehľad o funkčnosti systému
  • Zmeny sú dynamické a očakáva sa, že sa zmenia po krátkych časových intervaloch
  • Obchod prudko rastie
  • Pridelené zdroje sú čisté; žiadny obrovský personál
  • Potrebujete značné zvýšenie produktivity
  • Riziko si vyžaduje vysokú mieru zmiernenia
  • Vysoké požiadavky na testovanie

Toto je extrémne programovanie (XP) pre vás stručne a jednoduchými slovami. Táto metodika zaznamenala úspech vo všetkých podnikoch zameraných na vývoj softvéru a zaznamenala veľkú úspešnosť počas celej histórie vykonávania. Extrémne programovanie (XP), ktoré sa rodí z bežných a zjednodušujúcich požiadaviek, sa v súčasnosti pomaly uznáva ako metodika, s ktorou sa počíta.

Ak máte radi koncept Extreme Programming (XP), dajte tomuto článku palec hore. Ak sa vám to páčilo, nezabudnite zdieľať a komentovať svoje názory.

Kategórie: