Većina digitalnih proizvoda koji propadnu ne propadaju zbog tehnologije. Tehnologija danas radi. Frameworci su zreli, infrastruktura je jeftina, talent je dostupan. Razlog zašto proizvodi ne uspijevaju gotovo uvijek je proces — odluke prije, tijekom i nakon razvoja.

Ovaj tekst sažima devet grešaka koje smo gledali kako se ponavljaju kroz desetine projekata. Ne teorijske. Konkretne, predvidljive, sprječive. Ako prepoznajete tri ili više njih u svom projektu, vjerojatno već znate na što treba pripaziti.

1. Krenuti graditi prije nego što je problem definiran

Najčešća i najskuplja greška. Tim se sastane, dogovori “naša ideja”, i krene u dizajn i razvoj prije nego što je itko jasno odgovorio na pet ključnih pitanja:

  • Koji točno problem rješavamo?
  • Tko ima taj problem?
  • Kako ga trenutno rješavaju?
  • Što naša verzija mora raditi bolje od trenutnog rješenja?
  • Kako ćemo znati da smo uspjeli?

Bez tih odgovora, svaka kasnija odluka mora biti improvizirana. “Trebamo li dodati ovu funkcionalnost?” — bez jasnog problema, nema kriterija za odgovor. “Treba li to izgledati ovako?” — bez jasnog korisnika, nema kriterija. Cijeli projekt se odvija u maglici, i tim donosi odluke prema pretpostavkama umjesto prema dokazima.

Kako izbjeći: Discovery faza od 1 do 3 tjedna prije ozbiljnog razvoja. Pet pitanja gore napišite na papir. Ako tri osobe na vašem timu napišu različite odgovore, problem nije definiran.

2. MVP koji to nije

“Krećemo s MVP-jem” je standardna fraza, ali u 80 % slučajeva ono što se gradi nije MVP — to je “polovična verzija pune ideje”. Razlika je dramatična.

Pravi MVP ima jednu jasnu hipotezu i minimalan skup funkcionalnosti potreban za njezino testiranje. “Ljudi su voljni rezervirati frizera online preko mobilne aplikacije” — to je hipoteza. MVP treba imati: profil frizera, dostupne termine, mogućnost rezervacije. Sve drugo (chat, ocjene, lojalnostni program, integracija s Google kalendarom) je za poslije.

Lažni MVP, s druge strane, ima sve to — samo “polovično”. Nepotpune ocjene, polurazrađeni chat, lojalnostni program bez stvarne nagradne mehanike. Rezultat: proizvod koji ne testira ništa, ali zato traži dvostruko duže i dvostruko više.

Kako izbjeći: Napišite jednu rečenicu — “Ljudi će X jer Y.” Sve što ne testira tu rečenicu nije MVP, to je v2. Zapišite to izričito.

3. Scope creep (“samo još jedna mala stvar”)

Najpredvidljivija greška u svakom razvojnom projektu. Tim krene s opsegom od 12 funkcionalnosti. Tijekom razvoja, neko predloži “samo još jednu”. Pa još jednu. Pa još jednu.

Pojedinačno svaki dodatak djeluje razumno. Skupno, projekt koji je trebao biti gotov u 14 tjedana traje 22, budžet od 25.000 € postaje 38.000 €, a kad konačno lansirate, polovica funkcionalnosti je nedovršena.

Najopasnije fraze:

  • “Kad smo već tu, možemo li i…”
  • “Samo brzo dodaj…”
  • “To je sigurno mali zahvat…”
  • “Klijent je tražio, ne možemo odbiti”

Kako izbjeći: Zapišite “Listu što ne radimo” prije početka razvoja. Svaka nova ideja prolazi formalnim change request procesom — procjenjuje se trošak, vrijeme, što odgađa, i zatim se eksplicitno odobrava (ili odgađa). Ne tijekom standupa. Ne preko Slacka. Formalno.

4. Razvoj u izolaciji od korisnika

Tim mjesecima gradi, krije proizvod od svijeta, planira “veliko otkrivenje”, a onda lansira u aplauz tišine. Razlog: nitko nije provjeravao s pravim korisnicima što oni stvarno trebaju.

Klasičan obrazac: tim misli da gradi proizvod za “dizajnere”, ali zapravo testira samo s drugim developerima. Ili gradi za “vlasnike malih biznisa”, ali stvarni razgovori događaju se samo s onima iz tima koji “razumiju biznis”. To su rupe koje rastu sve dok lansiranje ne pokaže da je proizvod kalibriran za krivu publiku.

Kako izbjeći: 5 razgovora s pravim korisnicima u prvih 2 tjedna projekta — više vrijedi od 50 internih sastanaka. Na kraju svakog sprinta pokazujte radnu verziju 2 – 3 stvarna potencijalna korisnika. Ne samo svom timu i prijateljima. Pravim korisnicima.

5. Birati tehnologiju prije razumijevanja problema

“Koristit ćemo Next.js i AWS.” Rečenica čuvena u svim sastancima u kojima nitko nije proveo 30 minuta razgovarajući s korisnikom. Tehnologija je odluka koja slijedi zahtjeve, ne prethodi im.

Najčešća posljedica: preinženjering. Tim gradi mikroservise i Kubernetes setup za proizvod koji nakon godinu dana ima 200 korisnika. Mogli bi postići isto s monolitom i managed bazom za 20 % budžeta. Drugi smjer iste greške: tim koristi predloške i no-code za proizvod koji bi trebao biti custom — i nakon 6 mjeseci sve mora ispočetka jer se predložak razbije pod opterećenjem.

Kako izbjeći: Definirajte problem, korisnike, glavnu funkcionalnost, očekivani volumen prometa prije nego što netko spomene tehnologiju. Tek tada birajte stack. Ako se na razvoj može odgovoriti monolitom umjesto mikroservisima — odgovorite tako. Boring je dobar.

6. Loše planiranje QA-a

Tipičan obrazac: razvoj kasni 3 tjedna, lansiranje je za 2 tjedna, QA dobiva 4 dana umjesto planiranih 12. Posljedica: kritični bugovi koji su trebali biti uhvaćeni prije produkcije pojavljuju se u prvom tjednu rada — i koštaju 5 do 10 puta više za popraviti pod pritiskom živih korisnika.

Druga vrsta greške: QA koji se radi paralelno s razvojem, ali istom osobom koja je razvijala. Ljudi ne nalaze vlastite greške. To nije nedostatak vještine, to je struktura ljudske pažnje.

Kako izbjeći: QA mora imati posvećen blok vremena (1 – 3 tjedna). Pomak roka razvoja ne treba kresati QA — treba kresati opseg. Lansiranje proizvoda s neistraženim bugovima skuplje je od jednog tjedna kašnjenja.

7. Lansiranje bez plana što slijedi

Proizvod je u produkciji. Tim slavi. Sljedeći ponedjeljak — što? Tko gleda greške koje stvarni korisnici prijavljuju? Tko prati metrike? Tko odlučuje o sljedećoj iteraciji?

Prečesto se događa: tim raspršen na druge projekte unutar tjedan dana, klijent ostavljen sa stranicom koju nitko ne prati, prvi pravi feedback ostaje neodgovoreno mjesec dana. U tom trenutku, momentum nestaje.

Lansiranje nije kraj projekta. To je trenutak kad počinje učenje. Proizvod koji ne uči u prvih 90 dana nakon lansiranja gotovo nikad ne dosegne svoj puni potencijal.

Kako izbjeći: Plan za prvih 90 dana napišite prije lansiranja. Kako se prati uptime? Tko reagira na bugove? Kako se prikupljaju povratne informacije? Koji je raspored prvih iteracija? Bez ovoga, “lansirano” znači “ostavljeno”.

8. Fokus na funkcionalnosti umjesto na ključni tijek

Zamka koja odvodi proizvode u smrt: tim umjesto da brusi 3 ključne funkcionalnosti dok ne postanu odlične, gradi 12 funkcionalnosti koje su sve “u redu”. Korisnik koji prvi put koristi takav proizvod nema osjećaj sjajnog iskustva — ima osjećaj proizvoda koji “radi sve, ali ništa stvarno dobro”.

Konkurencija s 3 fenomenalne funkcije pobijedit će vas s 12 osrednjih svaki put. Korisnici pamte kvalitetu, ne popis.

Kako izbjeći: Identificirajte jedan ključni korisnički tijek — onaj koji predstavlja srž vrijednosti vašeg proizvoda. Sve dok taj tijek nije briljantan, ne dodavajte sekundarne funkcionalnosti. Bolje je lansirati s 3 odlične stvari nego s 12 prosječnih.

9. Loš ili nepostojeći proces komunikacije

Greška koja često ostaje neidentificirana sve do momenta kad je projekt već u problemu. Razvojni tim radi, klijent ne zna što se točno radi. Klijent dobiva tjedne updateje koji su nejasni. Demoi se odgađaju. “Sve ide po planu” čuje se i dok stvari evidentno ne idu po planu.

