Web aplikacija je program koji radi u internetskom pregledniku i u kojem korisnik obavlja posao: prijavljuje se, unosi i mijenja podatke, odobrava, naručuje ili prati status. Ne treba je instalirati, radi na računalu, tabletu i mobitelu, a svi korisnici rade na istoj, aktualnoj verziji. Kad korisnicima treba rad bez internetske veze ili pristup kameri i lokaciji, bolji izbor može biti mobilna aplikacija.
Web stranica ili web aplikacija
Web stranica predstavlja tvrtku: posjetitelj čita o uslugama i javlja se putem obrasca. Web aplikacija služi za rad: korisnik ima vlastiti račun, vidi svoje podatke i mijenja ih u granicama svojih prava. Razlika nije u izgledu, nego u onome što se događa iza zaslona: aplikacija ima bazu podataka, poslovna pravila, korisničke uloge i veze s drugim sustavima, pa je i njezina izrada drukčiji posao. Web shop je posebna vrsta web aplikacije, namijenjena prodaji, a njegovu izradu opisujemo na stranici izrada web shopa.
Kada vam treba web aplikacija
Web aplikacija ima smisla kad više ljudi, u tvrtki i izvan nje, mora raditi s istim podacima, a tablice i e-pošta to više ne mogu pratiti. Tipično su to ovi slučajevi.
Portali za klijente
Mjesto na kojem kupci vide svoje narudžbe, ugovore, račune, dokumente ili status zahtjeva i sami pokreću ono zbog čega bi inače zvali ili pisali e-poštu.
Portali za poslovne partnere
Za veleprodajne kupce, distributere, dobavljače ili servisere: uvjeti i cjenici po partneru, narudžbe, reklamacije i dokumentacija, pri čemu svaki partner vidi samo ono što se odnosi na njega.
Interni alati
Aplikacije za zaposlenike koje zamjenjuju tablice i lance e-pošte: radni nalozi, odobravanje zahtjeva, planiranje resursa, evidencije i tijek rada između odjela.
Nadzorne ploče
Ključne brojke na jednom zaslonu, izračunate iz podataka koje već imate u ERP-u, CRM-u ili knjigovodstvu, umjesto izvještaja koji se slažu ručno. Ako podatke prvo treba urediti i povezati, pogledajte stranicu podaci i poslovna analitika.
Svaka od ovih aplikacija oblik je softvera po mjeri. Kada se razvoj po mjeri isplati, a kada je bolji gotov proizvod, opisujemo na stranici razvoj softvera po mjeri.
Tehnologija
Web aplikacije gradimo na tehnologijama koje koristimo u vlastitim proizvodima i u radu za klijente: Next.js i React za sučelje, Node.js za backend i PostgreSQL za bazu podataka. Kad aplikacija treba pretraživanje po značenju, na primjer kroz dokumente ili bazu znanja, PostgreSQL proširujemo s pgvectorom. Aplikaciju pakiramo u Docker, a promjene prije objave prolaze automatske provjere u GitLab CI-ju.
Riječ je o raširenim tehnologijama otvorenog koda, pa aplikaciju može razumjeti i dalje razvijati i drugi tim. Aplikacije koje izrađujemo i održavamo rade na poslužiteljima u EU.
Sigurnost i prava pristupa
Web aplikacija dostupna je s interneta, pa sigurnost planiramo od početka, a ne kao dodatak na kraju:
- svaki korisnik ima ulogu koja određuje što smije vidjeti i mijenjati, a partner vidi samo svoje podatke;
- prava se provjeravaju na poslužitelju pri svakom zahtjevu, a ne samo skrivanjem gumba u sučelju;
- veza je šifrirana, a gdje je potrebno, uvodimo dodatnu provjeru pri prijavi;
- važne radnje se bilježe: tko je što promijenio i kada;
- obrađuju se samo osobni podaci koji su aplikaciji potrebni, a podaci su na poslužiteljima u EU.
Ako aplikacija koristi AI, pravila za njegov rad i nadzor opisujemo na stranici AI sigurnost i upravljanje.
Povezivanje s ERP-om i CRM-om
Poslovna web aplikacija rijetko radi sama. Podaci o kupcima, artiklima, cijenama i zalihama u pravilu su već u ERP-u ili CRM-u, pa ih aplikacija čita odande umjesto da ih netko prepisuje. Ovisno o sustavu, veza ide preko API-ja, redovite sinkronizacije ili izvoza podataka.
Za Instar informatiku, hrvatskog trgovca i distributera informatičke opreme, našu smo platformu Business Booster povezali s ERP-om Luceed. Platforma radi na kopiji podataka koja se sinkronizira svake noći i služi samo za čitanje, pa rad u ERP-u ostaje netaknut. Na toj kopiji nastaju tjedni izvještaji o prodaji i zalihama po robnim markama i odgovori na poslovna pitanja postavljena na hrvatskom. Kako izgleda veza s ERP-om kad uključuje AI, opisujemo na stranici AI integracija s CRM i ERP sustavima.
Kako izrađujemo web aplikaciju
Razvoj web aplikacije vodimo u fazama, tako da korisnici što prije rade u pravoj aplikaciji:
- Besplatan prvi razgovor: tko će aplikaciju koristiti i koji posao u njoj obavlja.
- Otkrivanje: uloge, prava, zasloni, poslovna pravila i sustavi s kojima se aplikacija povezuje. Gdje pomaže, prije razvoja skiciramo glavne zaslone.
- Opseg, procjena troška i plan po fazama.
- Prva radna verzija za 4–8 tjedana, s pravom prijavom, ulogama i vašim podacima. Napredak pratite u klijentskom portalu.
- Uvođenje korisnika, dorade prema njihovim povratnim informacijama i sljedeće faze.
- Održavanje nakon puštanja u rad.
O čemu ovisi cijena
Na procjenu troška utječu:
- broj vrsta korisnika i koliko su njihova prava razrađena;
- broj zaslona i složenost poslovnih pravila;
- integracije s ERP-om, CRM-om, sustavom za plaćanje ili e-poštom i kakav API ti sustavi imaju;
- prijenos postojećih podataka;
- izgled: gotove komponente sučelja ili dizajn po mjeri vašeg vizualnog identiteta;
- broj jezika sučelja te potrebni izvještaji i izvozi;
- opseg održavanja.
Procjenu dajemo nakon otkrivanja, razdvojenu po fazama, pa unaprijed znate što ulazi u prvu verziju.
Održavanje
Web aplikacija nije gotova kad se pusti u rad. Preglednici, biblioteke i sigurnosni zahtjevi se mijenjaju, a korisnici s vremenom traže dorade. Održavanje obuhvaća ažuriranja i sigurnosne zakrpe, nadzor rada, sigurnosne kopije baze i ispravke pogrešaka, a veće dorade planiramo kao nove faze s vlastitom procjenom.
Što pripremiti
Za početak je korisno imati:
- popis korisnika: tko se prijavljuje i što koja skupina smije vidjeti;
- primjere tablica, obrazaca i izvještaja koje aplikacija zamjenjuje;
- dokumentaciju API-ja vašeg ERP-a ili CRM-a ili kontakt osobe koja ga održava;
- vizualni identitet, ako aplikaciju koriste kupci i partneri;
- osobu koja odlučuje o prioritetima i nekoliko korisnika za testiranje.