This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
ostatni:scrum [2023/03/18 22:16] tomas |
ostatni:scrum [2023/03/19 08:53] (current) tomas |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Lean ====== | ||
+ | Metodologie zahrnující Agile - iterativní přístup, nebo třeba Kanban. Lean (z Toyoty) dělá jen hodnotné věci, nehodnotné zahazuje. Principy: Eliminate waste, Amplify learning - learn from failures, Decision making - consider all posibilities, | ||
+ | |||
+ | Kanban (Toyota): Princip toku: Zaměřování na odstraňování problému. Vizualizace (Kanban board(, omezení počtu věcí v in progres stavu. Lead time - start to end time for a process, čas na dodání produktu. Cycle time - čas na dodání. Lead time = work-in-progress/ | ||
+ | |||
====== Agile ====== | ====== Agile ====== | ||
Agile je jeden project management metodologie, | Agile je jeden project management metodologie, | ||
- | Waterfall - (inicializace, | + | Waterfall - (inicializace, |
+ | |||
+ | XP Extreme Programming - Test driven development, | ||
+ | |||
+ | Crystal - Frequent delivery, Reflective improvement, | ||
+ | |||
+ | DSDM - Dynamic Systems Develepment Method - www.agilebusioness.com. Principy: User involvments, | ||
+ | Timeboxing in MoSCoW prioritization - Time limit is fixed, tasks are fit into timebox (day, week, release). Must Should, Could Won't done now. Every timebox we decide what is M, S, C, W. Must< | ||
===== Reference ===== | ===== Reference ===== | ||
Line 24: | Line 37: | ||
- neustálé zlepšování a učení | - neustálé zlepšování a učení | ||
- | Agile project management (APM) | + | == Agile project management (APM) == |
Envision: product vision, project scope (requirements), | Envision: product vision, project scope (requirements), | ||
Speculate: epics - high lever requirelements, | Speculate: epics - high lever requirelements, | ||
Line 46: | Line 59: | ||
**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, | **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, | ||
+ | |||
+ | ==== Backlog ==== | ||
+ | Seznam pracovních úkolů pro projekt, tým, produkt, sprint. Typy úkolů: | ||
+ | * user story - dává hodnotu, user perspective | ||
+ | * Epic - velké user story na několik sprintu, upravidla obsahuje několik storek | ||
+ | * Feature - jedinečná vlastnost, která se dodá do produktu - jedna nebo více storek | ||
+ | * úkoly na adresování rizik (SPIKE story) | ||
+ | * Bug - úkoly na opravy chyb | ||
+ | * Task | ||
==== User story ==== | ==== User story ==== | ||
- | benefit | + | User storka je popis požadavků z uživatelské perspektivy. Přináší |
- | INVEST model k popsání User story - Independent, | + | |
- | 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 | + | INVEST model k popsání User story - Independent, |
+ | 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, Testable - acceptance test | ||
Story card: Nadpis, kód, popis kdo co chce a proč, acceptance criteria, priorita | 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, | Acceptance criteria od PO. Jak se to chová za kterých podmínek - funkční, nebo nefunkční kriteria (bezpečnost, | ||
- | |||
- | ==== Backlog ==== | ||
- | - Epics, stories, features | ||
- | - Epic velke user story, které může obsahovat více storek | ||
- | - Feature - unikatní funkcionality - jeno nebo více storek | ||
- | - úkoly na adresování rizik (SPIKE story) | ||
- | - úkoly na opravy chyb | ||
- | |||
- | 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 | ||
- | |||
Charakteristika úkolů v backlogu - DEEP: | Charakteristika úkolů v backlogu - DEEP: | ||
- | | + | |
- | | + | |
- | | + | |
- | | + | |
Rozdělění storek na měnší: | Rozdělění storek na měnší: | ||
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
Story mapping: minimally marketable feature - zobrazení klíčových aktivit jako diagram | Story mapping: minimally marketable feature - zobrazení klíčových aktivit jako diagram | ||
Line 91: | Line 100: | ||
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, | 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, | ||
+ | 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 | ||
- | Estimace | + | 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 (plně implementováno, | ||
+ | |||
+ | Definition of Ready - pravidla pro to, že jsme připraveni pracovat na storce - rozumíme? Máme akceptační kritéria? Máme na to dost lidí/ | ||
+ | Acceptance criteria - pro story | ||
+ | |||
+ | Minimaly marketable feature mmf | ||
+ | |||
+ | == Hodnota user story == | ||
+ | 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/ | ||
+ | Net present value npv | ||
+ | Internal rate of value irr | ||
+ | |||
+ | == Estimace | ||
Storypoints - univerzální, | Storypoints - univerzální, | ||
1 small | 1 small | ||
Line 100: | Line 129: | ||
linear or fibonaci, if betveen, then higher | linear or fibonaci, if betveen, then higher | ||
- | Ideal time - absolutni cas na storku - lisi se clovek | + | Metoda estimace: Affinity estimation |
+ | 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 | ||
+ | Ideal time - absolutni cas na storku - lisi se clovek od cloveka, lepe se vysvetli mimo tym | ||
===== Role ===== | ===== Role ===== | ||
Line 119: | Line 151: | ||
===== Ceremonie ===== | ===== Ceremonie ===== | ||
- | Backlog Refinement/ | + | == Backlog Refinement/ |
- | 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\\ | + | detailní dolaďování věcí v backlogu: prioritizace, |
- | Daily stand-up/ | + | |
- | 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.\\ | + | |
+ | == 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/ | ||
+ | Tým + SM. Co se stalo včera, co se bude dělat dnes, co je za problémy. Neslouží k micromanagementu, | ||
- | 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 | + | == Sprint Review/Demo == |
+ | tým, SM, PO, mohou být akcionáři | ||
- | Story | + | == Retrospective == |
- | INVEST | + | 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.\\ |
- | 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 (plně implementováno, | ||
- | |||
- | Definition of Ready - pravidla pro to, že jsme připraveni pracovat na storce - rozumíme? Máme akceptační kritéria? Máme na to dost lidí/ | ||
- | 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/ | ||
- | 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 | Velocity and planning - velocity - productivity of the team - work done in a sprint in story points, average value for past sprints | ||
Line 170: | Line 178: | ||
determine High level business goals —> decide epics, storeies -> estimate user stories, -> | determine High level business goals —> decide epics, storeies -> estimate user stories, -> | ||
Common failure - use sprints for specific activities, not for deliverables -> schedule risks, longer go from idea to feature | Common failure - use sprints for specific activities, not for deliverables -> schedule risks, longer go from idea to feature | ||
+ | |||
+ | ==== Měření, budíky stavu vývoje ==== | ||
Burn down and burn up charts (information radiators) | Burn down and burn up charts (information radiators) | ||
Line 179: | Line 189: | ||
Nico Nico calendar - feeling of every of team - smaily per user and day | 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 | + | * Měříme jen podstatné věci |
- | focus on team metrics | + | * Zaměřujeme se na trendy a předpovědi, ne jen na hodnoty |
- | measires for improvement, not punish | + | * zaměření na týmové metriky |
+ | * měříme pro zlepšování, ne pro trestání | ||
Other information radiators: | Other information radiators: | ||
Line 189: | Line 200: | ||
- | User story -requirements from use perspective | + | ==== Velké projekty ==== |
- | Epic - large user story which cannot be delivered in singe spring | + | |
+ | - používat Epiks a Themes | ||
+ | - Product line owner nad PO, Chief product owner | ||
+ | - one backlog per product, týmy mají jen view na svoje | ||
+ | |||
+ | Scrum-of-scrums | ||
+ | |||
+ | Standup zástupců jednotlivých týmu, nemusí být denně, probírají sezávislosti, | ||
+ | |||
+ | Plannig practices | ||
+ | |||
+ | - pravidla pro estimaci, aby všichni měli podobné estimace | ||
+ | - kick-of meeting - zástupci různých týmů | ||
+ | - look-ahead plan - přemýšlet víc plánů dopředu, hledat závislosti | ||
+ | - feeding buffer - extra dny mezi závislosti, | ||
+ | - Establish integration teams - poskytují integrační nástroje, automatické testy ... | ||
+ | |||
+ | FDD Feature Driven Development | ||
+ | |||
+ | Scaling Framework | ||
+ | |||
+ | Scaled Agile Framework SAFe - practices for scaled scrum. scaledagile.com | ||
+ | |||
+ | Team level | ||
+ | Program level | ||
+ | Portfolio level | ||
+ | |||
+ | Large Scale Scrum LeSS | ||
+ | |||
+ | www.less.works Principes: | ||
+ | |||
+ | - Transparency | ||
+ | - More with Less | ||
+ | - Whole product focus | ||
+ | - Customer centric | ||
+ | - CI | ||
+ | - Lean thinking | ||
+ | - System Thinking | ||
+ | - Queue theory | ||
+ | |||
+ | Scrum@Scale | ||
+ | |||
+ | Disciplined Agile | ||
+ | |||
+ | Nexus - skupiny týmů | ||
+ | |||
+ | www.scrum.org | ||
+ | |||
+ | == Geograficky distribuované týmy == | ||
+ | * důležitost komunikace | ||
+ | * vybírat časy vhodné skrz časové zóny, klidně zdvojit mítingy | ||
+ | * komunikace audiovizuální | ||
+ | * potřeba dát důvěru | ||
+ | * občas potřeba vidět se fyzicky | ||
+ | |||
+ | ==== Vhodnost Scrumu ==== | ||
+ | * Malé projekty | ||
+ | * Projekty, kde je více alternativ, kde se zkoumají možnosti | ||
+ | * Projeky, kde se mění často požadavky | ||
+ | * Projekty, kde se setkaváme se zákazníky | ||
+ | * Kde jsou potřeba ekonomické dodávky | ||
+ | * požadavky na časté dodávání, | ||
+ | |||
+ | Co ovlivňuje použití Scrumu: | ||
+ | * Vyspělost orgranizace na vysokou úroveň spolupráce | ||
+ | * Podpora pro měnící se plánování | ||
+ | * Ochota organizaci dát týmům autonomii | ||
+ | * Podpora managementu a zákazníka | ||
+ | |||
+ | ==== Nástroje ==== | ||
+ | == Porject management nástroje == | ||
+ | * Práce s backlogem | ||
+ | * tvoření releasu | ||
+ | * přiřazení úkolů lidem | ||
+ | * grafy a budíky | ||
+ | * Editace statusů | ||
+ | * Práce se storkama | ||
+ | * Práce s hierarchií | ||
+ | |||
+ | == Inženýrské nástroje == | ||
+ | * Automatizační nástroje | ||
+ | * testovací nástroje | ||
+ | * CI CD | ||
+ | * Validace kvality | ||
+ | |||
+ | == Testy == | ||
+ | Testovací pyramida: doporučené hodnoty 80% unit testy, 15% end-to-end testy, 5% UI testy | ||
+ | |||
+ | ==== Agile transformace ==== | ||
+ | * Malý expriment : malé riziko, lze vybrat vhodný projekt (malý nezíská důvěru, velký může ztratit důvěru a trpělivost. Ideální: z 2/3 největší, | ||
+ | * Všichni do toho : rychlejší transformace, | ||
+ | |||
+ | == Vzory adopce == | ||
+ | * public display - velká ochota organizace, versus tajný - pokud je silná resistence | ||
+ | * Split-and-seed uspěšný tym se rozdělí a realokují se lidi do ostatních týmů - agenti, rychlejší šíření | ||
+ | * Grow-and-split rozdělí se úspěšný tým na 2, hlubší šíření | ||
+ | * Technická adopce od prvního dne, nebo po krocích (když je resistence) | ||
+ | |||
+ | == Tým == | ||
+ | * evangelisti | ||
+ | * optimisti | ||
+ | * otevření skeptici | ||
+ | |||
+ | == Iterativnost a inkremence == | ||
+ | přidávat postupně. Backlog pro transformaci, | ||
+ | |||
+ | == Improvement comitee == | ||
+ | Skupina zaměřená na zlopšování, | ||
+ | Expectation up-front - nesmí být moc malé ani moc velké očekávání. | ||
+ | * Pocity týmu: moc času na schůzkách. Časem se naučí vést mítingy efektivněji | ||
+ | * Testeři : proč testovat opětovně nedokončenou práci? | ||
+ | * Hvězdy nechtějí ztratit slávu | ||
+ | * Procesně orientovaní: | ||
+ | * Zákazník: proč trávit tolik času s týmem? | ||
+ | |||
+ | Kulturní změny: | ||
+ | * zmenšit specializaci | ||
+ | * přiměřené výzvy | ||
+ | * sdílení znalostí a profesní růst | ||
+ | * čas na vzdělávání | ||
+ | | ||
+ | |||
+ | Typy lidí: | ||
+ | * konzervativní - prospěšní v plánování - vidí rizika | ||
+ | * pragmatici - umí dělat kompromisy a zklidňovat konflikty | ||
+ | * optimisti - šíří chuť do změn | ||
+ | |||
+ | == Řízení neochoty == | ||
+ | - sabotéři - aktivní, nemají rádi scrum - potřeba jednat pevně, sdílet úspěchy, když nepomůže | ||
+ | - Skeptici - pasivní, nemají rádi scrum - dodat data | ||
+ | - nasledovníci - pasivní, nemají rádi změny - dodat data a adresovat | ||
+ | - Diletanti - aktivní, nemají rádi změny | ||
+ | Časté chyby: | ||
+ | * nedostatečné vysvětlení z managementu | ||
+ | * málo spolupráce | ||
+ | * příliš velké očekávání od investoru | ||
+ | * Překážky | ||
+ | * nedostatečné věnování se dokončování | ||
+ | * příliž ambicí, nebo žádné ambice si brát úkoly | ||
+ | * špatně popsané úkoly | ||
+ | * špatná kvalita | ||
+ | Kulturní změny: | ||
+ | * lidi musí cítit zodpovědnost za týmové cíle | ||
+ | * vyzdvihovat jinakost v týmu | ||
+ | * Self-organization, | ||
+ | * potřeba stanovit hranice kompetenci | ||
+ | * potřeba diskuzí | ||
+ | Maturity model\\ | ||
+ | * hodnocení, různé modely: Harman, Thoughtworks, | ||
+ | * vytvoření KPA (metrik) pro sledování | ||
+ | * plán na zlepšení | ||
+ | * implementace zlepšování |