Posljedica: kad se konačno otkrije da je projekt u kašnjenju ili da je nešto ozbiljno krivo, već je prošlo previše vremena za jednostavan reset. Sad je potrebna dramatična intervencija — produljenje roka, povećanje budžeta, eskalacija odluka.

Kako izbjeći: Tjedni pisani status (5 minuta posla) koji uvijek odgovara na: što je napravljeno prošli tjedan, što se radi ovaj, što je rizik, koje odluke trebaju vašu intervenciju. Demo na kraju svakog sprinta — bez izuzetka. Slack ili sličan kanal za pitanja u realnom vremenu. Mjesečni “deep dive” sastanak za strategije.

Bonus greške koje viđamo prečesto

Nekoliko grešaka koje nisu na top listi, ali se ponavljaju dovoljno često da zavrijeđuju spomen:

Premali budžet za prvu verziju, prevelike ambicije. Ako vam neko obeća “puni SaaS za 8.000 €”, obećavaju nešto što nije moguće. Bolje je suziti opseg i kvalitetno graditi nego širiti i raditi sve polovično.

Ne dokumentirati odluke. Šest mjeseci nakon lansiranja, novi član tima pita “zašto smo ovo napravili ovako?”. Ako odgovor nije zapisan, projekt nasljeđujete bez konteksta — i obično ga rebuildate jer “ne razumijemo zašto je to ovako”.

Nedostatak vlasnika proizvoda. Komiteti ubijaju brzinu. Jedna osoba mora biti odgovorna za odluke o opsegu, dizajnu i prioritetima. Bez toga, svaka odluka traži tjedan dana usuglašavanja.

Ignoriranje sigurnosti i privatnosti dok ne bude prekasno. GDPR usklađenost, autentikacijski problemi, sigurnosne praznine — sve to košta deseterostruko više nakon lansiranja nego ako se ugradi tijekom razvoja.

Pretpostavljanje da će se “marketing rješiti kasnije”. Proizvod bez plana akvizicije — koliko god dobar — postaje skupa zbirka funkcionalnosti koju nitko ne koristi. Prva 1.000 korisnika treba imati plan, ne nadu.

Zašto se ove greške ponavljaju

Ako su greške predvidljive, zašto ih svi rade? Tri razloga.

Prvo, timovi su pod pritiskom da pokažu napredak. Discovery, dokumentacija, planiranje — sve to izgleda kao “nekodiranje”. Pod pritiskom rokova, prvo se reže ono što se čini sporednim. Ali to nije sporedno — to je upravo ono što štedi vrijeme kasnije.

Drugo, iskustvo je teško prenijeti. Svaki novi tim mora sam proći kroz iste greške barem jednom prije nego što ih shvati. Pisanje o ovome (kao što sad radite, čitajući) skraćuje krivulju, ali ne potpuno.

Treće, kratkoročno racionalno često je dugoročno štetno. Reže QA jer se kasni — racionalno za tjedan, štetno za 6 mjeseci. Dodaje funkcionalnost jer je klijent tražio — racionalno u trenutku, štetno za rok. Discipliniran tim odupire se trenutnim impulsima u korist dugoročnog ishoda.

Suština

Devet grešaka iznad rješava 80 % razloga zašto digitalni proizvodi propadnu: nedovoljno definiran problem, lažni MVP, scope creep, izolacija od korisnika, prerano biranje tehnologije, loš QA, nedostatak post-launch plana, fokus na funkcionalnosti umjesto na tijek, i loša komunikacija.

Sve su to procesualne greške. Ne tehničke. Ne talentne. Tim s malo iskustva ali pravim procesom isporučit će proizvod koji radi. Tim sa zvjezdanim kadrom ali bez procesa proizvest će prekrasan kod koji nikad ne stigne do korisnika.

Ako počinjete projekt — pročitajte ovaj popis. Ako ste usred projekta — pročitajte ga ponovno i pošteno se zapitajte gdje vidite simptome. Najveća prednost koju možete imati nije u izvršavanju brže od konkurencije. Prednost je u tome da ne radite predvidljive greške koje sve ostale staju mjeseci i deseci tisuća eura.


Razmišljate o razvoju proizvoda i želite izbjeći predvidljive zamke? Možemo s vama proći discovery razgovor u kojem identificiramo gdje su trenutni rizici u vašoj ideji i kako ih ublažiti prije nego što razvoj uopće krene. Javite nam se. Više o našem pristupu pogledajte na stranici Razvoj web aplikacija.