Jan Šedivý: Jak začít při vývoji mobilní aplikace

Má smysl hledat nové aplikace pro mobily nebo tablety? Na iTunes nebo na Android marketu existují tisíce aplikací a přijít s novým nápadem je každým dnem těžší. Na druhé straně ale stále existuje mnoho situací, ve kterých nám mohou jednoduché mobilní aplikace pomoci. Existují určitě uživatelé, kteří mají velmi specifické požadavky dané jejich prácí, koníčky, zdravotní indispozicí a podobně. Může se zdát, že jich je u nás málo. Uvažujte ale o aplikaci v celosvětovém měřítku, začněte s anglickou verzí a pak může být počet uživatelů již docela významný. Ještě lepší je situace v oblasti tabletů. Tento trh, zejména pro Android, se teprve rozvíjí a vývojáři teprve hledají nové typy UI, úplně nové typy aplikací.

  • Poučení: Možnosti jsou velké, chce to dobrý nápad a trpělivost.

Bude naší aplikaci někdo potřebovat? Pro koho ji vyvíjíme? Mnozí vyvíjí aplikaci sami pro sebe. To je velká výhoda, protože vývojář sám nejlépe ví, co potřebuje. Někdy píše aplikace pro své přátele, což je také velmi dobrá situace. Kamarádi pomůžou porozumět tomu, co přesně potřebují. Daleko složitější je psaní aplikace zákazníkovi na míru. Zákazníci neumí vždy zcela precizně specifikovat co chtějí, obvykle jen vědí, že to potřebují hned.

Komunikace někdy nebývá úplně jednoduchá a musíte se donutit se zákazníkem nadefinovat požadavky na produkt. Ušetří vám to hodny práce při předávání produktu. Pro práci se zadavatelem je výhodný agilní vývoj software, který staví na úzké spolupráci se zákazníky. Snem většiny developerů je nicméně navrhnout úplně novou, nekonvenční aplikaci. To je nejtěžší. Každý den budete čelit mnoha situacím a problémům, které se překonávají a testují velmi obtížně.

  • Poučení: Musíte vědět, pro koho vyvíjíte, a být s ním v kontaktu. Řekne vám, co potřebuje, pomůže s testováním. Pokud se strefíte, vydržíte a aplikace se ujme, je to skvělé a budete spokojeně pozorovat rostoucí počty downloadů.

Máte nápad na aplikaci? Než začnete cokoliv podnikat, podívejte se, jestli podobnou aplikaci už někdo nenabízí. Je velmi pravděpodobné, že ji najdete. Hledání a přezkoumávání aplikace je zdlouhavý proces. Někdy je obtížné pochopit funkčnost, protože aplikace nejsou opatřeny popisem a spoléhají se pouze na intuitivní ovládání. Abyste vše pochopili, budete ji muset stáhnout, instalovat, konfigurovat a tak dále, a to je spojeno s mnoha problémy.

Aplikace velmi často sdílejí data sociálního typu. Pak se musíte registrovat, najít si přátele, kteří budou spolupracovat a sdílet data, což zabere čas, ale může vám to pomoci vylepšit nebo rozšířit váš nový nápad. Proto tento krok nepřeskakujte, možná zjistíte, že přestože váš nápad není zcela nový, má alespoň nové funkce a ty mohou přispět k jeho konkurenceschopnosti.

  • Poučení: Ujistěte se, že vaše aplikace nabízí něco nového.

Pokud nenajdete žádnou existující aplikaci, která by se podobala vašemu nápadu, začnete s její definicí. Popis aplikace musí být co nejjednodušší, aby tomu každý rozuměl. Zvolte název aplikace a zkuste si doplnit závorky vlastními formulacemi:

(název aplikace) řeší (problém) a je určena pro (zákazníci)

Popis aplikace musí být velmi jednoduchý, soustřeďte se na hlavní funkci. Jakmile je taková jednoduchá věta připravena, vyzkoušejte ji na svých přátelích. Otestujte si, jestli vám rozumí, jestli hned pochopí, co chcete dělat a jak jim to pomůže. Použijte web, Twitter, blogy a další, získejte zpětnou vazbu. Vysvětlování a získávání zpětné vazby je nejlepší způsob, jak pochopit potřeby zákazníka.

