Vlasnici poslova često misle da je razvoj web aplikacije pretežno “kodiranje”. To je dio. Ali kodiranje je obično 50 – 60 % posla, ne cijeli posao. Ostalo je istraživanje problema, dizajn, testiranje, integracije, podizanje produkcije i dokumentacija — i svaki od tih dijelova ima konkretnu cijenu, trajanje i utjecaj na to hoće li proizvod uopće raditi.

Ovaj tekst razlaže cijeli proces, fazu po fazu. Što se događa u svakoj, koliko traje, što ulazi u cijenu i — što je bitno — koje su tipične greške koje se događaju u svakoj.

Pregled cijelog procesa

Standardna web aplikacija prolazi kroz 6 jasnih faza:

FazaTrajanjePostotak budžeta
1. Discovery i specifikacija1 – 3 tjedna6 – 10 %
2. UI/UX dizajn2 – 6 tjedana14 – 20 %
3. Razvoj6 – 24 tjedna50 – 60 %
4. QA i testiranje1 – 3 tjedna10 – 15 %
5. Deployment i lansiranje1 – 2 tjedna4 – 6 %
6. Podrška nakon lansiranja1 – 6 mjeseci5 – 15 %

Postoci nisu pravilo, ali su orijentir. Projekti gdje je dizajn stisnut na 5 % obično izgledaju kao predložak. Projekti gdje je QA stisnut na 3 % imaju bugove u produkciji.

Faza 1: Discovery i specifikacija

Što se događa: Definira se problem koji rješavate, tko su korisnici, koji su ključni korisnički tijekovi, koje funkcionalnosti minimum mora imati prva verzija i — jednako važno — što izričito ne radite u prvoj verziji. Donose se strateški tehnički izbori (frontend framework, backend, baza, hosting).

Tko sudjeluje: Vi (kao vlasnik proizvoda), product manager ili tehnički lead s agencije, eventualno jedan inženjer.

Što na kraju imate:

  • Dokument o opsegu (3 – 10 stranica)
  • Mapu ključnih korisničkih tijekova
  • Listu “što ne radimo u v1”
  • Tehničku arhitekturu (jednostavnu — ne traktat)
  • Realnu procjenu trajanja i cijene

Trajanje: 1 do 3 tjedna ovisno o jasnoći ideje.

Najčešća greška: Preskakanje ove faze “da uštedimo vrijeme”. Tjedan koji se uštedi ovdje obično pretvara se u 4 – 6 tjedana kasnijih problema. Druga česta greška je predug discovery — ako vam treba više od 3 tjedna, problem nije discovery, problem je neodlučivanje.

Faza 2: UI/UX dizajn

Što se događa: Wireframes (jednostavni nacrti rasporeda elemenata), zatim UI dizajn s vizualnim identitetom, zatim klikabilan prototip koji simulira glavne korisničke tijekove. Dizajn obično prolazi kroz 2 – 3 iteracije.

Tko sudjeluje: UI/UX dizajner, vi (za pregled i odluke), product manager.

Što na kraju imate:

  • Wireframes svih ključnih ekrana
  • Visoke razine UI dizajn primarnih ekrana (Figma)
  • Klikabilan prototip
  • Design system (komponente, boje, tipografija) — minimalan, ne sveobuhvatan

Trajanje: 2 – 6 tjedana ovisno o broju ekrana i složenosti.

Najčešća greška: Dizajnirati svaki ekran prije početka razvoja. Razvoj može krenuti čim su ključni ekrani gotovi. Sekundarni se dizajniraju paralelno s razvojem.

Druga zamka: testiranje dizajna samo s timom, ne s pravim korisnicima. Petero kolega koji “izgleda super” ne kompenziraju jednog stvarnog korisnika koji se izgubi u onboarding tijeku.

Faza 3: Razvoj

Najveći blok. U razvoju se zapravo grade dvije stvari: frontend (ono što korisnik vidi) i backend (logika, baza podataka, API koji povezuje sve).

Backend razvoj

  • Postavljanje infrastrukture: server, baza, deployment pipeline
  • Modeliranje baze: kako se podaci spremaju i povezuju
  • API: endpointovi koje frontend zove za podatke
  • Poslovna logika: pravila kako sustav radi (autentikacija, plaćanja, obrada)
  • Integracije: spajanje na vanjske sustave (Stripe, e-mail, CRM)
  • Sigurnost: validacija unosa, rate limiting, zaštita od najčešćih napada

