Úvod do agility a scrumu
Agile je metodika vývoja softvéru, ktorá má na rozdiel od tradičného projektového riadenia šírku pásma, aby sa rýchlo prispôsobila meniacim sa požiadavkám projektu a prispôsobila sa vývoju nového produktu počas prebiehajúceho projektu alebo po jeho ukončení.
Poďme pochopiť výraznú výhodu, ktorú má agilnosť oproti tradičnej metodike projektového riadenia:
Tradičný prístup:
- Podrobné plánovanie pred začiatkom
- Umožňuje prijať minimálne zmeny
- Opravená definícia projektu
Agilný prístup:
- Vyžaduje sa minimálne plánovanie pred začiatkom
- Prijme a prispôsobí sa zmenám
- Pevný čas a náklady
Scrum je najpoužívanejší a najpopulárnejší prístup k implementácii agilnej metodológie.
Čoskoro prídeme do sekcie scrum, ale najprv uvidíme viac o agilnom rámci.
Princípy agilného manifestu
- Spokojnosť zákazníkov je najvyššou prioritou, ktorá sa dosahuje neustálym a včasným dodávaním hodnotného softvéru.
- Dodajte pracovný softvér v krátkom čase s neustálym vývojom nového softvéru / produktov v súlade s rovnakým prístupom.
- Mali by sme byť schopní vyhovieť meniacim sa požiadavkám, aj keď k nim dôjde neskoro počas životného cyklu SDLC.
- Členovia tímu by mali byť motivovaní vždy a preto by sa mala poskytnúť dostatočná podpora a dobré prostredie.
- Vývojári a podnikatelia musia každý deň počas projektu spolupracovať.
- Za najúčinnejší spôsob konverzácie sa považuje osobný kontakt.
- Trvalo udržateľný rozvoj. Všetci členovia tímu by mali byť schopní udržiavať neustále tempo.
- Pracovný produkt / softvér sa považuje za primárne meradlo pokroku.
- Na konci dňa by sa hlavný dôraz mal sústrediť na technickú dokonalosť a robustný dizajn.
- Počas procesu SDLC by sa mala dodržiavať jednoduchosť
- Tímy by mali v skutočnosti predvádzať trvalú účinnosť a prijať akékoľvek zmeny na zvýšenie účinnosti.
- Robustný dizajn a architektúra pochádzajú od samoorganizujúcich sa tímov.
Prístupy pre agilnú implementáciu:
Odkaz: https://goo.gl/images/fkZqGe
- SCRUM - Jedná sa o opakujúci sa prístup, pri ktorom existuje niečo, čo sa označuje ako šprintéri a ktoré trvá jeden alebo dva týždne. Tento prístup umožňuje tímom pravidelne dodávať pracovný produkt alebo softvér.
- Kanban - Na implementáciu agilného používa tento prístup vizuálny rámec. Tu nie sú žiadne sprinty s pevnou dĺžkou a tím dostane úlohu z prioritných nevybavených úloh.
- Extrémne programovanie (XP) - Cieľom tohto prístupu je zlepšiť kvalitu a odozvu softvéru začlenením jednoduchosti, spätnej väzby a prijatím zmien.
- Vývoj založený na vlastnostiach (FDD) - Tento prístup zahŕňa 5 základných činností, ktoré sú: - vývoj celkového modelu, zostavenie zoznamu funkcií, plánovanie podľa funkcie, návrh podľa funkcie a zostavenie podľa funkcie.
- Adaptive System Development (ASD) - Tento prístup sa dá použiť na vytvorenie komplexného softvéru a systémov a zameriava sa predovšetkým na tímovú spoluprácu a samoorganizáciu. Zahŕňa 3 iteračné aktivity, ktoré sú - špekulujú, spolupracujú a učia sa.
- Metóda dynamického rozvoja systému - DSDM je agilný prístup, ktorý vychádza z iteračného a inkrementálneho prístupu, ktorý je do značnej miery založený na metodike rýchleho vývoja aplikácií. Zaoberá sa bežnými zlyhaniami projektov, ako sú problémy s rozpočtom projektu, chýbajúce termíny atď.
- Lean Software Development - Lean Software Development je agilný prístup, ktorý má 7 základných princípov, a to: Eliminovať plytvanie, Posilniť tím, Poskytovať rýchlo, Optimalizovať celý, Kvalitu zabudovania, Odkladať rozhodnutia a Zosilňovať učenie.
Čo je Scrum?
V predchádzajúcich častiach sme už videli prístupy, ktoré sa používajú na implementáciu agilného procesu, a Scrum bol jedným z nich, Scrum je jednou z najdôležitejších a najpoužívanejších agilných metodík. Scrum je iteračný prístup, v ktorom existuje niečo, čo sa nazýva sprinty, ktoré trvajú jeden až dva týždne. Tento prístup umožňuje tímom pravidelne dodávať pracovný produkt alebo softvér. Tu sú zodpovednosti, úlohy a stretnutia rozhodované v Scrum a sprinty sú plány, v ktorých je naplánované sprinty, ukážky sprintu, denné standup a retrospektívy sprintu.
Roly Scrum / tímy Scrum:
Odkaz: https://goo.gl/images/XpNHBe
- Scrum Master - Scrum Master je rola, ktorá je zodpovedná za tím scrum, ktorý dodržiava metodológiu Scrum. Scrum Master organizuje stretnutia, povzbudzuje tím, uľahčuje plánovanie a sledovanie, zaoberá sa výzvami a rieši úzke miesta. Scrum Master tiež komunikuje s vlastníkom produktu, aby sa ubezpečil, že nevybavené produkty sú pripravené na ďalší šprint.
- Majiteľ produktu - Majiteľ produktu je zodpovedný za analýzu a komunikáciu verzie softvéru so skupinou Scrum. Majiteľ produktu tiež koordinuje s Scrum Master, aby rozhodol o nevybavených produktoch pre sprinty.
- Vývojový tím - Vývojový tím sa skladá z odborníkov, ktorí sú zodpovední za neustály vývoj, testovanie a dodávanie softvéru. Určujú, ako doručovať kúsky diel v častých prírastkoch.
Kroky v toku Scrum:
Odkaz: https://goo.gl/images/6YTUPf
- Produktový backlog - Produktový backlog udržuje zoznam funkcií produktu. Majiteľ produktu a Scrum Master sú zodpovední za uprednostňovanie nevybavených položiek na základe používateľských príbehov a požiadaviek.
- Plánovanie sprintu - Jedná sa o stretnutie, ktoré uľahčuje Scrum Master, kde Majiteľ produktu prezentuje podrobnosti o nevybavených výrobkoch, stanovuje kritériá akceptácie dodávky a vývojový tím, ktorý definuje prácu a úsilie, ktoré denne prešli.
- Vylepšenie nevybavených objednávok - Na udržanie dostupnosti nevybavených produktov používame vylepšení nevybavených nevybavených produktov. Tu sú príbehy používateľov rozdelené na menšie časti a odstránia sa všetky irelevantné príbehy používateľov
- Denný scrum - Je to denná 15 minútová schôdza, na ktorej sa diskutuje v zásade o troch otázkach: Čo sa podarilo včera, aký je plán na dnešný deň a aké sú prekážky.
- Sprint Review Meeting - Toto stretnutie sa koná na konci každého sprintu, na ktorom je prezentovaná živá ukážka, ktorá predstavuje, čo sa dosiahlo počas sprintu.
- Retrospektívne stretnutie sprintu - Toto stretnutie môžeme nazvať aj stretnutím úspechu, pri ktorom tím diskutuje o svojich postupoch s postupom, ktorý fungoval alebo nefungoval počas sprintu.
záver
V tomto článku sme videli, že Agile je metodológia vývoja softvéru, ktorá má šírku pásma na rýchle prispôsobenie sa meniacim sa požiadavkám projektu a na prispôsobenie sa vývoju nového produktu počas prebiehajúceho projektu alebo po dokončení projektu na rozdiel od tradičného riadenia projektu, zatiaľ čo Scrum je najpoužívanejší a najpopulárnejší prístup k implementácii agilnej metodológie.
Odporúčané články
Toto bol sprievodca „Čo je agilný a scrum“. Tu sme diskutovali o rôznych prístupoch k agilite a scrumu. Viac informácií nájdete aj v ďalších navrhovaných článkoch -
- Čo je umelá inteligencia
- Interaktívne otázky týkajúce sa rozhovoru Scrum
- Čo je SDLC
- Agilný vs Scrum vs Vodopád