hero image

Tvorba aplikace a jiného softwaru

Od nápadu k realizaci

Máte skvělý nápad na mobilní aplikaci? Nebo potřebujete vytvořit nový software, případně rozšířit stávající informační systém o nějakou další část, ale nevíte, jak myšlenku realizovat? Pak se pohodlně usaďte a začtěte se do našeho článku, ve kterém jsme pro vás sepsali vše, co potřebujete vědět.

V článku jsme pro vás připravili doporučení, jak se připravit na vývoj softwaru. Dozvíte se, jaké kroky realizovat a čím si ušetříte zbytečné starosti. Protože postup pro zavedenou firmu, která má zkušenosti s projekty, potřebné prostředky a vybudovanou organizaci je jiný než postup pro startup, věnujeme se oběma typům zvlášť.

corporateZavedená firma

Následující řádky jsou platné pro středně velké či větší společnosti, ale mohou být inspirací i začínajícím startupům či menším firmám.

Jak vzniká záměr či potřeba
Jak vzniká záměr či potřeba
Prvotní motivace k vývoji nového software vzniká obvykle na úrovni managementu nebo vlastníků. Ať už se jedná o záměr, který vzešel ze středního managementu jako potřeba (například pro zefektivnění práce), nebo projekt vychází přímo od top-managementu či vlastníků společnosti, vždy je pro úspěšnou realizaci potřeba spojení obou těchto úrovní. Také uživatelé softwaru by měli být nedílnou součástí procesu, protože díky jejich znalostem a zkušenostem je možné předejít zbytečným chybám, průtahům a nedokonalostem při vývoji softwaru.
Kdo je hlavou projektu
Kdo je hlavou projektu
V softwarové branži je zavedený termín “project owner” neboli vlastník projektu. Ten je hlavním nositelem záměru a veškerých cílů, proč je software vyvíjen a co je jeho účelem. Ve středních firmách často projekt zastřešuje vedoucí určitého oddělení či člen top-managementu, který jej řídí a koordinuje za společnost zadavatele. Součástí týmu bývá i pracovník IT oddělení, který komplexně zná prostředí podniku z informatického hlediska a je schopen přispívat technickým pohledem.
Podpora vedení, rozpočet
Podpora vedení, rozpočet
Pokud záměr vychází z pozice středního managementu, je nezbytné zajistit podporu vedení společnosti či popř. vlastníků firmy. Oslovovat možné dodavatele bez takovéhoto souhlasu vedení bývá pouze za účelem “tržního průzkumu”, který slouží jako podklad pro jednání s managementem. Prvním krokem při prezentaci záměru projektu vedení společnosti je ideálně představení vize zlepšení fungování procesů ve firmě a vyjasnění si, zda je možnost do projektu investovat prostředky a v jaké výši. My, jako dodavatelé softwarových řešení, pokud jsme k takovému jednání pozváni, jsme již při první konzultaci obvykle schopni určit orientační cenové rozpětí zakázky, takže naši klienti vědí, s čím mohou počítat.
Popis záměru a cíle
Popis záměru a cíle
Základem úspěšné realizace projektu je co nejlepší popis záměru a cíle softwaru, který chcete vyvíjet. Nejde o technicky zaměřený (IT) popis, ale o popis z manažerského hlediska. Důležité je, aby bylo definováno nejen, CO chcete vyvíjet, ale také K ČEMU vám to bude sloužit a jaké CÍLE chceme dosáhnout. Aby dodavatel lépe pochopil záměr vyvíjeného softwaru (což je pro úspěšnou realizaci zakázky nezbytné), potřebuje od vás:
  • Manažerský popis toho, co chcete vyvíjet
  • Jasně definovaný cíl (proč to chcete vyvíjet)
  • Znalost uživatelů, jejich náplň práce v souvislosti se systémem a jejich potřeby.
