Guide the development of applications

Co vše obsahuje vývoj mobilní aplikace

Mobile applications

Co to vlastně je a k čemu ji dnes potřebuji?

Mobilní aplikace je software (někdy označován jako program), který běží v mobilním telefonu nebo tabletu. Je navržen tak, aby byl v souladu s pravidly ovládání telefonů a tabletů a umožnil využít 100% potenciál těchto zařízení. V současné době se mobilní aplikace vyvíjejí především pro mobilní operační systémy Android a iOS.

iOS, iPadOS, WatchOS – operační systémy od firmy Apple, najdete je v přístrojích iPhone (mobilní telefony), iPad (tablety) nebo Apple Watch (chytré hodinky).

Android – Nejrozšířenější mobilní operační systém od firmy Google. Android používají téměř všechny komerčně prodávané přístroje. Lze jej nalézt i v kioscích a domácí elektronice.

Ostatní OS – Windows Phone od Microsoftu již není podporovaný a proto nemá smysl pro tento systém vyvíjet. Stejně jsou na tom i další operační systémy, které nejsou masově rozšířené a na trhu mají zastoupení pouze do 1% uživatelů.

Aplikace mají nejrůznější podoby – od e-shopů až po hry a komunikační platformy. Aplikace lze pro jednotlivé platformy nalézt v obchodech s aplikacemi – Google Play pro Android a AppStore pro iOS. Uživatelé Androidu mají možnost instalovat aplikace také z externích zdrojů či jiných obchodů, to však s sebou nese jistá bezpečnostní rizika.

Jaké jsou nejznámější mobilní aplikace? Třeba Instagram, WhatsApp a další. Mobilní aplikace tedy pokrývají všechna možná odvětví.

Chyby, které se často objevují

Nejčastější seznam chyb při plánování a po vydání.

Koncept aplikace

Nedělejte aplikaci jen proto, že je to v módě. Existují i jiné způsoby, jak svůj byznys rozjet. Identifikujte přidanou hodnotu, kterou uživateli přináší. Sepište si svoje konkurenční výhody.

Promyšlený business plán

Každé podnikání vyžaduje kvalitní business plán. Nepřistupujte k mobilním aplikacím amatérsky a ukažte konkurenci, že umíte vyprodukovat kvalitní produkt.

Rozpočet a financování

Tvorba mobilních aplikací stojí hodně peněz. Proto je dobré připravit si dostatečný rozpočet, aby pokryl vývoj i provoz aplikace. Standardně se jedná minimálně o stovky tisíc korun.

Přecenění sil

Vytváření aplikace je časově náročný proces. Vyčleňte si časové kapacity na schůzky, workshopy, plánování a intenzivní spolupráci se zákazníkem pro úspěšný vývoj aplikace.

Průzkum trhu

Často zapomínáte na ověření zájmu o váš nápad. Oslovte lidi s prototypem aplikace a zjistěte jestli se jim koncept líbí a nebo jestli by aplikaci používali.

Podpůrné prvky aplikace

Málo která aplikace si vystačí samotná. Často je třeba back-end, propagační web, webová verze aplikace a nebo technická podpora.

Marketing & reklama

Aplikace jsou dnes velmi rozšířené. Proto se nespoléhejte, že si aplikace najde své uživatele sama. Připravte si marketingovou strategii, propagaci a rozpočet.

Vývojem to nekončí

Aplikace a její vývoj nikdy nekončí, obzvlášť když je úspěšná. Je třeba aplikace udržovat, pravidelně aktualizovat a záplatovat.

Externí agentura,

nebo interní vývoj?

Interní vývoj bude pro váš projekt lepší v případě že:
  • jde o technologickou/IT firmu,
  • jádrem podnikání je aplikace,
  • práce na aplikaci stabilně zaměstná tým vývojářů a management
  • máte záložní finanční zdroje v řádech milionů.
Naopak, spolupráce s agenturou bude lepší když:
  • nejste technologická/IT firma,
  • jádrem podnikání není mobilní aplikace,
  • nepotřebujete tým lidí, který bude soustavně aplikaci vyvíjet (po celý rok),
  • chcete s náklady pracovat flexibilně.

Technologie,

aneb bez čeho se aplikace neobejde.

