This is an old revision of the document!


Agile

Agile je jeden project management metodologie, podobně jako waterfall model. Umožňuje měnící se požadavky, časté dodávky, iterativní a inkrementální přístup.
Waterfall - (inicializace, planování, provádění, monitorování a kntrola, uzavírání) změny drahé, musí se zmrazit požadavky, komplexní vše naplánovat, mění se technologie, těžké získat dohodu. Agilni metodologie: Scrum, Extrémní programování, …

Reference

Exin handbook for scrum masters and product owners
www.stateofagile.com - proč agile
www.standishgroup.com - statistiky firem

Agile Manifesto - popisuje hlavní hodnoty Agilního přístupu - Individuum > proces, funkčnost > dokumentace, reakce na změnu > plán, zákazník > kontrakt

Agile principles:

  1. uspokojit zákazníka brzkýma a častýma dodávkama
  2. Příjmat změny, i když zdrží dodávku
  3. dodávat hodnoty často
  4. Business and development musi pracovat spolu na denní bázi
  5. Motivovat lidi a věřit jim
  6. přímá a otevřená komunikace
  7. Fungujici produkt je hlavní způsob měření stavu
  8. Dodávka je udržitelná, udržitelné tempo
  9. neustálá pozornost na kvalitu a dobrý design
  10. Jednoduchost
  11. Nejlepší řešení přichází přímo z týmu - důvěra týmu
  12. neustálé zlepšování a učení

Agile project management (APM) Envision: product vision, project scope (requirements), project team, project approach - technika
Speculate: epics - high lever requirelements, user storeies, release plan
Explore: sprint planning, delivering values, …
Adapt: learn and go back to speculate or to close - transition to the support

Scrum

Reference: www.scrumguides.org

Pilíře: transparence, inspekce, adaptation

Values: Commitment, Focus, Openness, Respect, Courage

Proces Product backlog → sprint planning → sprint backlog → sprint run, standups → sprint review

cesta ke Scrumu ADAPT (Awareness, Desire, Ability, Promotion, Transfer)
ADKAR (Awareness, Desire, Knowledge, Ability, Reinforcement)
Musíme vědět co očekáváme a jestli to Scrum donese

Balances score cards, obsahuji future orientation metrics Employee metriky, (business values delivered by scrum - saving and revenue, new features, faster delivery), excelence metrics - predictibility of time to feature, prodductivity of team, quality metrics - defects, issues, customer orientation metrics - protuct performance, uptime, satisfaction, loyality

User story

benefit for user or stakeholder. INVEST model k popsání User story - Independent, Negotiables, Valuable, Estimable, Small, Testable Independent na ostatních user story, Negotiable - dobře popsané, Valuable - hodnota pro business, Estimable - dost informací potřebných k udělání, Small dost malé na dodělaní ve sprintu

Story card: Nadpis, kód, popis kdo co chce a proč, acceptance criteria, priorita

Acceptance criteria od PO. Jak se to chová za kterých podmínek - funkční, nebo nefunkční kriteria (bezpečnost, rychlost)

Epics, stories, features Epic velke user story, které může obsahovat více storek Feature - unikatní funkcionality - jeno nebo více storek

Rozdělění storek na měnší:

  1. Operational boundaries: create, retrieve, update, delete
  2. data boundaries: uživatel, produkt, …
  3. Separate exceptions
  4. Research vs implementation
  5. separate non functional requirements: performace, scalability, security

Story mapping: minimally marketable feature - zobrazení klíčových aktivit jako diagram

Business value - new revenue, Incremental revenue from existing customers, Retained revenue from who wants leave, operational efficiency

Benefit-cost analysis: Payback period - za jak dlouho se vyplatí nová funkcionalita 100k/25k=4 roky, net present value (npv), return of investment 25k/100k=25%, Internal rate of return IRR

Prioritizace - value risk matrix - 1) high risk, high value, 2) low rirsk, high value 3) low value low risk (do or not to do) low risk, low value, Kano model : Mandatory, linear - story které udělají zákazníka spokojeným, Exciters, delighters - zákazník neočekává. Value score - poměr mezi ziskem a pokutou. priorita=hodnota/(cena*riziko)

Estimace Storypoints - univerzální, nezávislé na člověku 1 small 5 medium 13 big linear or fibonaci, if betveen, then higher

Ideal time - absolutni cas na storku - lisi se clovek od cloveka, lepe se vysvetli mimo tym

Role

SM Scrum master - pomáhá týmu zvládnout práci, koučuje process, organizuje mítingy, eviduje problémy a pomáhá je překonat, eskaluje, pobízí k tvořivosti. NENI nadřízený, nerozhoduje, nevlastní tásky, nedělá mikromanagement, není technický vedoucí, nechává tým rozhodovat a vede tým ke shodě. Zná scrum, rozumí tématu, musí umět ovlivňovat tým, je trpělivý, skromný, kooperativní, zlepšuje náladu. Neměl by být ani technický vedouci, pak rozhoduje, může se střídat, ale jen ti, kdo mají předpoklady, může být na cástečný úvazek.

PO Project owner - Vytváří vize produktu a diskutuje ji se zákazníkem, technickým vedoucím, vedením, týmem, vytváří backlog, prioritizuje, rozděluje do sprintů a do releasů, slaďuje očekávání, určuje akceptační kriteria. PO musí být k dispozici ke konzultacím a pro tým pro upřesňování, musí rozumět odvětví produktu, dobře komunikovat s různými audiencemi, umět dělat rozhodnutí. Může být několik PO a zastřešuje je Lead PO pro velký produkt. Musí být k dispozici pro Planning a dema. Nesmí moc tlačit na tým a na relesovaní nekvalitních produktu.

