Izrada softvera po mjeri: kako izgleda proces i \u0161ta pitati agenciju
Izrada softvera po mjeri ima smisla onda kad gotovo rješenje sa tržišta ne prati kako firma stvarno radi — kad se posao svodi na Excel tabele, dupli unos istih podataka na više mjesta, ili ručno spajanje alata koji nisu napravljeni da rade zajedno. Prije nego se krene u razvoj, vrijedi znati kako proces izgleda, koliko […]
Izrada softvera po mjeri ima smisla onda kad gotovo rješenje sa tržišta ne prati kako firma stvarno radi — kad se posao svodi na Excel tabele, dupli unos istih podataka na više mjesta, ili ručno spajanje alata koji nisu napravljeni da rade zajedno. Prije nego se krene u razvoj, vrijedi znati kako proces izgleda, koliko traje i šta razlikuje ozbiljnu ponudu od one koja kasnije preraste budžet.
Kad kupiti gotovo, a kad naručiti izradu
Gotov softver (CRM, sistem za rezervacije, kasa) rješava 80% potreba za mnogo manje novca i vremena. Ima smisla naručiti izradu softvera samo kad taj nedostajući dio — specifičan proces, integracija sa domaćim sistemom plaćanja, izvještaj koji niko ne pravi gotov — stvarno košta firmu vremena svaki dan. Ako se problem javlja jednom mjesečno, jeftinije je platiti nekome sat vremena rada nego naručiti aplikaciju. Razlika između gotovog rješenja i izrade po mjeri detaljnije je opisana u tekstu o custom razvoju softvera.
Kako izgleda proces izrade
Ozbiljan proces ide u fazama, ne u jednom velikom skoku od ugovora do gotovog proizvoda:
- Popis stvarnog procesa u firmi — šta se danas radi ručno, ko to radi, koliko traje.
- Specifikacija — spisak funkcija sa prioritetom, ne opšta rečenica „napravite nam sistem”.
- Prvi radni dio (MVP) koji rješava najbolniji korak, ne cijeli proces odjednom.
- Testiranje sa ljudima koji će softver stvarno koristiti, ne samo sa naručiocem.
- Puštanje u rad i period popravki nakon prvih nedjelja realne upotrebe.
Firma koja preskoči popis procesa i ode pravo na specifikaciju obično na kraju plaća doradu jer je developer pogodio kako posao izgleda, umjesto da je to provjerio na licu mjesta.
Ko treba da bude u timu sa strane naručioca
Najčešća greška nije loš izbor agencije, nego to što firma prepusti cijeli projekat jednom čovjeku koji nema vremena da odgovara na pitanja developera. Softver koji se pravi po mjeri traži nekoga sa strane naručioca ko poznaje proces iznutra i ko je dostupan za kratke odgovore u toku razvoja — ne za sastanak jednom mjesečno. Kad tog čovjeka nema, developer nagađa, a nagađanje se plaća kroz dorade poslije puštanja u rad. Isto važi i za obim testiranja: ljudi koji će softver koristiti svaki dan primijete probleme koje niko drugi ne vidi, zato test faza ne smije proći samo kroz ruke naručioca ili vlasnika firme.
Šta pitati prije potpisa ugovora
Cijena izrade softvera zavisi isključivo od obima posla — ozbiljna agencija ne daje tačan iznos prije specifikacije, nego raspon i objašnjenje šta ulazi u koji dio. Prije potpisa vrijedi pitati: ko je vlasnik koda kad se projekat završi, da li cijena uključuje period održavanja poslije puštanja u rad, i šta se dešava ako se obim posla promijeni na pola razvoja. Agencija koja izbjegava ova pitanja obično naplaćuje izmjene po višoj cijeni kasnije. Slična logika važi i za custom programiranje uopšteno — ugovor mora jasno reći ko šta drži nakon isporuke.
Održavanje poslije puštanja u rad
Softver koji se koristi svaki dan traži popravke i male izmjene i mjesecima poslije puštanja u rad — nove verzije servera, promjene u zakonu ili poreskim stopama, dodatna funkcija koja se pokaže potrebnom tek kad ljudi počnu da rade sa alatom. Firma koja naruči izradu bez plana za održavanje često ostane sa softverom koji za godinu dana više niko ne razumije da popravi. Isti princip planiranja unaprijed vrijedi i za izradu sajtova u Podgorici — cijena bez plana za dalje održavanje je samo pola priče.
Vrijeme razvoja za manji alat sa jasnom specifikacijom obično se mjeri nedjeljama, ne mjesecima — problem nastaje kad se specifikacija mijenja usput, pa se svaka nova ideja dodaje na već započet posao umjesto da se planira za sledeću fazu. Firma koja unaprijed prihvati da će softver rasti u fazama, umjesto da očekuje gotov proizvod od prvog dana, dobija stabilniji rezultat i manje iznenađenja u računu na kraju.
Ako razmišljate o izradi softvera za svoju firmu, javite se za razgovor o tome šta bi taj softver stvarno trebalo da riješi.