space=forward, ?=help

Vztah Open Source a Free Software k Agilnímu řízení projektů


David Pravec

Svobodný software

je sociální hnutí, zaměřuje se na svobodu uživatele.

Open Source

zaměřuje se na praktické výhody otevřenosti.

  • Svoboda spouštět programy
  • Svoboda programy zkoumat
  • Svoboda programy měnit
  • Svoboda programy šířit

Manifest Agilního vývoje software (2001)

https://agilemanifesto.org/

Vážíme si více:

Jednotlivců a interakcí než procesů a nástrojů
Fungujícího software než vyčerpávající dokumentace
Spolupráce se zákazníkem než vyjednávání o smlouvě
Reagování na změny než dodržování plánu
Jakkoliv jsou body napravo hodnotné,
bodů nalevo si ceníme více.

Principy stojící za Agilním Manifestem

Principy stojící za Agilním Manifestem


1. Naší nejvyšší prioritou je vyhovět zákazníkovi časným a průběžným dodáváním hodnotného softwaru.

Principy stojící za Agilním Manifestem


2. Vítáme změny v požadavcích, a to i v pozdějších fázích vývoje. Agilní procesy podporují změny vedoucí ke zvýšení konkurenceschopnosti zákazníka.

Principy stojící za Agilním Manifestem


3. Dodáváme fungující software v intervalech týdnů až měsíců, s preferencí kratší periody.

Principy stojící za Agilním Manifestem


4. Lidé z byznysu a vývoje musejí spolupracovat denně po celou dobu projektu.

Principy stojící za Agilním Manifestem


5. Budujeme projekty kolem motivovaných jednotlivců. Vytváříme jim prostředí, podporujeme jejich potřeby a důvěřujeme, že odvedou dobrou práci.

Principy stojící za Agilním Manifestem


6. Nejúčinnějším a nejefektnějším způsobem sdělování informací vývojovému týmu z vnějšku i uvnitř něj je osobní konverzace.

Principy stojící za Agilním Manifestem


7. Hlavním měřítkem pokroku je fungující software.

Principy stojící za Agilním Manifestem


8. Agilní procesy podporují udržitelný rozvoj. Sponzoři, vývojáři i uživatelé by měli být schopni udržet stálé tempo trvale.

Principy stojící za Agilním Manifestem


9. Agilitu zvyšuje neustálá pozornost věnovaná technické dokonalosti a dobrému designu.

Principy stojící za Agilním Manifestem


10. Jednoduchost (umění maximalizovat množství nevykonané práce) je klíčová.

Principy stojící za Agilním Manifestem


11. Nejlepší architektury, požadavky a návrhy vzejdou z týmů, které se samy řídí.

Principy stojící za Agilním Manifestem


12. Tým se pravidelně zamýšlí nad tím, jak se stát efektivnějším, a následně koriguje a přizpůsobuje své chování a zvyklosti.

Scrum

Scrum je odlehčený rámec, který pomáhá lidem, týmům a organizacím vytvářet hodnotu prostřednictvím přizpůsobivých řešení pro složité problémy.

Scrum vyžaduje roli Scrum Master pro podporu prostředí, kde:

1) Product Owner zadá práci na složitém problému do Produktového Backlogu.

2) Scrum Tým změní vybranou práci během Sprintu na přírůstek hodnoty.

3) Scrum Tým a jeho zainteresované osoby zkontrolují výsledky a přizpůsobí se pro další Sprint.

Tyto kroky se opakují každý Sprint (1-4 týdny).

Scrum Hodnoty

  • závazek
  • soustředění
  • otevřenost
  • respekt
  • odvaha

Scrum Team

Product Owner
zastupuje zákazníka, nastavuje vizi, produktový cíl a zapisuje úkoly do Backlogu, určuje jejich prioritu
Developer
vytváří Sprint Backlog, podle Definice Hotovo dokončuje úkoly, naplňuje Cíl Sprintu
Scrum Master
zajišťuje správný průběh Scrum událostí, provádí Team Scrumem jako mentor a kauč, odstraňuje problémy ohrožující dodání Cíle Sprintu

EXtreme Programming

je odlehčená metologie pro malé a středně velké týmy vyvíjející software v rychle se měnícím prostředí.

Kent Beck

Aktivity XP

  • Naslouchání
  • Designování
  • Programování
  • Testování

Hodnoty XP

Komunikace

Jednoduchost

Rychlá zpětná vazba

Respekt

Odvaha

XP Praktiky [1/2]

Plánovací hra

Malé releasy

Systémová Metafora

Přímočarý design

Testování (Unit Test first)

Refaktorizace

XP Praktiky [2/2]

Párové programování

Společné vlastnictví kódu

Průběžná integrace

Pracovní týden má 40 hodin

Zástupce zákazníka pracuje s teamem

Standardy kódování

Kanban

Kdy není Agilní řízení vhodné?

  • Vše jasně dáno dopředu
  • Fixní časový plán nebo rozpočet
  • Konflikt s firemní kulturou
  • Neovlivnitelné zásadní externí závislosti
  • Nemožnost experimentů či testování,
    vysoká cena chyby

Agilní řízení je postaveno na experimentálním přístupu

Pro úspěch je nutné mít odvahu

a vztahy postavené na důvěře.

Důvěra je vždy postavena na sdíleném cíli a hodnotách a pravdivé, otevřené komunkaci.

Agilní řízení je šance pracovat v kolektivu, který otevřeně komunikuje a nemusí předstírat.

Shrnutí:

Free a Open Source projekty umožňují uživatelům pracovat se zdrojovým kódem a sami si jej mohou studovat, opravit či upravit, spouštět a sdílet.

Agilní řízení projektu dává zákazníkům možost spoluúčasti na řízení priorit vývoje v krátkých iteračních cyklech. Zákazník tak dostane nejvýše požadovaná zlepšení během každé iterace.

Tyto dva koncepty se vzájemně doplňují, dávají moc zákazníkovi.

Víte, že jste v harmonii se svými hodnotami,
když vás práce dělá štastnými.

David Pravec