Agilní programování

Agilní proces hraje důležitou roli v cyklu vývoje a správy softwaru. Agile má řadu zásad, které se přímo zaměřují na hodnotu pro zákazníka, iterativní a inkrementální doručení. Agilní metody se zaměřují na dva různé aspekty, jedním z nich jsou agilní praktiky, které jsou extrémní programování a párové programování, jiné se zaměřují na řízení projektů, které procházejí přístupem scrum. Agilní proces se používá, když má společnost nebo organizace jasno ohledně svého cíle, ale cesta k řešení je nejasná, používá se agilní řízení procesů.

Agilní extrémní programování je považováno za nejlepší postup, jak využít výhod programovacího cyklu. Extrémní programování vzniklo poté, co problémy vyvstaly v tradičním cyklu vývoje softwaru. Její zavedení bylo provedeno pouze proto, aby se zaměřilo na „prostě vykonanou práci“ a pro vývoj bylo shledáno účinným. extrémní programování je osvědčené agilní vývojové praxe; klade maximální důraz na interakci se zákazníkem, aby přesně poznal přesný požadavek a teprve pak se dostal do vývoje produktu.

Fungování agilního programování

Rozděluje zpracování celého cyklu na menší nebo krátké cykly. Během fáze vývoje, nebo můžeme říci, fáze před dodáním (může být také poslední fáze), může zákazník provést změny na základě jeho požadavku. Funguje to v pěti fázích -

  • Průzkum - Extrémní programování zahajuje cyklus vývoje produktu shromažďováním požadavků od uživatele. Uživatel označí své nápady nebo požadavky na kartě příběhu, které chce vidět v době vydání. Sloty na příběhové karty definují atribut, který se má přidat do produktu. Ve stejné fázi týmový záznam o praxi, nástrojích a technologiích potřebných pro vývoj produktu na základě požadavku uživatele. Technologie potřebná pro vytvoření nového produktu se otestuje a nové možnosti se prozkoumají vytvořením prototypu systému. Dokončení fáze průzkumu může trvat jeden týden nebo několik měsíců, zcela záleží na tom, jak je programátor obeznámen s technologií.
  • Plánování - Shromážděná data jsou poté rozdělena do malých cyklů, aby pochopila každý kousek požadavku uživatele. Data jsou upřednostňována pro první vydání produktu a poté probíhá vývoj. Odhad a harmonogram úsilí pro první vydání se vypočítají a poté se dohodnou na vydání. První rozpětí vydání je kratší než dva měsíce.
  • Iterace - Během této fáze probíhá několik iterací systémů před prvním vydáním produktu. Iterace jsou rozděleny do několika malých iterací a implementovány do dvou až čtyř týdnů. Nyní je aktivní fáze plánování iterace, což znamená, že je rozhodnuto o rozdělení cyklu, požadavku priority a počtu pracovních sil potřebných pro vývoj. Iterace vytvářejí obrys systému, pak je systém dosažen výběrem karet z příběhových karet vytvořených uživatelem. Rozhodnutí je na uživateli, pro kterého má být vybrán jako první. Zákazník provádí iteraci na konci každého slotu, který se rozhodl pro každou iterační část.
  • Výroba - Tato fáze je považována za důležitou, protože závěrečné testování se provádí v této fázi před dodáním produktu zákazníkovi, výkon se testuje. Během této doby budou pravděpodobně nalezeny nové změny, které musí být v produktu před prvním vydáním produktu správné. Tým je připraven přijmout změny v kterékoli fázi vývoje, protože během jakékoli fáze se mohou objevit nové požadavky. Pro opravy je třeba iterační čas zkrátit ze tří na jeden týden. Další nápady a návrhy jsou uloženy pro pozdější implementaci. Produkce pokračuje po prvním vydání produktu pro stejný produkt nebo pro nový iterace. Během této fáze je tým údržby požádán o opravu vad, což je provedeno po prvním uvolnění produktu. Komunikace se zákazníkem lze také vyžádat prostřednictvím zákaznické podpory. Přidání nových členů týmu a změna v týmu, struktura může být vyžadována během údržby.
  • Fáze smrti - to je fáze, kdy se zákazník dohodne na žádné další příběhové kartě k implementaci. Toto je fáze, ve které lze provést konečnou dokumentaci týkající se produktu, domníváme se, že nedojde k žádným dalším změnám v architektuře, designu nebo kódu. Je to zajistit, aby produkt dodal požadovaný produkt, jinak bude systém považován za smrt. Měla by udržovat výdaje v limitu pro další rozvoj.

Tým (role a odpovědnost)

Agilní cykly mají několik členů (tým) pro vytvoření nového produktu. Každý úkol je rozdělen mezi tým a sestavený po tom všem, co se povedlo dobře.

  • Programátor - Programátor je jedním z hlavních orgánů, vytváří kód produktu a udržuje jednoduchý a jednoznačný kód. Nejlepší způsob, jak správně kódovat, je komunikovat s ostatními programátory a spoluhráči. Může to být pro poznání přesných požadavků na produkt.
  • Zákazník - Zákazník je hlavním orgánem pro psaní příběhových karet pro jeho požadavky a rozhoduje, který požadavek uspokojí jeho potřeby. Prioritu implementace určuje zákazník.
  • Tester - Tester je zodpovědný za provádění funkčních testů, pomáhá zákazníkovi psát funkční testy. Testování probíhá průběžně (pravidelně) a testovací nástroje jsou udržovány.
  • Tracker - Tracker poskytuje zpětnou vazbu a sleduje odhady provedené týmem a také poskytuje návrhy na zlepšení.
  • Coach - Coach je průvodcem členů týmu během procesu vývoje. Je to zkušený člověk, který se zpracovává již mnoho let.
  • Konzultant - Konzultant je externí člen, který vede tým se specifickými technickými znalostmi, které mohou být potřebné pro vývoj projektu.
  • Manažer - je rozhodujícím orgánem. Manažer udržuje tým na dobré cestě k dokončení práce. Je otevřený komunikaci s členy týmu o otázkách, kterým se tým během vývoje potýká. Zajišťuje hladký průběh práce, dokud není projekt dodán.

Doporučené články

Toto byl průvodce agilním programováním. Zde diskutujeme fungování a týmovou roli a zodpovědnost agilního programování. Další informace naleznete také v následujících článcích -

  1. Co je agilní vývoj softwaru?
  2. Je programovací jazyk MySQL?
  3. Co je agilní a Scrum?
  4. Co je programovací jazyk Kotlin?

Kategorie: