Uživatelské nástroje

Nástroje pro tento web


it:sw:metodiky

Metodiky vývoje (Agile, Scrum, BEM)

Úspěch softwarového projektu nezávisí pouze na kvalitě napsaného kódu, ale především na způsobu, jakým je projekt řízen a jak je kód strukturován. Moderní vývoj stojí na dvou pilířích: agilním řízení projektů a standardizaci zápisu kódu.

1. Agilní metodiky (Agile)

Agile není konkrétní návod, ale soubor principů definovaných v „Agilním manifestu“. Hlavním cílem je schopnost rychle reagovat na změny požadavků zákazníka, které v průběhu vývoje nevyhnutelně přicházejí.

Hlavní hodnoty Agile:

  • Lidé a interakce mají přednost před procesy a nástroji.
  • Fungující software je důležitější než vyčerpávající dokumentace.
  • Spolupráce se zákazníkem je klíčová (zákazník je součástí procesu).
  • Reagování na změny je přednější než striktní dodržování plánu.

2. Rámec Scrum

Scrum je nejpopulárnější implementací agilních principů. Rozděluje vývoj do krátkých časových úseků zvaných Sprinty (obvykle 1 až 4 týdny).

Role ve Scrumu:

  • Product Owner: Vlastník produktu, který definuje priority (co má největší hodnotu pro byznys).
  • Scrum Master: Kouč týmu, který odstraňuje překážky a dohlíží na dodržování procesů.
  • Vývojový tým: Cross-funkční skupina lidí, která práci reálně vykonává.

Artefakty a rituály:

  • Backlog: Seznam všech úkolů a funkcí, které je třeba vytvořit.
  • Daily Stand-up: Krátká denní schůzka (15 min), kde se řeší, co se udělalo a co tým brzdí.
  • Sprint Review & Retrospective: Na konci sprintu se ukáže hotová práce a tým hodnotí, jak zlepšit svou spolupráci.

3. Metodika BEM (Block, Element, Modifier)

Zatímco Agile a Scrum řeší *kdy* a *kdo* bude pracovat, BEM řeší, *jak* bude vypadat kód, aby se v něm nikdo neztratil. BEM je metodika pojmenovávání tříd v CSS, kterou vyvinul Yandex.

Struktura BEM:

BEM pomáhá vytvářet znovupoužitelné komponenty a zabraňuje konfliktům v kódování frontendu.

  • Block (Blok): Samostatná, smysluplná entita (např. menu, button, search-form).
  • Element (Prvek): Část bloku, která nemá samostatný význam (např. item v menu). Zapisuje se dvěma podtržítky: blockelement. * Modifier (Modifikátor): Příznak, který mění vzhled nebo stav (např. red, disabled). Zapisuje se dvěma pomlčkami: block–modifier nebo blockelement–modifier.

Příklad v kódu:

<div class="card">
  <h2 class="card__title">Název produktu</h2>
  <button class="card__button card__button--green">Koupit</button>
</div>

4. Proč tyto metodiky kombinovat?

Propojení agilního řízení a striktní struktury kódu přináší:

  • Škálovatelnost: Díky BEM může na CSS pracovat 10 vývojářů najednou, aniž by si přepisovali styly. Díky Scrumu může tým růst a stále doručovat výsledky.
  • Předvídatelnost: Zákazník vidí výsledky každých 14 dní (konec sprintu).
  • Udržovatelnost: Starý kód je díky BEM čitelný i po letech, protože z názvu třídy je jasné, kam patří.

Související články:

Tagy: dev agile scrum bem css project_management architecture

it/sw/metodiky.txt · Poslední úprava: autor: admin