Programovací jazyk je komunikační nástroj mezi programátorem a softwarem (počítačem). Je to prostředek k definici a zápisu algoritmů a postupů, které má počítač vykonávat. Programátor zápisem přesně definuje řešení daného problému, a počítač jej následně interpretuje technickými prostředky a jeho možnostmi.

Front-end je prezentační vrstva aplikace. Zkráceně lze říci, že se jedná o to co uživatel vidí. Front-end se stará o zobrazování konkrétních dat na konkrétních místech, které jsou v aplikaci zpracovány a uživatel s nimi interaguje.

Back-end je aplikační vrstva aplikace. Má za úkol zpracovat vstupy od uživatele, ukládat data do databáze, jejich modifikaci, komunikaci s jinými rozhraními a servery (API) další služeb a podobně. Jedná se o neviditelnou, ale velmi podstatnou část aplikace.

Hybridně nebo nativně?

Podstatné rozhodnutí, které může ve finále ovlivnit nejen cenu.

Co programátor, to názor. Zatímco hybridní aplikace většinou využívá pro běh jádro internetového prohlížeče, nativní mobilní aplikace přímo jádro telefonu a jeho vestavěné knihovny. Nativní aplikace jednoznačně dosahují lepšího výkonu, jejich vývoj však trvá déle a je nákladnější. Nelze jednoznačně říci pro jakou aplikaci je lepší to či ono. I drahý nativní vývoj může aplikaci uškodit, pokud se napíše špatně a aplikace není optimalizovaná.

Není možné říci, jaký druh vývoje je obecně ten lepší. Vždy je třeba posoudit vliv aplikace u každého projektu individuálně. Můžeme ale obecně říct, na jaké typy je vhodnější „nativní“ a na které „hybrid“:

Jdete cestou nativního vývoje pokud:

  • má aplikace běžet rychle i na starších zařízeních (převážně zařízení s Android 7.0 a starší),
  • budete mít v aplikaci složité animace nebo jiné designově náročné prvky, které zpomalují běh aplikace
  • je důležitý 100% perfektní uživatelský zážitek
  • jde dynamicky náročné aplikace jako jsou hry, rozšířená realita, úpravy fotek, videí apod.

Hybridní vývoj zvažte, pokud:

  • jde o jednoduchou aplikaci, například vypisování a zapisování dat poběží na omezeném množství telefonů (interní aplikace)
  • jde o jednoduchou sociální síť, blogovou aplikaci nebo inzertní server a další aplikace, které neprovádí žádné složité operace (jako Instagram, Twitter, WhatsApp, …)
  • je postačující uživatelský zážitek z prvků, které vypadají jako nativní
  • aplikace bude mít časově omezené použití (festival, konference)

Plusy a minusy

hybridního a nativního vývoje

Nativní vývoj
Hybridní vývoj

Jednorázové aplikace určení k využití na festivalech, konferencích apod. (styl: stáhnout, použít a odinstalovat) je obtížnější dostat na Apple AppStore skrze jednorázové využití aplikace. Proto je výhodné využít hybridní typ aplikace, která je vytvořena webově a lze ji použít na libovolném zařízení s přístupem na internet a hlavně i na webovém prohlížeči. Alternativou je PWA (Progresivní webové aplikace).

Technologie,

aneb jaká je ta pravá?

Neexistuje obecně platná odpověď na to, jaká technologie nebo framework je nejlepší pro vývoj. A pokud někdo tvrdí opak, pravděpodobně vám neříká celou pravdu. Každý projekt je specifický a vyžaduje něco jiného. S jakými technologiemi se můžete nejčastěji setkat?

Objective-C/Swift

Jde o jazyky určené pro vývoj na kompletní ekosystém platformy Apple. Nový jazyk Swift byl navržen tak, aby vývojářům ulehčil práci.

Java/Kotlin

Programovací jazyky určené pro nativní vývoj na Android. Nabízí širokou škálu využitelnosti a robustnosti.

Flutter

Jedná se o multiplatformní vývoj pro iOS, Android a Web. Jde o mladou technologii, vyvíjenou Googlem s jazykem Dart.

Capacitor

Jedná se o multiplatformní wrapper, který "obaluje" JavaScript do nativní aplikace pro iOS nebo Android moderní metodou.

Apache Cordova