Frontend razvoj

  • Razvoj komponenti: gradnja UI elemenata na temelju dizajna
  • Implementacija ekrana: spajanje komponenti u funkcionalne stranice
  • Spajanje s API-jem: dohvaćanje i slanje podataka
  • State management: kako aplikacija pamti stanje (logiran korisnik, košarica, filteri…)
  • Responzivnost: rad na različitim veličinama ekrana
  • Optimizacija performansi: brzina učitavanja, učinkovitost

Tipičan tijek razvoja

Razvoj se obično dijeli na sprintove od 2 tjedna:

  • Sprint 0 (1 – 2 tjedna): priprema okruženja, postavljanje pipelinea
  • Sprint 1: ključni korisnički tijek od početka do kraja (autentikacija, glavna funkcionalnost)
  • Sprint 2: sekundarne funkcionalnosti, integracije
  • Sprint 3 – 5+: dodatne značajke, dotjerivanje, optimizacija

Na kraju svakog sprinta imate radnu verziju koju možete testirati. To je bitno — projekt koji ne pokazuje napredak u sprintu od 2 tjedna ne treba ni biti tamo.

Trajanje cijele faze: 6 do 24 tjedna ovisno o opsegu.

Najčešća greška: Pokušati graditi sve odjednom umjesto isporučiti kritičnu putanju prvo. Ako ključni korisnički tijek ne radi, ostalo je bezvrijedno.

Faza 4: QA i testiranje

Što se događa: Sustavno testiranje svake funkcionalnosti, svakog korisničkog tijeka, svake rubne situacije. Ne samo “radi li” — nego i “što se događa kad korisnik unese praznine, kad mu nestane interneta, kad servis padne, kad upiše glupost u formular”.

Vrste testiranja:

  • Funkcionalno: radi li svaka funkcionalnost kako bi trebala
  • Cross-browser i cross-device: radi li na Chromeu, Safariju, Firefoxu, mobilnom, tabletu
  • Performance: koliko brzo se učitava, kako se ponaša pod opterećenjem
  • Sigurnost: validacija unosa, autentikacija, autorizacija, najčešći napadi
  • Pristupačnost: navigacija tipkovnicom, screen readeri, kontrast
  • User acceptance testing (UAT): vi i vaš tim isprobavate aplikaciju kao da ste korisnici

Tko sudjeluje: QA inženjer (ako tim ima posvećenog) ili developeri u rotaciji, vi i vaš tim za UAT.

Što na kraju imate:

  • Testirana aplikacija s prioritetiziranim popisom bugova
  • Ispravljeni kritični bugovi
  • Dokumentirani manji problemi koji ne blokiraju lansiranje
  • Performance testovi pod očekivanim opterećenjem

Trajanje: 1 – 3 tjedna.

Najčešća greška: Tretirati QA kao kvačicu, ne kao stvarni filter. Ako se QA stišće na 3 dana zbog roka, kritični bugovi koji su trebali biti uhvaćeni ovdje pojavljuju se prvi tjedan u produkciji — i koštaju 5 – 10 puta više za popraviti.

Faza 5: Deployment i lansiranje

Što se događa: Aplikacija se prebacuje iz staging okruženja u produkciju. Postavlja se konačna konfiguracija, monitoring, backup, alerting. Vaš tim se educira, dokumentacija se finalizira.

Konkretne stvari koje se rade:

  • Konfiguracija produkcijskog servera ili PaaS platforme
  • DNS, SSL, e-mail konfiguracija
  • Monitoring (uptime, error tracking, logiranje)
  • Backup procedure i testiranje povratka
  • Performance baseline mjerenje
  • Edukacija vašeg tima i administratora
  • Korisnička dokumentacija ili onboarding tijek
  • Plan komunikacije lansiranja

Trajanje: 1 – 2 tjedna.

Najčešća greška: Tretirati deployment kao “samo prebacivanje”. Stvarna produkcija se ponaša drugačije od staginga — pravi promet, pravi podaci, pravi korisnici. Tjedan dana posvećen pripremi obično spasi tri tjedna nervoze nakon lansiranja.

Faza 6: Podrška nakon lansiranja

Što se događa: Prva 30 – 90 dana nakon lansiranja je tipično razdoblje “garantne podrške” — agencija popravlja sve bugove koje su sami napravili. Nakon toga može slijediti retainer — mjesečni paušal za određeni broj sati podrške, sitne izmjene i daljnji razvoj.

