
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.