Agile Team - Malý, max 9 lidí, multifunkční tým, odborníci v jedné oblasti, ale schopní učit se dělat obecné věci v jiných doménách, různí lidé (pohlaví, věk, etnikum). Tým musí být samostatný, organizuje si sám práci. Malý tým tolik nekoketuje, je konstruktivnější, méně času na míting, nikdo se nemůže skrýt za ostatní, zabraňuje se přílišné specializaci. Důležitá je spolupráce, všichni jsou si rovni (architekt, QA, …)

Sprint

Délka sprintu je obvykle 1-4 týdnů, závislá na:

  1. stabilitě backlogu - často se mění, kratší sprint
  2. obtížnosti úkolů - delší úkoly delší sprint, cenou iterace - víc ceremoniálů, méně času.
  3. získavání odezvy zákazníka a akcionářů

Ceremonie

Backlog Refinement/Grooming - detailní dolaďování věcí v backlogu: prioritizace, estimace, popis, klasifikace do Epiku/featur
Sprint Planning - závazek na dodán, cíl sprintu určuje PO, tým si rozdělí úkoly pro sprint a mezi sebou. Objem úkolů buď podle historické výkonnosti týmu (velocity-driven approach), nebo jak se tým dohodne a zaváže (commitment-driven approach). Tým se musí shodnout a pochopit úkoly a akceptační kritéria. Pokud si tým bere moc, nebo málo, SM chce zdůvodnění. Musí se respektovat dovolená a svátky
Daily stand-up/daily scrum - Tým + SM. Co se stalo včera, co se bude dělat dnes, co je za problémy. Neslouží k micromanagementu, mělo by být hodnotné pro všechny sdílet i poslouchat
Sprint Review/Demo - tým, SM, PO, mohou být akcionáři či jiná audience. Cíl je prezentovat produkt sprintu, získat odezvu a případně přidat nové úkoly do backlogu. Výsledek musí být příjmán pozitivně, stejně tak zpětná vazba. Nemá se moc diskutovat nové řešení, ale očekáváni.
Retrospective - tým + SM - zviditelnit problémy a najít cestu, jak to dělat lépe. Tým by měl vzít zlepšení pro sebe, ne jen obviňovat. Příležitost i k oslavám.

Definition of Done

DEEP

Backlog:

  • user story - dává hodnotu, user perspective
  • Epic - velké user story na několik sprintu, obsahuje několik storek
  • Feature - jedinečná vlastnost, která se dodá do produktu
  • Task

User persona - Hypotetický uživatel - umožnuje se vcítit do uživatele. Jméno, role, učel co chce udělat, jeho běžné činnosti

Story INVEST - independent na jiných věcech, Negotiale (need, not solution), Valuable - hodnota popsaná ve story, Estimable, Small, Testable - acceptance test

User story format: Co kdeo chce, co chce udělat a proč, detaily, acceptance criteria As a accountant, I waould like accoubt screen to be simple that I do not have to scroll up and down

Definition of Done - obecne pravidlo, co platí pro všechny user story (otestovano, bezpečné, …) Definition of Ready Acceptance criteria - pro story

Minimaly marketable feature mmf

Business value: New revenue, incremental revenue, retained revenue (aby neodešli), operational efficiency — top priority

Benefit cost analysis Payback period - za kolik let se investice vrati: 100000 investice, 25000 naklady, 4 roky navrat Returnon investment 25k/100k=0.25 Net present value npv Internal rate of value irr

Story card - popis, estimace, priorita

Affinity estimation - sort all storycards from smallest to biggest, then estimate by fibbonaci, or t-shirt size - relative sizes

Planning poker, read story point, than discuss, than every choose size, than discussion, than agreement on size www.planningpoker.com fun, involves all, effective, discuss risks

Velocity and planning - velocity - productivity of the team - work done in a sprint in story points, average value for past sprints

Planning onion - vision, roadmap, release, sprint, daily

Release planning - goal of release, select stories aligned to the goal, estimate and prioritize, determine sprint size, estimate team velocity, assign individual user stories to the sprint - do it together, to not have aggressive release plan Good to assign just some first iterations, rest of backlog tentative. Possible to use buffer. Plan can change

Release planning process flowchart determine High level business goals —> decide epics, storeies → estimate user stories, →iteration size → estimate velocity, → prioritize → select stories to iterations and release date Common failure - use sprints for specific activities, not for deliverables → schedule risks, longer go from idea to feature

Burn down and burn up charts (information radiators) Burn down chart -linear chart how many work rest to the end of the project (ideal task remaining versus actual work) burndown bar chart - similar, but bars, starting from 0 or another number burn-up chart - how much done since start of project parking lot chart - project stutus - features groupped, green done, red attention, yellow in progress Scrum board - kanban board - todo, doing, done Nico Nico calendar - feeling of every of team - smaily per user and day

Measure just what matter, focus on trends and forecasts, not only values focus on team metrics measires for improvement, not punish

Other information radiators: Impediment log - list of impediments, and their status Resolved/outstanding cummulatiove flow diagram - square with status of workitems blue - backlog, green started yelllow designed, grey coded, red complete - in time

User story -requirements from use perspective Epic - large user story which cannot be delivered in singe spring