Keď klient príde prvýkrát s nápadom na webovú aplikáciu, takmer vždy predpokladá, že ide hlavne o programovanie. Príde so zadaním, vývojár si sadne k počítaču a za pár týždňov je hotovo. Realita je iná — kódovanie tvorí približne tretinu celého procesu, zvyšok sú veci, ktoré bývajú rovnako dôležité a bez ktorých by samotný kód nestál za nič. Tento článok prejde všetky fázy od prvého stretnutia cez architektúru, dizajn a testovanie až po spustenie a dlhodobú prevádzku.
Fáza 1: Discovery — čo chcete a prečo
Discovery je najdôležitejšia fáza celého projektu. Ak do nej vstúpite s nejasným zadaním, všetko, čo príde potom, bude stáť na zlých základoch.
V rámci discovery sa rieši:
- Cieľ aplikácie — čo má aplikácia robiť, pre koho a prečo práve teraz
- Používatelia — kto ju bude používať, ako technicky zdatní sú, čo od nej očakávajú
- Rozsah — čo je nevyhnutné pre spustenie (MVP) a čo môže prísť neskôr
- Integrácie — prepojenie s existujúcimi systémami (ERP, CRM, platobné brány, API tretích strán)
- Bezpečnostné a regulačné požiadavky — GDPR, odborové normy, interné politiky
Ako klient by ste mali prísť pripravení s: popisom problému, ktorý aplikácia rieši, prehľadom existujúcich systémov, s ktorými sa má prepojiť, a ideálne s popisom toho, ako aktuálny proces prebieha — aj keď manuálne. Čím presnejšie popíšete "ako to teraz robíme", tým lepšie.
Discovery trvá typicky 1–3 týždne a výstupom je dokument s požiadavkami — nie wireframy, nie kód, len presný popis toho, čo sa bude stavať a čo nie.
Príklad z praxe: Výrobná firma Kovostav s.r.o. prišla s požiadavkou na "portál pre subdodávateľov". Po dvoch dňoch discovery vyšlo najavo, že portál má riešiť päť rôznych problémov naraz — schvaľovanie dokumentov, sledovanie zákaziek, fakturácia, dochádzka a komunikácia. Tri z piatich problémov bolo možné vyriešiť konfiguráciou existujúceho ERP. Portál sa nakoniec zameral len na schvaľovanie dokumentov a komunikáciu, vývoj bol trikrát lacnejší a rýchlejší, ako bolo pôvodne plánované.
Fáza 2: Architektúra a výber technológií
Keď viete, čo budete stavať, musíte rozhodnúť, ako sa to bude stavať. Toto rozhodnutie ovplyvní vývoj na roky dopredu — zlá architektúra vás bude prenasledovať každým sprintom.
Čo sa rozhoduje v architektúre
Databáza: Relačné databázy (PostgreSQL, MySQL) pre štruktúrované dáta s jasnými vzťahmi. Dokumentové databázy (MongoDB) pre flexibilné schémy. Redis pre cache a session storage. Väčšina aplikácií potrebuje kombináciu.
Backend: Node.js, Python (Django/FastAPI), PHP (Laravel), Go, .NET — každá technológia má silné stránky a záleží na type aplikácie, výkone, dostupnosti vývojárov a existujúcej infraštruktúre.
Frontend: Server-side rendering (Next.js) pre SEO a rýchle načítanie, SPA (React, Vue) pre interaktívne aplikácie, alebo kombinácia oboch prístupov.
Infraštruktúra: Vlastný server, cloud (AWS, Azure, Google Cloud), alebo PaaS (Vercel, Railway). Záleží na požiadavkách na dostupnosť, škálovanie a rozpočet.
Praktický tip: Nevolte technológiu, ktorá je najmodernejšia, ale technológiu, na ktorej máte vývojárov a pri ktorej viete, že za tri roky budete schopní nájsť ďalšieho. Aplikácie sa vyvíjajú — tím a jazyk zostávajú.
Výstupom architektonickej fázy je technická dokumentácia — diagram komponentov, schéma databázy, popis API a voľba zásobníka.
Fáza 3: Dizajn a UX
Dizajn nie je o tom, aby aplikácia vyzerala pekne. Dizajn je o tom, aby sa dala používať. Zlé UX skomplikuje prijatie aplikácie používateľmi viac ako akákoľvek chyba v kóde.
Fáza dizajnu prebieha v niekoľkých krokoch:
- Wireframy — jednoduché schematické nákresy bez farieb a detailov. Riešia layout, hierarchiu informácií a tok používateľa.
- Používateľské toky — mapy toho, ako používateľ prechádza aplikáciou od vstupu k cieľu.
- Mockupy — vizuálne verné návrhy s farbami, typografiou a ikonami, ale stále bez interaktivity.
- Prototyp — klikateľný prototyp, na ktorom možno otestovať použiteľnosť ešte pred napísaním riadku kódu.
Táto fáza je momentom, keď by klient mal byť najviac zapojený. Je nekonečne lacnejšie presunúť tlačidlo v mockupe ako prepísať hotovú komponentu.
Príklad z praxe: Logistická firma Tranzit CZ požadovala internú aplikáciu pre dispečerov. V mockupoch vyzerala hlavná obrazovka prehľadne. Pri testovaní prototypu s reálnymi dispečermi sa ukázalo, že dispečer priemerne otvorí 12 zákaziek za hodinu a potrebuje vidieť ich stav naraz, nie sekvenčne. Pridali sme Kanban view skôr, ako padol prvý riadok kódu — ušetrilo to zhruba 40 hodín vývoja.
Fáza 4: Vývoj v sprintoch
Samotný vývoj prebieha v iteráciách — sprintoch, ktoré trvajú typicky 1–2 týždne. Na konci každého sprintu je niečo funkčné, čo možno vidieť a otestovať.
Ako sprint vyzerá v praxi
- Plánovanie — tím vyberie z backlogu funkcie, ktoré sa budú v danom sprinte vyvíjať
- Vývoj — backend a frontend pracujú paralelne, priebežne sa integrujú
- Demo — na konci sprintu klient vidí, čo bolo hotové, a dáva spätnú väzbu
- Retrospektíva — tím hodnotí, čo išlo dobre a čo nie
Ako klient by ste mali: byť dostupní pre otázky (ideálne do 24 hodín), prichádzať na demá pripravení a s kontextom, a nesústreďovať sa na kozmetické detaily v prvých sprintoch — tie sa riešia na konci.
Kľúčové je, že backlog nie je zákon. Ak sa počas vývoja ukáže, že určitá funkcia dáva menej zmysel ako pôvodne, upraví sa priorita. Agilný vývoj neznamená chaos — znamená schopnosť reagovať na nové informácie.
Praktický tip: Chcite prístup do testovacieho prostredia počas celého vývoja, nielen na demá. Čím skôr vidíte reálnu aplikáciu, tým skôr odhalíte nesúlad medzi vašou predstavou a realitou.
Fáza 5: Testovanie
Testovanie nie je finálna kontrola pred spustením. Prebieha priebežne počas celého vývoja.
Typy testovania
| Typ testu | Čo testuje | Kedy prebieha |
|---|---|---|
| Unit testy | Jednotlivé funkcie izolovane | Priebežne pri vývoji |
| Integračné testy | Komunikácia medzi komponentmi | Po každom merge |
| End-to-end testy | Celé používateľské toky v prehliadači | Pred každým releasom |
| Používateľské testovanie | Či reálni používatelia aplikáciu pochopia | Po dokončení UI |
| Bezpečnostné testovanie | Zraniteľnosti, autorizácia, injekcie | Pred spustením |
| Výkonnostné testovanie | Správanie pod záťažou | Pred spustením |
UAT (User Acceptance Testing) je fáza, keď klient a vybraní kľúčoví používatelia systematicky testujú aplikáciu oproti pôvodným požiadavkám. Trvá typicky 1–2 týždne a je podmienkou pre prechod do produkcie.
Príklad z praxe: Účtovná aplikácia pre firmu FinServis Praha prešla interným testovaním bez problémov. Pri UAT si finančný riaditeľ všimol, že import faktúr od konkrétneho dodávateľa generuje duplicitné záznamy kvôli špecifickému formátu dát. Problém by sa v produkcii prejavil prvého dňa a dáta by museli byť ručne opravované. Odhaliť ho v testovacej fáze stálo 3 hodiny — opraviť ho v produkcii by stálo 3 dni a nervovú záťaž celého účtovného oddelenia.
Fáza 6: Nasadenie a spustenie
Nasadenie nie je prepnutie jediného vypínača. Je to riadený proces, ktorý minimalizuje riziko.
Čo sa deje pred spustením
CI/CD pipeline — automatizovaný reťazec, ktorý pri každej zmene kódu automaticky spustí testy, zostaví aplikáciu a nasadí ju do staging prostredia. Nikto nedeployuje ručne cez FTP.
Staging prostredie — identická kópia produkcie, na ktorej prebieha finálne testovanie. Staging musí mať rovnakú konfiguráciu, databázovú schému aj dáta (anonymizované) ako produkcia.
Go-live checklist zahŕňa:
- Záloha databázy pred spustením
- Pripravený rollback plán (ako sa vrátiť späť, ak niečo zlyhá)
- Monitorovacie nástroje aktívne od prvého okamihu
- Notifikácie pre tím pri chybách
- Otestované SSL certifikáty a DNS konfigurácia
- GDPR a cookies compliance
Praktický tip: Spúšťajte vo štvrtok ráno, nie v piatok poobede. Máte celý deň na reakciu na prípadné problémy s celým tímom v dosahu.
Fáza 7: Prevádzka a iterácia
Spustenie nie je koniec projektu — je to začiatok jeho života. Každá aplikácia potrebuje starostlivosť po spustení.
Monitoring sleduje výkon, dostupnosť, chyby a správanie používateľov. Nástroje ako Sentry, Datadog alebo vlastné dashboardy dávajú okamžitú viditeľnosť do toho, čo sa deje.
Bug fixy po spustení sú nevyhnutné. Žiadna aplikácia nie je bez chýb — dôležité je mať zavedený proces, ako ich reportovať, prioritizovať a opravovať.
Iterácie prichádzajú na základe reálnych dát o používaní. Funkcie, ktoré ste považovali za najdôležitejšie, môžu byť málo využívané. Funkcie, ktoré ste odkladali, sa ukážu ako kritické. Dáta z produkcie sú najcennejším vstupom pre ďalší rozvoj.
Dobrá aplikácia sa nikdy nedokončí — len sa presúva z fázy "vývoja" do fázy "kontinuálneho zlepšovania".
Časové a cenové porovnanie
Nižšie je orientačný prehľad. Skutočné hodnoty závisia od konkrétnych požiadaviek, integrácie s existujúcimi systémami a zvoleného technologického zásobníka.
| Typ aplikácie | Popis | Dĺžka vývoja | Orientačná cena |
|---|---|---|---|
| Jednoduchá aplikácia | CRUD, 3–5 obrazoviek, jedna používateľská rola | 6–10 týždňov | 150 000–350 000 Kč |
| Stredne zložitá aplikácia | Viac rolí, integrácie, reporting, notifikácie | 3–6 mesiacov | 400 000–900 000 Kč |
| Komplexná / enterprise | Komplexný workflow, viac integrácií, vysoká dostupnosť | 6–18 mesiacov | 1 000 000 Kč a viac |
Tieto ceny zahŕňajú discovery, dizajn, vývoj, testovanie a spustenie. Nezahŕňajú ročnú prevádzku, hosting a priebežné iterácie po spustení.
Praktický tip: Podceňovaný rozpočet je najčastejšou príčinou neúspešných projektov — nie zlý kód, nie zlá technológia. Radšej aplikáciu zmenšite na solidné MVP a iterujte, ako prísť s prestrelením zadaním a nedostatkom peňazí v polovici projektu.
V BASAD Studios sprevádzame klientov celým procesom vývoja webových aplikácií — od prvej analýzy cez dizajn a vývoj až po spustenie a prevádzku. Ak plánujete webovú aplikáciu a chcete vedieť, ako k tomu pristúpiť, ozvite sa nám alebo sa pozrite na našu službu webové aplikácie.
