Getting Real - o co jde?


20Pro, 2013
Getting Real - o co jde?

Autor: PhDr. Milan Novák, Ph.D. Datum: 20.12.2013 Kategorie: Vývoj aplikací

Krátký úvod do agilní techniky vývoje webových aplikací - Getting Real. Ta je vhodná zejména pro vývoj webových stránek a aplikací v malých týmech.


Metodu vývoje software Getting Real, vyvinulo studio 37 signals. S její pomocí vytvořili několik velmi úspěšných webů (Basecamp a další) a mimojiné známý framework Ruby on Rails.

Metoda vývoje a řízení Getting Real se na veřejnost dostala díky stejnojmenné knize. Getting Real je menší, rychlejší a lepší způsob, jak budovat software.

Getting Real je o tom, že by se měli přeskočit všechny věci, které tzv. představují realitu (tabulky, grafy, boxy, šipky, schémata, drátové modely, atd. ) a doporučuje začít budovat skutečné věci.

Getting Real je v první řadě menší. Představuje méně hmoty, vytvoření méně softwaru, s méně funkcemi, méně papírováním, prostě méně všeho, co není nezbytné (a většina z toho, co si myslíte, že je důležité, ve skutečnosti není).

Getting Real zůstává malý a přitom agilním.

V metodice Getting Real se začíná s rozhraním. Jedná se o skutečné obrazovky, které budou lidé používat. Začíná se s tím, s čím má zákazník zkušenosti a odtud se provádí další stavba aplikace. To umožňuje vytvoření správného rozhranní ještě před tím, než vytvoříme software, který nebude dělat to co zákazník požaduje.

Getting Real je o iteracích a snížení nákladů při realizaci změn. V Getting Real je vše o spuštění projektu, jeho následném ladění a neustálém zlepšování, což je ideální přístup pro vývoj webového softwaru.

Getting Real přináší přesně to, co zákazníci potřebují a eliminuje to co nepotřebují.


1.Požadavky

2.Brainstorm

3.Náčrtky

4.Návrh obrazovky

5.Kódování


Výhody Getting Real

Getting Real přináší lepší výsledky, protože nás nutí řešit skutečné problémy, namísto řešení našich zdánlivých představy o těchto problémech. To nás vede k vypořádání se s realitou.

Getting Real nepracuje s funkční specifikací a další přechodnou dokumentací, ale představuje budování skutečných obrazovek aplikace. Funkční specifikace nás nutí uvěřit iluzi o smlouvě, zatímco vytvořená skutečná webová stránka je realita. To je to, co naši zákazníci vidí a používají. To je to na čem záleží. Getting Real nás rychleji dovede k cíli. To znamená, že se rozhodujeme na základě skutečných věcí, namísto abstraktních pojmů.

A konečně, Getting Real je přístup ideální pro vývoj webových aplikací. Ty mohou být neustále a každodenně vyvíjeny podle požadavků a aktuálních potřeb, na rozdíl od krabicového softwaru, který se vyvine, nainstaluje a pak se čeká i několik let na jeho aktualizaci.

 

Základní teze Getting Real

 

Méně je více

  • Méně funkcí
  • Méně možností / Předvoleb
  • Méně lidí v organizační struktuře
  • Méně setkání a abstrakce
  • Méně slibů

Vyvíjet software pro sebe

  • Skvělým způsobem, jak vytvořit software, je začít tím, že řešíte své vlastní problémy.
  • Budete cílové publikum a budete vědět, co je důležité a co ne. To dává velký náskok na poskytování úplného produktu.
  • Klíčem je pochopit, že nejste sami. Pokud máte tento problém, je pravděpodobné, že statisíce dalších jsou na stejné lodi. Tady je váš trh.

Začínejte vývoj ve tříčlenných týmech

  • Pro první verzi nové aplikace, mějte pouze tři osoby.
  • To je magické číslo, které dává dostatek pracovní síly a ještě vám umožní zůstat efektivní a agilní.
  • Začněte s vývojářem, designérem a "zametačem" (někdo, kdo se může pohybovat mezi oběma světy).

Aplikace by měla mít právě jednu zodpovědnost

  • Explicitně definujte jeden bod vize pro vaší aplikaci. Co stojí za vaší aplikací? Co všechno řeší?
  • Předtím, než začnete s návrhem a kódováním, potřebujete znát účel výrobku. Myslete ve velkém. Proč vůbec existuje? V čem je jiná než ostatní podobné produkty?

Budujte software způsobem od obecného ke konkrétnějšímu

Buďte posedlí detaily.

  • Prostor mezi objekty
  • Perfektní  zarovnání textu
  • Perfektní barva
  • Perfektní slova
  • Čtyři řádky kódu namísto sedmi
  • 90% vs 89%
  • 760px vs 750px
  • $ 39/month vs $ 49/month

Úspěch a spokojenost je v detailech.

Důraz je kladen na méně vlastností, ale kvalitně, ne všechny vlastnosti na úkor kvality

  • Držte se toho, co je skutečně důležité.
  • Zaevidujte si všechny dobré nápady.
  • Vezměte, co si myslíte, že váš výrobek musí mít a snižte to na polovinu.
  • Vyberte nejdříve ty nejdůležitější  funkcionality. Pak vše opakujte.

Od myšlenky k realizaci

Jděte od brainstormingu ke skicám až k HTML kódování.

Podle Getting Real lze postupovat následovně:

  • Brainstorm
  • Papírové náčrtky
  • Vytvoření HTML obrazovky
  • Kódování

Pracujte ve velmi krátkých iteracích

  • Neplánujte na týdny a měsíce. Pravdou je, že se prostě neví, co se stane s dostatečným předstihem.
  • Takže zkraťte svůj čas. Rozdělte velké časové rámce na menší kousky. Místo 12 týdnů projektu, myslete na to, jak  je rozdělit na 12 týdenních projektů. Postupujte po malých kouskách.
  • Totéž platí i pro ostatní teorie řešení problémů. Pokud čelíte problému, který je příliš velký rozdělte jej na menší a menší kousky, dokud jej nebudete moci vyřešit.

Jeden tým = jeden projekt

  • Nerozdělujte tým na separované skupiny.
  • Příliš mnoho společností separuje návrh, vývoj, copywriting, podporu a marketing do oddělených skupin.  Specializace sice má své výhody, ale také vytváří situaci, kdy zaměstnanci vidí jen svůj vlastní malý svět, místo celého kontextu webové aplikace.
  • Pokud je to možné, integrujte svůj tým, takže se vytváří zdravý dialog v průběhu celého procesu. Nastavení brzd  protivah systému. Nedopusťte, aby se věci ztratil v překladu.
  • Ještě lepší je, najmout lidi s mnoha talenty, kteří mohou přinášet během vývoje různé nápady. Konečným výsledkem bude více harmonický produkt.

Nepište mrtvé dokumenty

  • Spíš než psaní dokumentů, prototypujte.
  • Vytvoření prototypu nebo konkrétní návrh obrazovky je cesta, jak směřovat ke skutečnému produktu.

Použitá literatura

[1] Agilní vývoj: Getting Real. In: KNESL, Jiří. Zdroják: o tvorbě webových stránek a aplikací [online]. Devel.cz Lab s.r.o., 2009 [cit. 2013-12-20]. Dostupné z: http://www.zdrojak.cz/clanky/agilni-vyvoj-getting-real/

[2] 37SIGNALS. Getting Real. Chicago: 37signals, 2006.