Taktéž multiplatformní wrapper, který umožňuje zabalit web do nativní aplikace pro iOS nebo Android. Dnes je však již zastaralý.

React native

React Native je velmi populární open-source nástroj pro iOS a Android. Byl vytvořen společností Meta Platforms, Inc.

Cena mobilní aplikace

a faktory, které ovlivňují její cenu.

Klienti často žádají designéry a vývojáře mobilních aplikací o velmi přesné odhady finálních cen jen na základě velmi stručného popisu. Při výpočtu potřebných nákladů přitom záleží na mnoha různých faktorech a cenu navíc obvykle není možné určit zcela přesně ještě před fází designu a prototypování.

Co se pod cenou skrývá

Základní faktory, které ovlivňují cenu mobilní aplikace.

Dostupnost

Na jakých zařízeních a operačních systémech má být aplikace dostupná? V první řadě je třeba se rozhodnout, zda chcete vytvořit aplikaci pro iOS, Android nebo obojí. Technologie Capacitor a Ionic umožňují ušetřit část nákladů při vývoji aplikace jak pro Android, tak pro iOS. Roli v ceně aplikace hraje i volba podporovaných verzí a zpětné kompatibility jednotlivých systémů.

Design

Designem se v případě vývoje mobilních aplikací nerozumí jen vzhled uživatelského rozhraní (UI), ale hlavně design celého produktu z hlediska funkčnosti a navigace, tzv. user experience (UX).

V ideálním případě by měl proces vývoje začít sérií Design Sprintů, týdenních intenzivních bloků zaměřených právě na UX design, na jejímž konci vyvstane ideální, uživateli otestovaný prototyp aplikace. Nákladnost této fáze závisí na rozsahu aplikace a úroveň důkladnosti, kterou chcete přípravě UX věnovat.

Vizuální zpracování produktu pak může vycházet jen ze základního systémového designu, nebo může zahrnovat unikátní design na míru či dokonce náročné prvky jako jsou animace nebo speciální vykreslování dat v reálném čase.

Tým

Počet členů vývojářského týmu se obvykle odvíjí od požadovaných funkcí a zvoleného designu. Základní tým čítá projektového manažera, UX designera, minimálně dva vývojáře a testera, případně ještě backend vývojáře. V rozšířeném týmu najdete více vývojářů, přičemž někteří z nich se často mohou specializovat na konkrétní platformu.

Cena aplikace se také zásadně odvíjí od lokace a cenové politiky vaší vývojářské firmy. Podle nedávných srovnání mohou například hodinové mzdy vývojářů ve Spojených státech dosahovat až pětinásobku hodinové sazby v Česku a dál na Východ.

Testování

Položkou, na které by neměl žádný vývoj mobilní aplikace šetřit, je testování výsledného produktu. Pečlivé testování aplikace vám ušetří další výdaje a projekt celkově urychlí, proto mu věnujte dostatečný prostor.

Pokud se chystáte na vytváření velmi komplexní aplikace s mnoha náročnými funkcemi, zahrňte do svých plánů výdaje na testování v rámci jednotlivých fází.

Komplexnost funkcí 

Zásadním ukazatelem ceny je nepochybně rozsah a složitost funkcí aplikace. Základní aplikace se často rozšiřují například o některé z těchto funkcí:

  • back-end infrastruktura
  • zprávy nebo chat
  • push notifikace
  • trackování aktivity
  • doplňkové nákupy v aplikaci skrze platební bránu
  • funkce využívající hardware telefonu
  • personalizace aplikace na základě machine learningu
  • správa aplikace a dat skrze webové rozhraní
  • pokročilá práce s posbíranými daty
  • integrace sociálních sítí
  • využití kamery nebo mikrofonu

Ideálním přístupem při vývoji zcela nové mobilní aplikace je vytvoření základní verze s nejdůležitějšími funkcemi, ke kterým se poté mohou v dalších fázích projektu postupně přidávat rozšiřující prvky. Ty totiž mohou vývoj aplikace výrazně prodloužit a zdražit.

Manipulace s daty

Bude vaše aplikace umožňovat nahrávání videí, zvuku nebo fotek? Do celkové kalkulace je tak nutné předem zahrnout měsíční či roční náklady za cloudové úložiště dat, které se v případě skutečně velkého objemu dat může celkem prodražit.

