V agile existuje více přístupů, jak pochopit body, které se používají k vyjádření náročnosti úkolu. Dnes si tady jednotlivé přístupy sepíšeme a srovnáme.

Idealizované člověkohodiny

V tomto přístupu se tým sejde a odhaduje, kolik času by teoreticky bylo potřeba, pokud by se lidé výhradně soustředili jen na práci. Tento přístup používá eXtreme Programming.

Pokud je v týmu více lidí různých odborností, je možné sčítat jejich odhady, popř. je i držet odděleně.

Výhody tohoto přístupu:

  • idealizovaná člověkohodina se dá snadno přetavit v reálný čas, snáze se tedy zahajuje první iterace (sprint pokud používáte Scrum)
  • přístup dobře zvládá členy týmu různých odborností
  • nový člověk v týmu snadno uchopí body a začne brzo odhadovat

Nevýhody tohoto přístupu:

  • hodiny jsou jen pomůcka do začátku, když ale jsou zpočátku hodiny použity na kalibraci, později může být pro někoho těžší se od nich oprostit
  • lidé můžou cítit frustraci, když zjistí, že dodávají třeba jen 2 idealizované člověkohodiny denně
  • vynořuje se otázka: čí je vlastně ta „idealizovaná člověkohodina“? Tedy mám odhadovat, jak dlouho by to trvalo mě, nebo team leaderovi, virtuálnímu průměrnému vývojáři? Odpověď: běžnému členovi v situaci, kdy má všechny informace.

Porovnávání úkolů

V tomto přístupu vezmete nejmenší netriviální úkol v backlogu a z něj uděláte 1 bod, pak vezmete největší úkol, který jste ochotni přijmout do iterace (sprintu pokud používáte Scrum) a z něj uděláte 8 bodů. Na zvolené škále (nejčastěji 0, 1, 2, 3, 5, 8 nebo 0, 1, 2, 4, 8) pak volíte, jak se vám úkol zdá v porovnání mezi těmito dvěmi.

Výhody tohoto přístupu:

  • časem se chcete oprostit od hodin a tento přístup k tomu napomáhá
  • nevadí větší nepřesnost, celý přístup je od začátku jen vyjádřením porovnání složitosti

Nevýhody jsou:

  • je těžší odhadování v okamžiku, kdy máte v týmu více odborností a musíte buď hledat celkové úsilí za všechny odbornosti (jak může tester vědět, kolik úsilí bude potřebovat databázista?)
  • úkoly časem zastarají, lidé v týmu se vymění, architektura se změní, je potřeba najít jiné srovnávací úkoly
  • je těžké určit, kolik bodů se stihne v prvních iteracích (sprintech pokud používáte Scrum)

Konečný cíl je ale stejně vždy jen schopnost vyjádřit, jak náročný úkol je, kolik bude vyžadovat úsilí a ať už zvolíte první přístup, nebo ten druhý, platí, že konečným cílem je zapomenout na nějaké idealizované člověkohodiny, benchmarky, ale mít podvědomé povědomí o tom, co bod znamená. Pak už bodujete podle intuice a zkušenosti. Oba přístupy jsou jen pomůcka k tomuto cíli.