Reálný „běžící" software je jako vrcholová prémie
Běžící software je největší impuls, váš první cíl. Zastavte se, pohled zpět, vyhoďte nápady, které nefungují. To je priorita číslo 1 od prvního dne.
Je v pořádku dělat méně, přeskakovat detaily, hledat zkratky, pokud je to rychlejší cesta k „běžícímu" software. Pokud máte běžící software, jste odměněni mnohem přesnějším pohledem na věc a víte přesněji jak pokračovat. Dokumentace, analýzy, drátěné modely dokonce i HTML modely jsou jen přiblížení se k realitě. Běžící software je realita sama.
S reálným běžící software každý získá přesnější pochopení. Vyhnete se rozvášněným diskuzím nad návrhy a analýzami. Často si uvědomíte, že části které jste považovali za triviální jsou zásadní a naopak.
„ Reálné věci vedou k dohodě" Christopher Alexander, Professor of Architecture
(from Contrasting Concepts of Harmony in Architecture)
Vypláchnout a opakovat
Očekávejte, že se to podaří napoprvé. Nechte software růst a promlouvat k vám. U webového software není potřeba dokonalost. Udělejte design, vyzkoušejte ho, zanalyzujte a začněte znovu.
Na rozdíl perfektního výsledku na základě neúplných informací, vám iterační proces (opakování), přinese potřebné informace v průběhu vývoje. Navíc se rychle dostanete k reálně běžícímu kusu software. Výsledkem je reálný feedback a návod na zaměření pozornosti.
„Iterace vede ke svobodě" Nemusíme mířit k perfektnímu řešení, když stejně víme, že se to bude později předělávat. Pokud víme, že problém budeme později revidovat, je velkým motivátorem to prostě udělat a pak se uvidí. Web 2.0, svět, kde předpokládáme, že již všichni používají web, umožňuje chytrým developerům lidské kverulantství pro zpětnou vazbu dokud je dostatek času ke změně.
Vyvíjej, otestuj, spusť a reviduj. Nikdo není chytřejší než všichni dohromady." Seth Godin, author/entrepreneur
Od nápadu k implementaci
- Jdi od brainstormingu k návrhům, HTML a programování.
- Brainstorming: Jakou potřebu produkt řeší a jak? Jaká je vize? Jaký je příběh? Vyhněte se detailům.
- Návrhy: rychlé, špinavé skici jsou to co potřebujete. Dostaňte nápady na papír. Rychle. Experimentujte
- HTML návrhy: potřebujete něco reálného, potřebujete reálnou zkušenost pro dobrou revizi. Nic neprogramujte, stačí model v HTML a CSS.
- Programování: až HTML modely poskytnou potřebnou zpětnou vazbu a ukáží funkcionalitu, ponořte se do programování. Zůstaňte pružní a očekávejte několik opakování. Nebojte se zahazovat kód.
Vyhněte se předvolbám
Rozhodněte detaily za zákazníky ať oni už nemusí, předvolby jsou jen leností vývojáře dělat těžká rozhodnutí. Místo aby využil svoji zkušenosti a profesionalitu nechá rozhodnutí na uživatele. Může se zdát, že předvolbami děláte uživateli laskavost, ve skutečnosti mu přiděláváte práci. Předvolby a nekonečné množství voleb je bolehlavem, ne požehnáním.
Předvolby vedou k více software, více testování, více kódu, více designu, více screenům, více rozbitým layoutům, více tabulkám, více problémům. Předvolby nejsou méně.
„Hotovo" je pro vás magickým slovem
„Hotovo" je velkým impulzem. Časem revize, rozhodnutí a pokračování. Co když je něco hotovo, ale špatně? Jedeme dál, nejsme přeci neurochirurgové ale vývojáři webových aplikací.
Nehledě na to jak moc se plánuje, je pravděpodobné, že půlka bude špatně. Proto „hotovo", revize, vylepšení, „hotovo", revize. Nenechte se paralizovat přílišnou analýzou.
Realizujte, nápady jsou bezcenné pokud nejsou realizované.
Testujte s pomocí reálných uživatelů
Nic nenahradí testování reálnými uživateli. Dostanete reálná data, reálný feedback, na jehož základě jdou dělat vylepšení.
Formální testování použitelnosti je příliš ztuhlé. Laboratorní podmínky málo kdy odrážení realitu. Vydávejte beta funkce do skutečně běžících aplikací. Tím je vystavíte reálnému workflow, reálný datům uživatelů. To je výsledek testování, který potřebujete.
Zkracujte časové úseky
Odhady v řádech týdnů nebo měsíců jsou fantazie. Ve skutečnosti málo kdo ví, co se bude dít za pár týdnů.
Zkracujte časové úseky. Místo 12-ti týdenního projektu udělejte radši 12 týdenních projektů. Místo úkolu trvajícího 30 hodin udělejte 5 úkolů trvajících 6 hodin.