Rychlost ukládání a stahování dat může být v případě některých aplikací klíčová. Pokud je to váš případ, nesnažte se na úložišti ušetřit.

Dalším faktorem v této kategorii je bezpečnost. Pakliže bude vaše aplikace nakládat s citlivými údaji a ukládat například osobní platební historii či tajné obchodní informace, měli byste rozhodně investovat do takového cloudového řešení, které vám garantuje bezpečný přenos a úschovu dat.

Správa

Další rozšíření projektu nastane, pokud potřebujeme do mobilní aplikace integrovat systém na správu obsahu (Content Management System – CMS) nebo uživatelské databáze (Customer Relationship Management – CRM). Pokud jste dosud žádný takový systém nevyužívali nebo vašemu projektu existující licencovaná řešení z nějakého důvodu nevyhovují, je možné vytvořit CMS či CRM řešení na míru.

Podpora a další vývoj

V neposlední řadě je nutné myslet už na začátku na dlouhodobé výdaje na údržbu a úpravy aplikace, správu dat a cloudu, vytváření postupných updatů a poskytování podpory uživatelům. Při kalkulaci projektu nezapomeňte také na propagační náklady.

Náklady na vývoj mobilních aplikací skutečně nelze odhadnout jen na základě strohého popisu. Abychom si ale přiblížili nějaká konkrétní čísla, podívejme se na tři základní příklady spolu s hodinovou dotací, která vám nastíní obraz o celkové finanční náročnosti.

Základní aplikace

Velmi jednoduché aplikace s jednoduchým systémovým designem. Žádná integrace služeb třetích stran, žádné pokročilé funkce nebo backend pro zpracování dat. Doba tvorby takové aplikace je zhruba 1 – 3 měsíce práce.

Středně komplexní aplikace

Lze aplikovat design na míru i pokročilejší funkce - například integraci služeb třetích stran, platby v aplikací, chat apod. S daty z aplikace je dále možné efektivněji pracovat pomocí backendové struktury. Doba tvorby takové aplikace je zhruba 6 – 10 měsíců práce.

Komplexní aplikace

Taková aplikace obsahuje i pokročilé animace, umí zpracovat multimediální obsah a upravovat prostředí na základě machine learningu a umožňuje podrobnou správu skrze pokročilý backend. Doba tvorby takové aplikace je více jak 10 měsíců práce.

Vývoj

Postup a jednotlivé fáze vývoje.

Potvrzení konceptu

Prvním krokem vývoje aplikace nemusí být vždy vývoj aplikace. Nejste se jistí, jestli bude o produkt vůbec zájem? Vymyslete jednoduchý způsob, jak si ověřit, že aplikace bude mít dostatečné publikum. Můžete tak ušetřit nemalé prostředky.

Jak na to?

Zjistěte, jaká je odezva na nabízenou aplikaci a jestli vaše cílová skupina vnímá problém, který řešíte, jako zásadní. Může jít například o jednoduchou landing page, dokumenty zdarma ke stažení, nebo e-mailovou kampaň.

Příklad

Pro klienta jsme potvrzovali koncept aplikace, která sloužila pro zájemce o půjčky. Vytvořili jsme web, který propagoval vznikající aplikaci a spustili PPC kampaň. Uživatele jsme požádali o zanechání e-mailu s tím, že dostanou informaci, jakmile bude aplikace v obchodech. Z objemu získaných e-mailů jsme vyhodnotili zájem o aplikaci.

Definice MVP

Máte nápady, ale aplikace má teprve hrubé obrysy? Nejste si jistí, kde je hlavní přidaná hodnota a jak má vypadat první verze aplikace? Ujasněte si nejprve, jak bude váš MVP vypadat.

Jak na to?

Ideální metodou, jak dojít rychle definice, je tzv. design sprint. Jde o týden (nebo více týdnu po sobě), kdy vedete workshopy se všemi, kteří mají k projektu co říci, prototypujete a zároveň testujete zpětnou vazbu.

Ověřený prototyp

Máte jasno, jak má vaše aplikace vypadat, ale chcete vědět, co si myslí uživatelé? Vytvořte interaktivní prototyp, který bude vypadat přesně jako finální produkt. Uspořádejte testování s potenciálními uživateli a získejte zpětnou vazbu.

Vývoj MVP