Interní diskuze napříč firmou
Interní diskuze napříč firmou
Zapojení uživatelů do vývoje softwaru se nám v praxi velmi osvědčilo a lze říci, že ho považujeme za nutnost. Díky poznání kontextu a všech procesů, můžeme eliminovat riziko zbytečných komplikací při fungování budoucího softwaru.

Spolupráce s investoremPrůběh návrhu

Existují dvě možnosti. Můžete mít konzultační firmu, která vás celým návrhem provede, a vy následně předáte svému dodavateli softwaru kompletní zadání. Druhá možnost je, že vám návrh zpracuje přímo váš dodavatel.

My jakožto dodavatel upřednostňujeme druhou variantu, protože naším cílem je poskytovat klientům komplexní služby, které jsou „šité na míru“. Pokud dostaneme od klienta jeho vlastní zadání, nemusí být pro nás dostatečnou specifikací a my pak provádíme detailní analýzu i návrh znovu, abychom si byli jistí, že vyvíjíme přesně to, co klient potřebuje.

hero image
  1. Úvodní prezentace dodavateli – představení celého projektu

    Úvodní schůzka slouží k představení vaší vize. Zde byste měli dodavateli předat veškeré informace týkající se záměru, cíle, procesů a také znalosti uživatele - viz odstavec Popis záměru a cíle. Z naší praxe vyplývá, že čím podrobnější informace od klienta obdržíme, tím lépe jsme schopni určit rámcovou cenu za vyvíjený software. Naší výhodou je, že na úvodní schůzky nechodí obchodníci, ale rovnou odborníci, kteří dokážou již při tomto prvotním setkání poskytnou zpětnou vazbu a jsou tak přínosem od prvního okamžiku.

  2. Dodavatel navrhne plán projektu

    Na základě získaných informací navrhne dodavatel plán projektu a rámcovou cenu (případně cenové rozpětí). Schopnost určit cenové rozpětí je důležitá, aby bylo hned na počátku zřejmé, zda se cenové možnosti klienta shodují s finanční náročností realizovaného projektu. Kromě odhadů finanční a časové náročnosti plánujeme v tomto kroku také termíny schůzek s pracovníky, se kterými potřebujeme o projektu komunikovat (je potřeba zmapovat, o jaké pracovníky se jedná). Následně klientovi předáme informace týkající se doby projektové fáze a také odhad doby vývoje (přesný čas potřebný na vývoj jsme schopni klientům říci ve chvíli, kdy je projekt hotový.

  3. Probíhají interview, dodavatel dává dohromady požadavky

    Ve třetím kroku realizujeme naplánované schůzky a dáváme dohromady veškeré požadavky na vyvíjený software, které se průběžně odsouhlasují. Běžnou praxí je, že my na základě analýzy a diskusí s uživateli sami doporučujeme, jakou funkcionalitu by měl klient požadovat.

  4. Dodání kompletního katalogu funkčních a nefunkčních požadavků

    Dodavatel vytvoří kompletní katalog, který obsahuje veškeré funkční a nefunkční požadavky za jednotlivé oblasti systému. Funkční požadavky popisují chování vyvíjeného softwaru a bývají popisovány pomocí tzv. user stories a use cases, což zjednodušeně představuje popis chování uživatele v systému a řešení jednotlivých případů, jak je uživatel bude pomocí systému řešit.. Doplňkem k funkčním požadavkům jsou tzv. nefunkční požadavky, které popisují další vlastnosti, jako jsou například požadavky na zátěž, výkonnost apod.

  5. Detailní návrh systému

    V této fázi již navrhujeme samotný systém a tento návrh s klienty průběžně komunikujeme. Klient v rámci detailního návrhu systému obdrží také tzv. wireframy, které si můžete představit jako nákres jednotlivých obrazovek vyvíjeného softwaru. Díky wireframe má klient možnost vidět například rozložení prvků a funkcionalitu budoucího softwaru. Detailní projekt obsahuje kompletní popis navrhovaného softwaru vč. příslušného katalogu požadavků a případných diagramů, které bývají běžnou součástí projektu.

  6. Zpětná vazba k návrhu systému

    Zpětná vazba je důležitá nejen od manažera projektu, ale také od příslušných uživatelů. Mohlo by se zdát, že stačí účast manažera projektu, ale v praxi se setkáváme s tím, že manažer nemá zcela přesné povědomí o činnostech různých pracovníků a přesné informace o procesu (z pochopitelných důvodů). Proto je třeba velmi dobře zmapovat, kdo všechno by se měl zpětné vazby účastnit, aby byla co nejpřínosnější. Existují případy, kdy má manažer perfektní povědomí o procesech a činnostech pracovníků, pak není potřeba, aby se zpětné vazby účastnil ještě někdo jiný.

    Pokud je software vyvíjen pro zaměstnance, zpětná vazba se získává snadno. Pokud se ale řeší například tvorba aplikace pro uživatele, který nesedí ve firmě (pro zákazníka apod.), doporučujeme našim klientům, aby si vzali návrh a otestovali ho přímo s potenciálními uživateli. Získání zpětné vazby od uživatelů je důležité získat ještě před tím, než půjde software do vývoje.

  7. Prototyp a uživatelské testování

    Na základě zpětné vazby bývá vytvořen prototyp, který je určený k uživatelskému testování. Existují různé fáze prototypu. Buď může být vytvořen v rámci wireframů – klient vidí obrázky, může si kliknout na tlačítko a má možnost vidět, jak bude systém/aplikace vypadat. Nebo je vytvořen živý prototyp, který už vypadá a také se chová jako aplikace/systém, jen nepracuje s ostrými daty. Když uživatel daný software přímo vidí a event. si jej může také osahat, lépe a snadněji identifikuje, co potřebuje jinak (případně jaké funkce postrádá). Díky prototypu se tak dá předejít mnoha problémům, které by mohly vzniknout až po nasazení softwaru. V praxi se stává, že uživatelé zvyklí na určitý způsob fungování softwaru se brání změnám, které jsou spojeny s učením se něčeho nového. Abychom toto zmírnili, snažíme se aplikovat uživatelskou adaptaci, jejíž součástí je aktivní využití prototypu. Máme dobré zkušenosti s tím, že když jsou uživatelé zapojeni do vývoje a testování nového softwaru, přechod na nový systém je snazší a bez zbytečných třecích ploch. Ideální je, pokud jsou uživatelé součástí vývoje již ve fázi projektu, kde mají možnost vyjádřit, co jim ve stávajícím softwaru chybí nebo nevyhovuje.

  8. Stanovení harmonogramu a ceny

    V posledním kroku návrhu je stanoven harmonogram vývoje daného softwaru, cena vývoje softwaru a také například plán migrace dat i případné organizační změny.

startupJak by měl popsat zadání startup

Pro zjednodušení budeme u níže uvedených informací používat jako příklad vývoj mobilních aplikací, ale informace jsou platné pro vývoj jakéhokoliv softwaru. Než se dostaneme ke konkrétním krokům, které vás provedou vytvořením správného zadání, budeme se chvilku věnovat rozdílům mezi jednotlivými typy startupů.

V praxi se setkáváme se třemi základními typy klientů:

Zkušený byznysmen
Nadšenec
První typ klienta bychom pracovně pojmenovali jako „nadšenec“. Tento klient má svůj koníček, který přetransformoval ve fungující byznys. Vymyslel ke svému podnikání mobilní aplikaci, kterou má v plánu realizovat. Má vizi, velké nadšení, ale menší finanční prostředky a podnikatelské zkušenosti. Jeho vize je vývoj kompletní aplikace se všemi funkcionalitami, kterou následně uvede na trh.

My našim klientům tohoto typu radíme, aby nečekali na finální/kompletní verzi vyvíjené mobilní aplikaci, ale aby dali uživatelům otestovat již MVP (minimální verze produktu). Testováním MVP totiž klient získá důležitou zpětnou vazbu od uživatelů, díky které bude vědět, zda je aplikace žádaná či nikoliv. Další výhodou tohoto kroku je generování finančních prostředků, které mohou být investovány do dalšího rozvoje aplikace. Pokud klient bude čekat s testováním až na finální podobu mobilní aplikace, existuje reálné riziko, že dojdou finanční prostředky vložené do vývoje softwaru, aplikace se nakonec nespustí a vše vyjde v niveč. Aby k tomu nedošlo, dáváme našim klientům zpětnou vazbu, kdy je vhodný čas přejít k testování MVP. Vzhledem k výše uvedenému doporučujeme naslouchat doporučením vývojářů, kteří mají v oblasti nedocenitelné zkušenosti a také nepodceňovat zpětnou vazbu od uživatelů, která je pro úspěch vyvíjeného softwaru klíčová.
Zkušený byznysmen
Zkušený byznysmen
Druhý typ klienta, se kterým se v praxi setkáváme, bychom pojmenovali jako „zkušený byznysmen“. Tento klient má vizi, dobrý nápad, ví přesně, co chce a má velké zkušenosti v byznysu. Také má k dispozici dostatečný finanční kapitál, který mu generuje stabilní a úspěšná firma.
Spolupráce s investorem
Spolupráce s investorem
Třetí typ klienta bývá typickým představitelem startupu v pravém slova smyslu. Typicky se jedná o nadšence, kteří mají skvělý nápad a chtějí projekt dotáhnout do fáze, kdy jej budou moci nabídnout investorovi. Případně je možná druhá varianta, kdy nemají vůbec žádný finanční kapitál a mají svého investora od začátku realizace projektu. Investoři bývají pro startupy velmi přínosní nejen pro svůj vložený kapitál, ale také pro své podnikatelské zkušenosti. Obvykle jsou to podnikatelé, kteří v byznysu umí chodit, umí se správně rozhodovat a mají jasný byznys plán. Kromě svých zkušeností mohou nabídnout také dobré rady a konstruktivní zpětnou vazbu.
  1. Vše o nápadu
    Vše o nápadu
    Teď už se dostáváme k tomu, čemu musíte věnovat pozornost, aby byl vývoj vašeho softwaru úspěšný a bez zbytečných průtahů nebo dokonce ztrát. Čím detailněji popíšete váš nápad, tím lépe. Kromě nápadu jako takového by měly být také definovány jeho přínosy a v neposlední řadě také zdroj ziskovosti. Otázky, které vám pomohou definovat přínosy: Komu a v čem váš software pomůže? Pro koho je určený? Důležité otázky týkající se ziskovosti: Kde, kdy a kolik se vám začne z vaší investice vracet? Co se týče motivace realizace vašeho nápadu, nemusí jím nutně být generování zisku. Vaším cílem může být získání (generování) uživatelů a penetrace na trhu pro možný pozdější odprodej projektu. Mobilní aplikace s počtem uživatelů získává na hodnotě, takže jí od vás může následně někdo koupit a doplnit tak své stávající portfolio. Všechny tyto informace spojené s vaším nápadem je potřeba sepsat, aby bylo možné s nimi pracovat a maximálně je vytěžit.
  2. Znalost budoucích uživatelů
    Znalost budoucích uživatelů
    Bez znalosti budoucích uživatelů je cesta k úspěchu velmi trnitá (ne-li přímo nemožná). Pokud se v dané oblasti pohybujete dostatečně dlouho, znáte chování i potřeby uživatelů, máte o starost méně. Stačí všechny tyto znalosti sepsat. Jestliže o budoucím uživateli nemáte příliš velké povědomí, je třeba o něm veškeré potřebné informace zjistit. Pokud byste začali vyvíjet například mobilní aplikaci pro uživatele, o kterých toho moc nevíte, vystavujete se riziku, že o váš nápad nebude zájem – ne proto, že nebyl dobrý, ale protože způsob jeho realizace nebude vyhovující pro vaši cílovou skupinu.
  3. Znalost trhu
    Znalost trhu
    Se znalostí trhu je to stejné jako se znalostí budoucích uživatelů. Větší šanci na úspěch má ten, kdo se pohybuje na trhu mnoho let a má znalost daného odvětví. Pokud máte s trhem jen minimální zkušenost (nebo žádnou), doporučujeme si přizvat někoho, kdo potřebné znalosti a zkušenosti má.
  4. NDA (non-disclosure agreement)
    NDA (non-disclosure agreement) neboli dohoda o mlčenlivosti
    Dohoda o mlčenlivosti neboli NDA může být ožehavou částí spolupráce mezi zadavatelem a dodavatelem. Není ideální chtít po vašem potenciálním dodavateli, aby podepisoval NDA, které obsahuje přemrštěné požadavky či smluvní pokuty. Tím si potenciálního dodavatele odradíte hned v úvodu, protože žádný dodavatel nebude chtít podstupovat takovéto podmínky, navíc když se jedná o fázi, kdy spolupráce není ještě zcela zaručena. Tím neříkáme, že nemáte NDA řešit vůbec. Například u nás v iQuestu máme pro naše klienty zpracovanou standardní dohodu o mlčenlivosti, kterou vytvořili naši právní zástupci a kterou běžně podepisujeme.
  5. Konkurenční analýza
    Konkurenční analýza
    Pomocí konkurenční analýzy je možné popsat výhody navrhovaného softwaru oproti systému, který vytvořila konkurence. K tomu můžete využít např. jednoduchou tabulku, která má na ose X vlastnosti vašeho budoucího systému a na ose Y má seznam konkurenčních produktů. Takto si přehledně definujete, kde se vlastnosti prolínají, které jsou lepší nebo naopak horší oproti konkurenci.

    Tento nástroj vám také pomůže eliminovat případné riziko zbytečně vynaložených prostředků. Může se totiž stát, že na základě konkurenční analýzy zjistíte, že konkurence už takový systém vyvinula a že nápad není tak inovativní, jak se mohlo na první pohled zdát. Právě díky konkurenční analýze tuto skutečnost zjistíte dříve, než investujete do samotného vývoje softwaru.
  6. Úvodní odhad nákladů na vývoj
    Úvodní odhad nákladů na vývoj
    V tomto kroku přichází na řadu odhad nákladů na vývoj softwaru/aplikace. Dodavatel vám v této chvíli s největší pravděpodobností nebude schopen říci přesnou částku, ale sdělí vám rozpětí, ve kterém se budou náklady na vývoj pohybovat. Budete mít tedy jasnou představu o tom, zda se budou pohybovat v řádech statisíců nebo milionů. Čím preciznější zadání a detailnější popis všech aspektů týkajících se softwaru budete schopni svému dodavateli dát, tím lépe a přesněji bude schopen odhadnout výši nákladů na vývoj vašeho softwaru.
  7. Popis marketingu a tržní penetrace
    Popis marketingu a tržní penetrace
    Velmi důležité je také vědět, jakým způsobem budete aplikaci šířit. Samozřejmě by bylo skvělé, kdyby stačilo aplikaci vyvěsit na Google Play a ona by byla k dispozici po celém světě, ale tak snadné to není. Mezi prostředky pro vývoj mobilních aplikací patří i náklady na marketing, protože rozšířit aplikaci po celém světě je finančně nákladná záležitost. S rozšířením do dalších zemí totiž mimo jiné souvisí potřeba jazykových mutací a také zákonné rozdíly v různých zemích (týkající se například sběru osobních údajů). Proto našim klientům doporučujeme zvolit postupné šíření aplikace – nejdříve v rámci města, pak regionu a následně na úrovni celého státu. S tímto procesem také souvisí nutnost naplánovat náklady na marketing a promyslet marketingovou strategii, která vaši aplikaci dostane k cílové skupině uživatelů.
  8. MVP (minimal viable product) – minimální produkt
    MVP (minimal viable product) – minimální produkt
    Je možné (někdy přímo nezbytné) začít s málem. Tím málem je MVP - produkt s nejmenší možnou funkcionalitou. V praxi to vypadá následovně: Je vytvořena aplikace (MVP) jejíž vývoj stojí například 500 tis. Kč. Tato aplikace se dá k dispozici uživatelům, díky čemuž dojde k ověření, zda mají uživatelé o produkt zájem. Dalším přínosem je získání cenné zpětné vazby. Pokud se aplikace osvědčí, přistoupí se k dovyvinutí dalších funkcionalit. Tento postup našim klientům vřele doporučujeme, protože díky němu se minimalizují rizika spojená s neúspěchem dané aplikace. Více o tom, proč váš startup potřebuje MVP, se dočtete v článku na našem blogu.
  9. Návrh verzí – postupný vývoj
    Návrh verzí – postupný vývoj
    Nasazení MVP proběhlo úspěšně, o vaši aplikaci je zájem a tak přichází na řadu rozšiřování vaší aplikace o další funkcionality. I v tomto kroku doporučujeme našim klientům, aby vývoj aplikace pokračoval ve verzích (postupné rozšiřování) a ne celé najednou. Důvody jsou stejné jako u nasazení minimálního produktu.
  10. Agilní vývoj
    Agilní vývoj
    Agilní vývoj softwaru probíhá v tzv. sprintech (celý vývoj je rozdělen do několika sprintů/cyklů). Po dokončení každého sprintu přichází na řadu odsouhlasení klienta před tím, než se začne pracovat na dalším cyklu. Díky tomu je snadné měnit požadavky na vývoj softwaru na základě zpětné vazby od uživatelů. To je hlavní důvod, proč našim klientům doporučujeme tento model vývoje.
  11. Důraz na uživatelské testování
    Důraz na uživatelské testování
    Uživatelé jsou ti, kteří v konečné fázi rozhodují o úspěchu či neúspěchu vyvíjené mobilní aplikace. To je také důvod, proč klademe velký důraz na uživatelské testování. Díky uživatelskému testování máte možnost získat zpětnou vazbu, díky které můžete pokračovat vývoji úspěšné aplikace, která vám přinese kýžené výsledky.
  12. Standardní vývoj + marketing
    Standardní vývoj + marketing
    Vývoj aplikace je proces, který vám přinese realizaci vašeho snu / skvělého nápadu. Hotovou aplikací celý proces nekončí, protože neméně důležité je, aby se dostala k uživatelům. Proto je nezbytné mít připravenou marketingovou strategii. Bez ohledu na to, jaké marketingové kanály (reklama ve storech, PPC, tisk, televize apod.) využijete, musíte mít kromě strategie také jasně definovaný rozpočet na marketingové aktivity.

Věříme, že díky našemu článku budete o krok blíže k úspěšné realizaci vaší vize. Pokud potřebujete k tématu více informací, radu nebo jakoukoliv pomoc, neváhejte se na nás obrátit. Rádi vám podáme naši pomocnou ruku při řešení vývoje vašeho softwaru.

Provedeme Vás vývojem od začátku až do úspěšného konce

Návrh produktu, ověření záměru, konkurenční analýza

Návrh produktu, ověření záměru, konkurenční analýza

Buďte s námi od prvního nápadu. Máme zkušenosti, máme nápady, orientujeme se.

Funkčnost, design,
uživatelský komfort

Funkčnost, design, uživatelský komfort

Děláme software funkční, krásný a snadno použitelný. Vše pro Váš úspěch.

Zkušený a sehraný
vývojářský tým

Zkušený a sehraný vývojářský tým

Specialisté na architekturu, backend, frontend, layout a database. Aby Váš software byl robustní a stabilní.

SEO a online propagace
Vašeho produktu

SEO a online propagace Vašeho produktu

Pomůžeme Vám s prosazením Vašeho online produktu na trhu.

Vytvoříme vám informační systém na míru.
Rychlost, kvalita a 18 let zkušeností.
Získat nabídku