Zeptejte se, kdo by si váš produkt nainstaloval. Musíte si být jisti, že máte zákazníky. Zeptejte se, kolik by za produkt byli ochotní zaplatit. Samozřejmě se můžete také rozhodnout poskytovat aplikaci zdarma například pro neziskové nebo charitativní účely. Musíte si ale být jisti, že je o váš nápad zájem. Nesnažte se zatajovat podstatu aplikace – stejně má mnoho lidí ve stejnou dobu stejný nápad. Pro vás nejdůležitější co nejsrozumitelněji definovat problém, který vaše aplikace řeší, a ujistit se, že lidé chápou, co jim nabízíte.

  • Poučení: Komunikujte svůj nápad a ujistěte se, že je o něj zájem.

Jakmile víte, kdo jsou vaši zákazníci, co potřebují a kolik jsou ochotni zaplatit, můžete začít s návrhem. Kompletní  aplikace může být velmi složitá, my se však opět soustředíme na to nejjednodušší, na nalezení základní funkcionality. Identifikujte klíčové funkce a jejich použití. Nakreslete si app diagram popisující posloupnost akcí, kterými musí uživatel projít, aby dostal výsledek.

Rozkreslete si každou akci a pak zkuste vybrat a rozmístit grafické prvky, tedy obrazovky, tlačítka, obrázky, ikony, menu, atd. Zatím jen od ruky na papír. Nezapomeňte na ošetření chyb, dialogová okna a podobně – výsledkem bude diagram ukazující první scénář aplikace. Z vlastní zkušenosti můžu říct, že tato fáze zabere hodně času.

  • Poučení: Musíte vědět, co je nejdůležitější funkcí vaší aplikace.

Máte-li jasný scénář, musíte ověřit funkčnost a intuitivnost aplikace na reálných uživatelích. Použijte některý z wireframe nástrojů a podle nákresů vytvořte obrazovky, tlačítka, textová pole. Vyberte takový nástroj, který vám pomůže vytvořit klikací statickou obrazovku. Například Keynotopia poskytuje pro různé operační systémy (Android, iOS, …) šablony pro PowerPoint. Rychle z nich sestavíte obrazovku k nerozeznání od skutečné aplikace.

Exportujte obrazovky do klikacího PDF a s vhodným PDF readerem můžete celý scénář simulovat na mobilním zařízení. Statické stránky také snadno vytvoříte v HTML. Celou maketu (mock up) aplikace předveďte svým přátelům a sledujte, jak si s ní poradí. Vyberte nejjednodušší úkol. Pořádně se připravte, celá akce má dva kroky: stručné vysvětlení úlohy a pozorování a zaznamenání problémů.

Zadejte stejný úkol třem nebo čtyřem lidem, to úplně postačí k odhalení největších vad návrhu. Opravte problémy uživatelského rozhraní a test zopakujte. Většina developerů tuto část návrhu přeskočí. To je chyba, protože takovýto jednoduchý test vám ušetří spoustu času při kódování. Test můžete opakovat několikrát, většinou stačí dvakrát až třikrát podle zkušeností a složitosti aplikace. Určitě poznáte, kdy jste dosáhli rozumného návrhu. Chce to trpělivost, ale nebudete muset přepisovat kód.

  • Poučení: Než začnete programovat ujistěte se, že váš návrh je intuitivní.

Jak jste si jistě všimli, všechny tyto kroky nevyžadují žádné programátorské znalosti. Pro úspěšné zvládnutí návrhu budete potřebovat dobré komunikační a organizační schopnosti. Pokud jste vše otestovali, můžete se pustit do programování.

Popsal jsem velmi jednoduché a známé kroky pro návrh a testování nové aplikace. Je to obecný postup, který je třeba v některých případech modifikovat. Někdy něco vynecháte, jindy je třeba více opakování nebo zařadit další testy. Tento postup jsem již několikrát v různých modifikacích použil v praxi. Ušetří vám hodně práce a pomůže projekt dokončit dříve. Přeji mnoho úspěchů a dejte mi vědět, jak vám to funguje.

Předchozí článek: Jak organizovat webový projekt

 

Autorem článku je Jan Šedivý, který se v roce 2010 po 18 letech ve společnostech IBM a Google vrátil do Česka sdílet své zkušenosti se studenty na ČVUT. Má více než 15 amerických patentů. V současnosti vede eClub pro začínající podnikatele z řad studentů. Najdete ho například na jeho vlastním blogustránkách.