Pokud máte jasno, co se má vytvořit, a jste si jistí hodnotou aplikace a návratností vaší investice, je čas pustit se do vývoje. Co vás čeká?

  • sledování roadmapy a plánování releasů
  • účast na reviews, kde tým prezentuje práci, kterou vytvořil během sprintu
  • schvalování změn a úprav, ke kterým během vývoje dojde
  • přebírání práce, koordinace s marketingem a dalšími aktivitami

Iterativní vývoj

Již jsme zmiňovali, že je třeba být co nejvíc “lean” a postupovat po to nejmenších částech. Ve většině případů to znamená, že vypuštěním aplikace do světa nebude práce končit. Naopak, je potřeba:

  • vyhodnocovat výkon aplikace a chování uživatelů
  • udržovat roadmapu a backlog
  • plánovat další releasy
  • koordinovat práce na aplikaci s vašimi dalšími aktivitami

Propagace

Publikování aplikace pro veřejnost?

Úspěšné testování a finální dokončení vývoje aplikace jsou rozhodně důvodem k oslavě, teď je však třeba aplikaci pořádně podpořit na její cestě do světa. Propagace vaší mobilní aplikace se dá rozdělit do dvou hlavních fází – před spuštěním a po spuštění. Níže naleznete přehled základních marketingových strategií, které pomohou dostat vaši aplikaci ke koncovým uživatelům.

Působivá a funkční landing page

Zaměřte se na to, aby vaše landing page na webu zajímavým způsobem předávala všechny zásadní informace a v návštěvnících svým originálním zpracováním vytvořila zájem o aplikaci. Nabídněte lidem možnost odebírat newsletter, aby jim neuniklo datum oficiální spuštění.

Influencer marketing

Pracujte s relevantními komunitami nebo jednotlivci s velkým dosahem na sociálních sítích či vysokou čteností blogu. Nabídněte jim exkluzivní přístup do aplikace ještě před spuštěním a motivujte je pomocí odměn k napsání pozitivní recenze.

Spolupráce s médii

Načrtněte kolem aplikace silný příběh, nebo si alespoň ujasněte, jakým způsobem aplikace zásadně změní trh či usnadní život uživatelům. S tím potom oslovte média formou tiskové zprávy nebo nabídky rozhovoru. Pokud se nesetkáte s pozitivní odezvou, zvažte placené články v médiích, které mohou přivést zajímavý traffic na vaši landing page a rozšířit povědomí o nové aplikaci.

Vlastní obsah a SEO

Začněte budovat unikátní obsah, který bude užitečný pro vaši cílovou skupinu a vždy jasně navázaný na misi vaší aplikace. V první fázi se snažte skrze články nebo videa komunikovat hlavně důvod vzniku aplikace. Vytvořte zájem a získejte si pozornost. Po spuštění pak nabízejte tematicky doplňující obsah.

Viditelnost v obchodech s aplikacemi

Zajistěte, aby byla vaše aplikace dostupná a atraktivní v App Store a Google Play. Aplikujte SEO při psaní popisu aplikace. Nabídněte uživatelům lákavé a informativní screenshoty.

Guerillový marketing

Strhněte na sebe pozornost chytrou aktivací veřejnosti v ulicích. Nezapomeňte, že jakákoliv aktivita musí vždy ladit s aplikací, jejími hlavními výhodami a značkou.

Propagace po spuštění aplikace

Spuštěním aplikace to teprve začíná

Reklama na sociálních sítích

Investujte do kvalitního propagačního videa, připravte atraktivní vizuály a dobře si rozmyslete, na koho má vaše reklama v této fázi cílit. Nezapomeňte také na výrazné tlačítko vedoucí přímo do App Store nebo Google Play.

Brouzdání po sociálních sítích se z 80% odehrává na mobilních telefonech. Sociální sítě proto představují to vůbec nejlepší umístění pro vaši reklamu.

Soutěže a ceny o nejlepší aplikace

Přihlašte svou novou aplikaci do relevantních kategorií v rámci soutěží o nejlepší mobilní aplikaci.

Malé soutěže vám v případě úspěchu dají do ruky alespoň další pozitivní referenci na váš web, větší soutěže vám potom mohou přinést zajímavou publicitu a pozornost jak médií, tak samotných uživatelů.

Community management v obchodech

