V súčasnosti sa väčšina spoločností snaží pochopiteľne digitalizovať svoju prevádzku či pripravovať pre svojich klientov prívetivé mobilné aplikácie, ktoré im zjednodušujú vykonávanie rôznych administratívnych úkonov či prinášajú hodnotu navyše pre ich klientov. Rozhodnutie pre vytvorenie nového softvéru či aplikácie prebieha na viacerých úrovniach, pričom väčšinou končí až pri samotnom majiteľovi spoločnosti, ktorý musí s takýmto nákladom súhlasiť. Tu vyvstáva podstatná otázka – koľko stojí vývoj aplikácie či vlastného softvéru?
Ako prebieha vývoj
Pred tým, ako sa dostaneme k samotnej cene aplikácie či softvéru je dôležité si povedať, čo takýto vývoj softvéru obnáša, koľko ľudí sa na ňom zúčastňuje a ako dlho môže trvať. Vývoj každej aplikácie je individuálny a špecifický, preto budú uvedené informácie zovšeobecnené a zjednodušené za účelom lepšieho pochopenia.
Na samotnom začiatku rozhodnutia pre vytvorenie vlastného softvéru stojí klient, s ktorým je potrebné nadviazať kontakt a dospieť k finálnemu rozhodnutiu, že do vývoja ideme spolu. Počas prijímania rozhodnutia, komunikácie ohľadom doby doručenia a očakávanej ceny za vývoj, či diskusie ohľadom Zmluvy o dielo a licenčnej zmluvy, ktorú v accute poskytujeme našim klientom pri každej zákazke prichádza klient do kontaktu s osobou zodpovednou za predaj a vzťah s klientom. Pre samotné nacenenie zákazky je potrebné, aby sme zadaniu rozumeli na 100% a dokázali tak odhadnúť jej prácnosť čo najpresnejšie. Preto sa vždy pri prvých stretnutiach s klientom pýtame dodatočné otázky k zadaniu – a to aj také, ktoré sa klientom môžu zdať na prvý pohľad samozrejmé, no mnohokrát nás privedú k diskusii, ktorá pomôže aj samotnému klientovi vyjasniť si niektoré otázky.
V rámci špecifikácie jednotlivých požiadaviek na funkcionalitu či dizajn softvéru postačujú vačšinou 2 až 3 hodiny spoločnej diskusie či online meetingu s klientom, v rámci ktorých dokážeme plne navnímať potrebu klienta a pochopiť tak účel, ktorý má softvér či aplikácia spĺňať. Rozsah stretnutí záleží najmä na zložitosti zadania, pri komplikovaných niekoľko mesačných zadaniach prebiehajú stretnutia s klientom na pravidelnej týždennej alebo dvojtýždennej báze. Súčasťou takýchto stretnutí je aj projektový manažér alebo biznis architekt, ktorý je akýmsi prostredníkom medzi klientom a samotnými programátormi, ktorí budú aplikáciu vyvíjať. Biznis architekt po úplnom pochopení zadania dokáže projekt popísať programátorom v „ich jazyku“ – viac štrukturovane, rozdelený na jednotlivé logické časti s vysvetlením jednotlivých špecifík a zároveň aj napríklad prirovnať ho už k existujúcim riešeniam pre lepšie pochopenie toho, čo ich čaká. Biznis architekt je zároveň počas celej doby vývoja k vývojárom veľmi blízko a sleduje, ako vývoj postupuje a či prototyp aplikácie obsahuje všetky požiadavky klienta v takej funkcionalite, v akej si ich objednal.
Biznis architekt či projektový manažér je veľkým prínosom aj pre klienta. Musíme sa totiž priznať, že komunikácia s programátormi je mnohokrát zložitá a svojská 🙂 A práve biznis architekt či projektový manažér sa musí vysporiadať na jednej strane s klientskymi požiadavkami a na druhej strane s programátormi, pretože inak by táto komunikácia nebola veľmi efektívna.
Chcete sa poradiť ohľadom vašej požiadavky na aplikáciu? Kontaktujte nás na +421 910 157 410 alebo sales@accute.sk.
Samotný vývoj
Samotný vývoj akejkoľvek aplikácie je realizovaný na viacerých úrovniach, prostredníctvom čoho môžeme rozdeliť aj zameranie programátorov. Na najbežnejšie rozdelenie sa môžeme pozrieť z pohľadu štruktúry aplikácie, a to na Frontend a Backend. Frontend programátori sa venujú vývoju užívateľského rozhrania, tzv. GUI (graphical user interface) – teda tej vrste aplikácie, ktorá tvorí „vrch/predok“ aplikácie. Backend programátori sa venujú vývoju tej časti aplikácie, ktorú užívatelia nevidia, teda to „pozadie“, ktoré tvorí hlavnú logiku aplikácie, vykonáva náročné ulohy, komunikuje s databázou a podobne. V prípade, že programátor ovláda vývoj oboch častí, teda užívateľského rozhrania a dokáže vyvíjať aj backend, jedná sa o tzv. Fullstack developer-a.
Všeobecným pravidlom je, že na vývoji aplikácie či softvéru sa zúčasťnujú viacerí programátori práve z dôvodu vyššie popísaného rozdelenia. V prípade vývoja mobilnej aplikácie či webovej aplikácie sa venuje jeden tím vývoju rozhrania, ktoré bude vidieť užívateľ, druhý tím sa venuje vývoju backend štruktúry v podobe API, prostredníctvom ktorých bude aplikácia komunikovať s databázou. Ďalší tím sa venuje návrhu databázy a tomu, ako budú všetky potrebné dáta uchovávané a zároveň aj dopytované aplikáciou či ňou aj menené pri určitých operáciách. Nemôžeme zabudnúť ani na testerov, ktorí testujú aplikáciu počas celej doby vývoja a následne aj pred nasadením ku klientovi, prípadne pred zverejnením na AppStore či Google Play.
Tak ako vo všetkých spoločnostiach a organizáciách musí tento živý organizmus, zložený z ľudí, spolu fungoavť a dopĺňať sa tak, aby dokázali pre klienta priniesť želaný výsledok v požadovanej kvalite a v stanovenom čase. Cena akéhokoľvek softvéru preto musí zohľadňovať cenu práce všetkých zúčastnených, spolu s bežnými prevádzkovými a administratívnymi nákladmi, nákladmi na záruku softvéru a v neposlednom rade aj zisk spoločnosti samotnej.
Tak koľko?
Koľko teda stojí ten vývoj aplikácie?
Každú aplikáciu, ktorú v accute vyvíjame alebo sme vyvíjali bola nacenená individuálne v závislosti od požiadavky klienta. Existujú však odhadované cenové rozpätia, v rámci ktorých sa všeobecne vývoj aplikácií či softvéru pohybuje.
od 11 000€
- iOS či Android aplikácia
- Smartfón aj tablet
- Prístup ku kamere
- Vytváranie a editácia dát
- Prihlásenie a registrácia
- Jednoduchý dizajn
- Návrh databázy
- Bezpečné API na pripojenie
- Zverejnenie v obchode
od 7 500€
- macOS či Windows
- Vytváranie a editácia dát
- Prihlásenie a registrácia
- Jednoduchý dizajn
- Grafy a tabuľky
- Distribúcia inštalačného súboru
- Návrh jednoduchej databázy
od 10 000€
- Responzívny dizajn
- Vytváranie a editácia dát
- Prihlásenie a registrácia
- Grafy a tabuľky
- Návrh jednoduchej databázy
- Bezpečné API na pripojenie
Uvedené cenové rozpätia sú maximálne zovšeobecnené pre jednoduchý prehľad a predstavu toho, kde cena za vývoj aplikácií začína. Pridávaním špecifických funkcionalít ako napríklad prípajanie na bankové účty, komunikácia s telefónnou bránou, generovanie veľkého množstva špecifických dokumentov, implementácia AI modelov či akýchkoľvek iných požiadaviek cena za vývoj pochopiteľne rastie. Dobrým zvykom je aj priebežný či agilný vývoj, kedy sa s klientom nedohodne konečná cena za aplikáciu, no dohodne sa mesačný paušál vo forme SLA a aplikácia sa vyvíja priebežne v čase. Je to výhoda aj pre klienta, pretože sa môže po určitom čase rozhodnúť, že dodávateľa vymení či vývoj úplne zastaví. Na druhej strane to môže byť výhodou aj pre dodávateľa, nakoľko je väčšia pravdepodobnosť, že pri vývoji neutrpí stratu z dôvodu nesprávneho nacenenia zákazky a zlého odhadu jej náročnosti.
Ceny všeobecne známych aplikácií ako Spotify, Duolingo či Strava sa pohybujú v desiatkach až stovkách miliónov USD za niekoľko rokov vývoja spolu s ich dizajnom a neustálym vylepšovaním a pridávaním funkcionalít (samozrejme bez započítania samotného obsahu, ktoré tieto aplikácie poskytujú).
Preto predstava o vlastnej sociálnej sieti do 15 000 EUR či o alternatíve k bankám alebo platobným spoločnostiam za 20 000 EUR nie je realistická a vyžaduje opakované a dôsledné premyslenie biznis plánu a dostupného rozpočtu naň.
Ako ďalej po vývoji aplikácie
Je prirodzené, že po ukončení vývoja aplikácie či softvéru na mieru vyvstanú časom od klienta dodatočné požiadavky na nové funkcionality či úpravu tých existujúcich. Špecifikácia pri vývoji je jedna vec, no samotné používanie aplikácie už v praxi so sebou prináša nápady na zlepšenie či zjednodušenie funkcionalít s čím my ako dodávateľ aj počítame. Preto je pravidlom, že s našimi klientmi uzatvárame aj servisnú zmluvu, tzv. SLA-čku (Service Level Agreement), v rámci ktorej si klienti predplatia určitý počet servisných hodín do mesiaca, ktoré môžu použíť aj na vývoj nových funkcionalít či všeobecnú podporu pri prevádzke vlastného systému.
Výhodou SLA je dostupnosť našich programátorskych kapacít v dohodnutom rozsahu a termíne a vďaka tomu aj nižšia hodinová sadzba za programátorov. Výhodnejšiu cenu za vývoj v rámci SLA dokážeme našim klientom poskytnúť najmä vďaka tomu, že je využiteľnosť našich kapacít predikovateľná.