Što ulazi:

  • Popravak bugova koji se otkriju u produkciji
  • Manje izmjene i optimizacije
  • Performance tuning na temelju stvarnog prometa
  • Sigurnosna ažuriranja
  • Skaliranje infrastrukture po potrebi

Trajanje: ovisi o dogovoru. Standardni garantni period 30 – 90 dana, retaineri obično 6 – 12 mjeseci s opcijom produljenja.

Najčešća greška: Misliti da projekt završava lansiranjem. Stvarni proizvodi nikad nisu “gotovi”. Aplikacije bez plana podrške tipično postaju nestabilne unutar 6 – 12 mjeseci jer nitko ne radi sigurnosna ažuriranja, ne reagira na pad performansi i ne popravlja bugove dok se ne pretvore u veće probleme.

Sve manje vidljivi dijelovi (koji su jednako važni)

Postoji nekoliko aktivnosti koje se događaju kroz cijeli projekt, a često se podcjenjuju:

Project management

Netko mora koordinirati: planirati sprintove, voditi sastanke, eskalirati blokade, držati budžet i rok pod kontrolom. U manjim projektima to radi tech lead. U većim projektima imate posvećenog project managera. Bez ove uloge, projekti tipično kasne 30 – 50 % bez ikakvog “lošeg” događaja — samo kroz polako gubljenje fokusa.

Komunikacija s klijentom

Dio koji se rijetko vidi u troškovniku, ali troši 10 – 15 % vremena. Tjedni statusi, demoi, pripremanje pitanja, dokumentiranje odluka. Nije birokracija — to je razlog zašto vi kao klijent uopće znate što se događa.

Dokumentacija

Tehnička dokumentacija (kako sustav radi), korisnička dokumentacija (kako korisnik koristi aplikaciju), runbook za vaš tim (što napraviti kad nešto padne). Dijelovi koji se rade kroz projekt, ali se često žrtvuju za rok — i obično se to vrati za godinu dana kad netko novi mora preuzeti sustav.

Prepoznavanje rizika

Dobar tim aktivno traži rizike — integracije koje mogu kasniti, pretpostavke koje se nisu verificirale, performance problemi koji se mogu pojaviti. Ovo se događa kontinuirano, ne kao formalna faza.

Realan primjer: 24.000 € web aplikacija, 14 tjedana

Da brojevi imaju kontekst, evo kako bi se troškovi i vrijeme tipično rasporedili za standardnu B2B aplikaciju s budžetom od 24.000 € i rokom od 14 tjedana:

FazaTrajanjeTrošakSudionici
Discovery2 tjedna1.800 €Tech lead + PM
Dizajn3 tjedna (preklapa s razvojem)4.200 €Dizajner + PM
Razvoj9 tjedana14.400 €2 developera + PM
QA1,5 tjedna1.800 €QA inženjer + developeri
Deployment1 tjedan1.200 €DevOps + tech lead
Garantna podrška (30 dana)uključeno600 €Tim povremeno

Brojevi su orijentir. Vaš projekt će se razlikovati ovisno o specifikama, ali raspored postotaka tipično se zadržava.

Suština

Razvoj web aplikacije je 6 faza koje se djelomično preklapaju: discovery, dizajn, razvoj, QA, deployment i podrška nakon lansiranja. Razvoj sam po sebi je tek polovica posla. Ostale faze nisu birokracija — one određuju radi li vaš proizvod stvarno u rukama korisnika, koliko ste platili kasnije za ispravljanje propusta i koliko će aplikacija trajati prije nego što treba veliki rebuild.

Najveće zamke: preskakanje discoveryja jer “trošimo vrijeme”, pretjerano dizajniranje prije početka razvoja, stiskanje QA-a zbog roka, tretiranje deploymenta kao trivijalnog, i ignoriranje plana podrške nakon lansiranja. Svaka od tih grešaka košta — često 2 do 5 puta više od onoga što ste pokušali uštedjeti.

Najpametniji pristup je gledati cijeli životni ciklus, ne samo cijenu izrade. Aplikacija nije gotova kad je lansirana. Ona je tek tada počela davati vrijednost — i taj period od narednih godinu, dvije, tri donosi sav povrat ulaganja.


Razmatrate razvoj i želite jasnu sliku procesa? Možemo prijeći s vama kroz cijeli proces — od discoveryja do lansiranja — i pomoći vam realno procijeniti opseg i trajanje. Javite nam se za kratak razgovor. Više o našem pristupu pogledajte na stranici Razvoj web aplikacija.