Udržujte živou a pozitivní konverzaci s uživateli vaší aplikace. V App Store a Google Play odpovídejte na otázky a reagujte na recenze.

K negativním komentářům se vyjádřete s vděčností a zapracujte zpětnou vazbu do další verze aplikace.

Odměny za pozvání přátel

Ze všech marketingových kanálů důvěřují lidé osobnímu doporučení od přátel nebo známých (tzv. Word of Mouth) vůbec nejvíce.

Využijte toho. Nabídněte vašim aktivním uživatelům zajímavé odměny za každého dalšího člověka, kterého k aplikaci přivedou.

Bannery a Call-to-Action tlačítka na partnerských webech

Navažte spolupráci s dalšími weby, abyste zvýšili příliv uživatelů na stránku vaší aplikace v App Store a Google Play.

Nezapomeňte, že většina prohlížení webů se dnes odehrává přes mobilní telefony. výraznou výzvu ke stažení (tzv. Call-to-Action) v podobě tlačítka vedoucího přímo do obchodu s aplikacemi. Každý, kdo uvidí banner, se pak může během dvou kliknutí stát uživatelem vaší aplikace.

Email marketing

Pokud má vaše společnost již existující mailing list, obešlete všechny současné i bývalé zákazníky poutavým emailem o spuštění aplikace.

Pracujte s vaší uživatelskou základnou a pravidelně ji oslovujte přes email ohledně novinek v aplikaci nebo doplňkových službách. Provažte svůj email marketing s vaším obsahem.

Monetizace

Jak aplikace vydělává?

Reklamy v aplikaci

Nejrozšířenější monetizační strategií po zpoplatnění aplikace jsou reklamy. Prostor ve vaší aplikaci můžete inzerentům nabídnout na bázi Cost Per Click (CPC), Cost Per Action (CPA), nebo Cost Per Thousand Impressions (CPM), která se obvykle pojí s méně agresivní reklamou ve srovnání s CPC a CPA.

Reklamní prostor v mobilní aplikaci dnes nemusíte inzerentům sami aktivně prodávat. Stačí se spojit s jednou z velkých reklamních sítí, mezi něž patří například InMobi, AdMob nebo Conversant.

Verze bez reklam

Ruku v ruce s otevřením aplikace pro inzerenty se pojí i nabídka zpoplatněné verze bez reklam. Uživatelé se mohou reklam trvale zbavit díky jednorázové platbě.

Sponzorství

Alternativou k reklamám, prodeji v rámci aplikace nebo freemium modelu může být sponzorství. Poohlédněte se po silném partnerovi, jehož oblast podnikání úzce souvisí s účelem vaší aplikace, a nabídněte mu místo hlavního sponzora.

Crowdfunding

Stejně jako počítačové hry, tenisky nebo hodinky, i mobilní aplikace všeho druhu zkouší své štěstí na crowdfundingových serverech jako Kickstarter. Pokud si chcete zachovat odstup od reklam a neradi byste aplikaci zpoplatnili, financování od uživatelů samotných by mohla být ta správná cesta.

Freemium

Podobnou strategii představuje freemium model. Aplikace je sice volně dostupná, v základní verzi ale nabízí jen omezené množství funkcí. Ty mají v ideálním případě uživatele zaujmout natolik, že ho přilákají ke koupi plné (premium) verze aplikace se všemi pokročilými funkcemi.

Platby v aplikaci

Zpoplatněné úkony nebo různé speciální předměty tvoří téměř polovinu obratu celého trhu s mobilními aplikacemi.

Jako majitel aplikace v ní můžete vytvořit jednoduchou nákupní platformu, která umožní uživateli přidat doplňkové funkce nebo různé herní vychytávky do košíku a následně za ně jednorázově zaplatit.

Doplňující produkty

Vaše aplikace nemusí sama o sobě generovat žádný zisk. Mnoho firem využívá aplikaci například jen jako marketingový nástroj pro podporu své služby nebo dalších produktů. Nezapomeňte ale v tomto případě uživatelskou základnu aplikace šikovně nasměrovat na samotnou konverzi a prodej.

Licencovaná data

Komunitní aplikace jako Waze nebo Foursquare sbírají velké množství dat, která dále nabízejí k využití svým komerčním partnerům. Díky licencování dat jsou pak nezávislé například na příjmu z reklam.