RSS

Category Archives: Implementacija

Knjigovodstveni programi – web vs desktop (2/2)

S+S desktop windows knjigovodstveni programi – i jare i pare

Prvi deo ovog posta je bio namenjen predstavljanju mog stava zašto je pogrešno raditi knjigovodstveni program korišćenjem web tehnologija. Ja sam mrzim ljude koji samo kritikuju postojeće bez iznošenja svog konstuktivnog stava po tom pitanju, tako da u ovom drugom delu mog posta predstaviću svoje mišljenje o tome zašto S+S desktop knjigovodstveni programi su optimalani  i po korisnika i po autora.

Veliki izazov sa ovim člankom koji je načelno tehničke prirode je ne ići u tehnikalije i u previše detalja, a opet prezentovati precizno nešto, ali daću sve od sebe da to ispoštujem pa „eto mene, eto vas – blog post publikumu

The Web Is Dead. Long Live the Internet.

Ne, nisu to moje reči (iako uslovno odražavaju suštinu mog stava) nego naslov jučerašnjeg naslovnog članka čuvenog Wired magazina. Za one koje mrzi da pročitaju članak, suštinski se svodi na analizu zapažanja kako u strukturi prometa na internetu udeo web sajtova opada te se web koristi sve više kao infrastruktura za transport sadržaja i podataka do krajnjih korisnika koji koriste native aplikacije. Taj pojam native aplikacija ne podrazumeva samo Windows/Linux PC računare već i pametne telefone (iPhone, Android..), tablete (iPad), igračke konzole (xbox, PS) itd…Evo jedne ilustracije te debate  prenešen na kontekst web vs desktop aplikacije.Ja sam vlasnik iPhone-a prve generacije (jeste u pravu ste, ja – „zaslepljeni Microsoft fanboy“ imam nekoliko godina iPhone – šokantno!).  Safari internet browser na iPhone-u je fantastičan i omogućava mi da koristim bilo većinu sajtova bez većih problema. Ipak, kada hoću da koristim twitter ja ne otvorim www.twitter.com adresu u njemu, već startujem Seesmic iphone aplikaciju. Neko bi pomislio možda da je to usled toga što je iPhone aplikacija svojom veličinom prilagođena malom ekranu telefona dok web stranica nije, ali identična stvar se ponavlja i na mom kućnom računaru gde imam 26“ ekran i na mom lap topu (15“) tako da po meni to i moja objašnjenje ne pije vodu. Ne radim ja to što „mrzim web“, već isključivo zato što udobnost korišćenja i moja produktivnost kada koristim twitter desktop klijent u veoma velikoj meri prevazilaze korišćenje twitter web sajta. Da li to znači da mi internet nije potreban i da mi je dovoljna samo ta aplikacija? Naravno da ne jer bez interneta i twitter servisa u oblaku aplikacija je beskorisna. Naravno da ne jer želim da pristupim podacima sa svakog od mojih uređaja, dok sam u metrou u pokretu itd…

Šta je to S+S ahitektura aplikacije?

„S+S“ je skraćenica za „Software + Services“ što označava pristup izrade aplikacije gde se aplikacija diyajnira tako da na na lokalnom računaru (npr. vaš kompjuter, telefon itd) se izvršava aplikacija koja komunicira sa servisima na Internetu ostavrujući tako svoju namenu. Razlikuje se od mnogo popularnijeg SaaS modela po tome što se aplikacije izvršava korišćenjem lokalnih resursa, dok kod SaaS kompletno procesiranje se obavlja na serveru. Drugim rečima, S+S program je desktop klijent povezan sa internet servisima.

Na konkretnom primeru mojg programa za knjigovodstvo S+S implementacija podrazumeva:

  • Pametni desktop klijent
    (moj izbor tehnologije klijenta -> Windows/WPF aplikacija – alternativa Linux/Java)
  • Servise u oblaku
    (moja platforma –> Windows Azure + SQL Azure – alternativa mrežne usluge Google/Amazon)
  • Distribuirani mrežni model sa sinhronizacijom podataka izmedju lokalnog i internet servera podataka
    (moja platforma –> Microsoft Sync Framework)

Poštovanjem ova 4 principa dobija se najbolje od obe platforme: desktop klijenta i internet servisa koje se u kontekstu programa za knjigovodstvo savršeno dopunjuju u sistem optimalan i za korisnika i za autora.

Prednosti S+S knjigovodstvenih programa

Maksimalno produktivan i prijatan rad

imagePo meni, udobnosti rada u dobroj windows desktop knjigovodstvenom programu nijedna web knjigovodstvena aplikacija ne može ni da priđe. Ne verujte? Idite na www.freshbooks.com (jedan od najboljih svetskih web knjigovodstvenih programa) i kreirajte free account pa probajte rad. Zatim idite na http://www.peachtree.com/ i skinite trial verziju pa probajte. Freshbooks je veoma dobar, ali Peachtree je bolji.

S obzirom da se upiti i pretrage podataka obavljaju korišćenjem lokalnih resursa odziv knjigovodstvenog programa je brz i omogućava složenije operacije i manipulacije nad podacima. Investicije koje korisnik pravi u svoje osnovno sredstvo – računar – direktno rezultuju sa povećanjem performansi rada programa.S obzirom da se radi o aplikaciji koja se koristi intezivno u toku dana (i to u dosta slučajeva većim delom tog istog dana) za obavljanje primarne poslovne delatnosti, itekako je bitno da knjigovodstveni program bude i „prijatan“ i produktivan za korišćenje.
Izbeći 1000 x 4 sekundi čekanja na učitavanje web stranice je više od sat vremena dnevno ušteđenih /3+ radna dana mesecno/, a na ne pričam o izbegavanju rizika dobijanja eplitičnih napada od tog silnog bleskanja web browsera J

Neprekidna internet veza nije neophodna

Kada se korisnik prijavi prvi put na program, na njegov lokalni kompjuter se sadržaj baze sa interneta sinhronizuje. Inicijalno bi to rezultovalo sa kopiranjem kompletnog seta podataka sa servera u oblaku na server u lokalu. Svaka naredna sinhronizacija rezultuje prenosom samo diferencijala nastalih od poslednjeg sinhronizovanja.

Ovaj pristup omogućava implementaciju knjigovodstvenog programa tako da program u većini slučajeva komuncira sa bazom na lokanom kompjuteru, a ta se baza ispod haube u zasebnom procesu sinhronizuje sa serverom na internetu. Na taj način i u slučaju gubitka internet veze program radi potupuno normalno. Jednom kad se internet veza povrati, svi novi unosi i ispravke se šalju na server.

Fleksibilna mrežna topologija

U većini slučajeva poslovnu aplikaciju koristi više od jednog korisnika – „kancelarijski scenario“.

Ako koristim primer iz prvofg dela ovog posta o tome zašto web knjigovodstveni programi nisu najoptimalnije i zamislimo da imamo 12 korisnika koji rade nad jednom istom bazom to je onda 12x veći protok sa serverom itd…

U mom modelu bi postojao jedan SQL Server u kancelariji koji bi se sinhronizovao sa serverom u oblaku ili „po potrebi“ ili u nekim zadatim vremenskim intevalima (5 minuta, dan – štagod). Taj server bi bio dostupan svim desktop klijentima u lokalnoj mreži tako da se opet sva komunikacija koju klijenti vrše sa setom podatka vrši u lokalu na taj način uvećavajući produktivnost korisnika.

U slučaju da nema interneta, nema problema – cela kancelarija radi i dalje neometano. S obzirom da svi koriste istu lokalnu bazu, svi uvek rade na ažurnom setu podataka tako da je sinhronizacija podataka sa oblakom potpuno nevidljiva sa stanovišta korisnika.

Poboljšana elastičnost troškova S+S knjigovodstvenih programa

Ovo je prednost koja se ne tiče korisnika nego nas autora. Kod web aplikacije prelazak sa 10 na 10.000 korisnika rezultuje eksponencionalnim rastom troškova usled povećanja protoka i usled činjenice da svih 10.000 korisnika zavise od hardvera jedne mašine – server (lokalni resurs računar apotpuno neiskorišteni – detaljniji opis problema dat u prvom delu ovog posta)

U mom distribuiranom S+S modelu programa za knjigovdstvo, troškovi rastu linearno jer:

  • što se protoka tiče on ja minimalan usled činjenice da svi dobijaju samo onog što je novo unešeno, obrisano ili izmenjeno i činjenice da se svi upiti (večina protoka ide na te upite) vrše u lokalu korišćenjem računara korisnika. Takođe kod S+S programa za knjigovodstvo ne šalju se ni same web stranice potrebne za rad tih 10.000 korisnika što može bitno utiče na veličinu protoka.
  • Što se opterećenja servera tiče s obzirom da se lokalni resursi koriste, nema potrebe za skaliranjem kupovinom dodatnih mašina itd.

Zašto je to bitno za krajnjeg korisnika? Iz prostog razloga što tipičan biznis model web programa se zasniva na prihodu od 10-20 eura mesečno po korisniku što pretpostavljam ima ekonomsku računicu u početku sa malim brojem korisnika – mali protok i malo opterećenje servera. Ako bi program za knjigovodstvo doživeo tržišni uspeh i došao na primer do 10.000 korisnika od kojih većina koristi intenzivno sajt u kratkom vremenskom periodu /npr. od 9 do 14/ to bi zahtevalo bitno ulaganje u infrastukturu kako bi se održao nivo usluge na početnom nivou. Da ne spominjem veličinu protoka samih web stranica koje kreira 10.000 ljudi intezivno koristeći aplikaciju nekoliko sati.

Ajde da se odmah priče radi složim sa tvrdnjom da se to neće ozbiljno odraziti na profit koji se ostvaruje po korisniku /resursi oblaka jeftini, zakupa infrastrukture povoljan  itd/ i da samim tim inicijalna cena zakupa može da se održi tokom vremena. Ipak, čak i u tom slučaju kada troškovi ne rastu marginalno oni i dalje rastu značajno u apsolutnom iznosu i zahtevaju ozbiljno operaciono planiranje i izvršavanje (npr. sve više ljudi na platnom spisku se bave administracijom tih resursa itd)

U mom desktop distribuiranom S+S modelu knjigovodstvenog programa, tropkovi rastu zanemarljivo i u apsolutnom iznosu iz razloga gore navedenih. To automatski znači da sa povećanjem broja korisnika u mom modelu aplikacije marginalni trošak po korisniku opada i samim tim mi omogućava (ako to želim) da počnem da spuštam cenu svog proizvoda do nivoa teoretski nižeg od onog što bi mogao sa web programom za knjigovodstvo. Ono što je dodna prednost kod ovog modela za mene je što mi omogućava da sa minimalnim brojem ljudi operaciono podržavam veliki broj korisnika, što se podudara sa mojim stavovima o poželjnosti što manjeg broja zaposlenih.

Ne tvrdim da trka sa cenama ima smisla u Srbiji, ali na tržištima gde je ozbiljna tržišna konkurencija svako oružje koje može da se iskoristi u tržišnoj borbi je dobrodošlo. Niži TCO je definitivno poželjan u tom kontekstu.

Zakonodavstvo

Nema nikakvih problema – baza se nalazi u vašoj kancelariji trajno dostupna sa ili bez interneta.

Pristup lokalnom hardweru

Štampači, skeneri, fiskalne kase… – podrazumeva se.

Mane korišćenja S+S arhitekture programa za knjigovodstvo

Instalacije knjigovodstvenih programa i distribucija novih verzija

Za razliku od web aplikacija, desktop windows knjigovodtveni programi zahtevaju od korisnika da instalira nešto na svom računaru što je teorijski problem ali ne i u stvarnosti jer:

  • korisnik nije neki anonimni prospekt koga bi zahtev za instalacijom nečeg odvratio od posete vašem web sajtu. Korisnik je profesionalac kome ne smeta da odvoji 5 minuta i instalira nešto na svom računaru, sve dok je proces instalacije jednostavan, kratak i pravolinijski.
  • Tehnologija distribuiranja desktop aplikacija je napredovala značajno zadnjih godina kroz evoluciju ClickOnce tehnologije. ClickOnce omogućava da korisnik prostim klikom na link na internetu potpuno automatski instalira aplikaciju. Takođe, sama se aplikacija (isto potpuno automatski) nakon toga stara o samoažuriranju skidanjem i instaliranjem novih verzija.
    Za one koji ne znaju kako to radi Google Chrome internet browser ga koristi tako da ako ga već nemate instaliranog idite na http://www.google.com/chrome i kliknite na download link.
    Bezbolan i brz način na koji se instalira Chrome je identičan načinu na koji će se instalirati moj knjigovodstveni program.

Administracija desktop aplikacija je komplikovana u većim firmama

Netačno sa modernim ClickConce distribuiranim aplikacijama.

  • Aplikacija instalirana ClickOnce tehnologijom ne zahteva da korisnik ima administratorska prava na računaru
  • Ne vrši nikakve modifikacije windows registry baze
  • Svi fajlovi aplikacije se kopiraju u jedan fizički folder gde se aplikacija nalazi – ništa se ne instalira van njega tako da ako samo fizički kopirate folder na drugu mašinu program će raditi.
  • ClickOnce aplikacije su po deafultu bezbedne jer se instaliraju per user a ne per machine.
  • Aplikacije se samostalno osvežuju kada se nova verzija pojavi
  • ClickOnce aplikacije mogu biti instalirane sa interneta, ali i sa mrežnog diska itd.

Većina mašina nema .NET framework instaliran

Tačan podatak po mom iskustvu i to je jedini postojeći problem koji po mom mišljenju je postao minoran sa izlaženjem .Net framework v4 koji ja koristim.
Veličina instalera koji podržava i 32 i 64 bitne OS-ove je samo 41 Mb,što na ovom računaru na kome pišem ovaj post se skidao 52 sekunde. Ajde neka traje i 10x duže na većini računara mojih korisnika.
Da li je to što ćete samo jednom morati da sačekate 10 minuta toliki baš problem da ćete odustati od desktop knjigovodstvenog programa i preći na web program za knjigovodstvo gde ćete svakog dana provesti 5x više vremena čekajući na učitavanje stranica? Po mom mišljenju, 10 minuta čekanja za download je savršeno prihvatljivo za posleovne aplikacije i samim tim glavna prednost web knjigovodstvenih programa pada u vodu.

Intelektualna svojina i pirati

Najveća mana i izazov sa desktop knjigovodstvenim aplikacijama je nešto što se tiče interesa samih autora. Prednost web aplikacija je da ne možete da ih „krekujete“ jer se aplikacija izvršava van vašeg kompjutera te samim tim nemate ni šta da krekujete. Nema pirata, nema muke sa naplatom. Kod desktop aplikacija, možete da probate da zaštitite kod korišćenjem nekih tehnologija, možete da otežate posao krekerima obfuskacijom, ali ne možete nikako da se zaštitite da ko ima znanja i volje neće da probije zaštitu. Najbolji dokaz za to je 8200 piratskih rezultata na crack upit za jedan od poznatijih hrvatski program. Rešenje ovog problema je ekstremno teško pogotovu ako se ima u vidu da aplikacija treba da funkcioniše i bez interneta ali ja verujem da imam efikasno rešenje. Ne bi želeo da kvarim buduću zabavu krekerima pa neću sada i ovde diskutovati o detaljima tog mog pristupa sem hinta: World Of Warcraft.

Wpf je windows only tehnologija.

Potpuno tačno. I?
Ako mi to ikada bude bilo problem kod nas portovanje WPF aplikaciju Silverlight aplikaciju nije toliko komplikovano i eto meni podrške za Linux i Mac. Ako mi bude trebao web site za neki B2C ili B2B, koristicu ASP .NET MVC. Poneta je da su mi ti segmenti trenutno potpuno ekonomski nebitni, a šta če biti – biti će. J

Zaključak

Ni web ni desktop knjigovodstveni programi nisu optimalno rešenje po krajnjeg korisnika jer oba modela imaju bitne nedostatke. Pravo rešenje je S+S model koji kombinuje ta dve tehnologije na način u kome se one dopunjuju jednu drugu eliminišući time većinu mana koje pojedinačno imaju.

Rečima Zelenog  Zuba:”“Nije dobro Bijelo Dugme, nije dobra Katarina…”

Sledeći post će se baviti time pitanjima koje sve češće dobijam od ljudi preko emaila: šta je to uopšte što ja pravim, što baš program za PC servise, kakve veze uopšte imaju stvari o kojima ja pišem sa knjigovodstvenim programima itd…

Čitamo se,
Nikola TheClickOnce Malović

 

Posted by on 18.08.2010 in Implementacija

17 Comments

Tags: , ,

Knjigovodstveni programi – web vs desktop (1/2)

Internet knjigovodstveni program-sadašnjost, budućnost ili utopija?

pivara1Ako pogledate potražnju za stručnjacima “na zapadu” videćete da je 10x veća potražnja za web programerima nego za desktop programerima. Večina proizvoda stvorenih u zadnjih 5+ godina koji koristite su web aplikacije (GMail, Facebook itd). Desktop aplikacije koje ste počeli da koristite u to vreme su ili kreirane pre tog perioda ili su rezultat bitisanja u delu sveta lociranom na perfieriji informatičkih trendova. Čak je i sam Microsoft, uvidevši pretnju od Google Docs paketa kancelarijskih aplikacija, ChromeOS-a, iPad-a itd primoran da investira ozbiljne izbose u web office aplikacije i windows azure. “Web je pobedio, desktop je mrtav!” – odjekuje iz svih novina. Game over?

Generalno govoreći: da. Govoreći u kontekstu programa za knjigovodstvo: ni blizu. (“Heretik! Dajte lomaču!”)

Internet knjigovodstveni program je kao mlako pivo: mlako pivo je pivo i može da se popije ponekad kad baš mora, ali definitivno nije nešto što bi neko pio svakog dana posle ručka.

Desktop knjigovodstveni  program je kao hladno pivo: jeste da vam je potreban da imate frižider instaliran u stanu i da samo iz njega možete da uzmete flašu (a ne bilo koju iz bilo koje gajbe), ali se to zaboravi sa prvim gutljem.

Sad kad su flejmeri, hejteri i web ziloti namireni materijalom za komentarisanje (da ne moraju da čitaju dalje) da krenem polako za oba moja čitaoca da iznosim razloge i razmišljanja koja stoje iza ove moje tvrdnje

Prednosti internet knjigovodstvenih programa

Prednosti internet programa koje ja uobičajeno čujem se svode na:

  • korisnik ne mora da instalira ništa na kompjuteru
  • korisnik može da koristi aplikaciju bez obzira na to koji operativni sistem koristi
  • korisnik može da pristupi podacima sa bilo kog uređaja sve dok uređaj ima browser
  • problem distribucije novih verzija korisniku ne postoji – samim osveživanjem verzije na web serveru svi korisnici automatski kreću da je koriste
  • backup se radi centralno na serveru
  • korisnik ne mora da ima svoje tehničko osoblje, već sa ostalim korisnicima deli preofesionalno osoblje web aplikacije koje održava, razvija i podržava aplikaciju na profesionalni način.
  • Ajaxifikovan web korisnički ekrani ne zaostaju ni malo u odnosu na desktop klijente.

Evo nekoliko primera uspešnih svetskih internet programa za knjigovodstvo koji ilustruju te principe: ,

A evo i dva domaća primera:

  • http://www.povezise.com/ (ako vas zanimaju internet rešenja, obavezno proverite ovaj sajt)
  • http://srbija.e-racuni.com/ (lično nisam oduševljen, ali more korisnika misli drugačije)

Da skratim post i da bez diskusije sve ove stavke priznam odmah kao nepobitno tačne. Na žalost i pored toga to je nedovoljno za mene da odlučim da radim svoj program za knjigovodstvo kao web aplikaciju.

Mane internet programa za knjigovodstvo

Web programi ne koriste optimalno računarske resurse u službi korisnika

Razvoj kompjuterskih sistema je ciklične prirode: pre 30-tak godina smo imali DEC VAX mainframe računare i glupave terminale direktno povezane sa glupavim terminalima koji su omogućavali samo prosti unos podataka bez ikakvog procesiranja. To nije radilo kako treba pa su terminali postali pametniji prvo malo (mini kompjuteri) pa onda i mnogo (PC kompjuteri). Arhitektura računarskih sistema je prešla istovremeno put od 2-slojne klijent server do n-slojne moderne arhitekture kakvu je imamo danas. Mogućnosti današnjih PC računara su neverovatne u poređenju sa kompjuterima od samo pre nekoliko godina. Imamo često 2 i više procesora na 3 Ghz sa gigabajtima RAM memorije, terabajtima prostora na disku, grafičkim karticama sa više kola nego Craz računar 70-tih. E u tom momentu se pojavljuju web aplikacije koje su ništa drugo do “mainframe sistema 21 veka” gde ulogu kabla od mainframe-a (web servera) do terminala (pc kompjutera) vrši sad internet. Zahtevi web aplikacija su neka vrsta “najmanjeg zajedničkog delitelja” iz samog razloga što najslabija platforma mora da ih podrži tako da većina tih HW resursa je potpuno neiskorišćena. Ako se pogleda tendencija gde google ide sa ChromeOS-om, jasno se vidi težnja da se korisnici liše tog nepotrebno jakog hardvera i zamene jeftinim računarima koji sve podatke skladište na minframe računaru. Kada to zaživi, eto nas opet u 70-tim sa jedinom razlikom da je internet sveprisutna mreža dok je mainframe veza sa terminalom išla RS 232 putem.

Ja ne znam da li je to budućnost ka kojoj idemo (lično se nadam da ne), ali s obzirom da živimo i poslujemo u sadašnjosti ja očekujem ne maksimalno moguću produktivnost i korisničko iskustvo. Želim da koristim  svaki delić mogućnosti moje mašine kako bi bio produktivniji i efikasniji u vršenju svoje poslovne delatnosti. Knjigovodstveni program mora da služi meni, a ne W3C organizaciji.

To sve naravno zavisi od konteksta – ponekad je i to “zadovoljavajuće” rešenje sasvim prihvatljivo rešenje.

Ako ste korisnik koji unese jednu kalkulaciju sa nekoliko stavki nedeljno, onda stranica unosa vp kalkulacije internet knjigovodstvenog programa BIS WEB-a (ponavljam preporuku za sve koje zanima internet poslovna aplikacija) može da bude sasvim prihvatljiva. Ako ste korisnik koji unosi desetine kalkulacija dnevno od kojih neke imaju hiljade stavki onda vam ovaj ekran možda neće pružiti dovoljno mogućnosti u poređenju sa desktop knjigovodstvenim programom.

image

Web internet poslovni programi zahtevaju – internet

Za nas koji živimo van informatičkog “kruga dvojke”, opcije kao što su WiFi internet su ponekad više moranje nego stvar izbora (centrala nema ADSL priključke, fabrika je na periferiji predaleko od centrale, centrala je neka domaća koja radi preplitanje korisnika itd). Krene tako oluja, padne repetitor sa silosa, musterija stoji na kasi ispred vas, a vi joj kažete:”Ne mogu da vam izdam račun – nemamo internet” Smile 

Drugi sličan scenario (primenjiv i na krug dvojke) je recimo da web server usled preopterećenja /previše korisnika ili zlonamerni DDoS konkurencije/ bude ili potpuno nedostupan  ili usporenog odziva  u tolikoj meri da postaje mučenje raditi sa sajtom. Naravno, sve je to rešivo naravno dodavanjem balansiranih servera, firewall može da filtrira napade itd., ali sve to košta novaca, zahteva ozbiljno znanje i opet ne može da garantovano spreči da se to desi.

Po meni je rizik imati poslovnu aplikaciju koja je kompletno zavistna on neprekidno prisutnog interneta i koja prestaje da radi kada server na internetu prestane da se odaziva iz bilo kog razloga.

Web knjigovodstveni programi ne podržavaju potrebe knjigovodstvenih agencija

Ajde da predpostavim da prethodno navedeni nedostatak Html5 keširanje ili neki drugi način lokalnog browser keširanja može da reši. To i dalje rešava samo potrebe pojedinačnog korisnika koji koristi program (prvi dijagram dole).

imageimageimage

Ako zamislimo da imamo knjigovodstvenu agenciju sa npr. 12-oro ljudi koji rade na podacima jedne iste firme onda svako od njih zasebno kešira podatke što dovodi do 12x većeg protoka podataka, a takođe nastupa i potreba za sinhronizacijom keširanih podataka jer korisnik može da ima keširane podatke već promenjene i keširane na kompjuteru drugog korisnika. Kad se tome doda i treća P2P topologija, sinhronizacija kešlokalnih keševa koji se nalaze obično u formi flat fajlova postaje dostižan, ali i veoma težak problem.

Zakonodavstvo

Mišljenje Ministarstva finansija, br. 011-00-00091/2007-16 od 17.4.2007. godine sadrži odredbu koja sumirana nalaže da u slučaju kada domaće pravno lice organizuje računovodstvo na način da poslovne knjige vodi tako da računovodstveni softver instalira na serveru u inostranstvu, dužno je da i u poslovnim prostorijama pravnog lica u zemlji instalira i čuva standardni računovodstveni softver koji omogućava funkcionisanje sistema internih računovodstvenih kontrola i kojim se onemogućava brisanje proknjiženih poslovnih promena.

Običnim rečima, web računovodstveni program mora da se ili hostuje u potpunosi u Srbiji ili korisnik mora da ima mogućnosti da i bez pristupa internetu omogući računovodstvenu kontrolu.

U slučaju hostinga u Srbiji, cena i kvalitet infrastrukture  mogu da budu jako problematičan finansijski faktor (posebno imajući u vidu da se internet aplikacije nude obično za 10-20 eura mesečno). U drugom slučaju, omogućavanje offline moda internet računovodstvenih aplikacija je prilično krupan zalogaj koji (ako je uopšte moguć) vrlo verovatno zahteva instalaciju proksi servera na klijentskoj mašini, a od tog momenta to već nije internet web aplikacija po meni.

Web programi nemaju pristup lokalnom računarskom hardweru

Pritom prvenstveno mislim na: štampač, skener i fiskalnu kasu.

Dok je rešenje uobičajeno rešenje štampe dokumenata putem posebnih CSS stilova načelno primenljivo, u slučaju programa za knjigovodstvo koji je prepun štampanja složenih ad hoc izveštaja i dokumenata to nije tako jednostavno. Naravno da za svaki izveštaj može da se napravi ekran itd, ali to sve podiže trošak izrade i vodi diskutabilno kvalitetnom rešenju (u poređenju sa desktop varijantama). Iz tog razloga se često primenjuje “ping pong” rešenje gde korisnik klikom na link “Štampaj” na internet stranici izdaje web zahtev serveru koji onda na svojoj strani korišćenjem desktop rešenja generiše dokument u formi Adobe Acrobate PDF ili Microsoft Excell XLS koji onda korisnik otvori i odštampa. Problem sa tim rešenjem ja imam je što ruši poentu web-a: korisnik ne treba da instalira ništa. Šta ako korisnik nema reader ili excell? Šta ako koristim aplikaciju sa iPad-a ili nekog telefona i nemam ni mogućnost to da instaliram? Čak i da to sve nije problem, problem je korisničko iskustvo jer korisnik iz prozora svog web sajta prelazi u drugi prozor sa drugačijom navigacijom (embeded pdf reader) što u slučaju korisnika nevičnog radu na računaru može da bude jako zbunjujuće.

Ista ping pong priča je i sa fiskalnom kasom koja se koliko znam obično odrađuje tako što korisnik na svom kompjuteru instalira mali server koji sluša komande sa interneta tako da kada Web aplikacija uskladišti prvo na serveru podatke, web server pošalje te iste podatke desktop aplikaciji na računaru korisnika koji onda ima pristup hardveru računara te onda kasa dobija te podatke.

Skener ista priča, opet treba instalacija na klijentskom kompu, subomtimalna integracija itd…

image

 

Web programi odrađeni na pravi način su skupi

Implementacija je skupa

Da bi se dobilo korisničko iskustvo u radu sa web programima uporedivo sa desktop aplikacijom, potrebno je dosta jscript i CSS koda koji nije jednostavno kreirati, zaobilaženje osobenosti na koji browseri interpretiraju klijentski kod, rešavanje problema sa performansama koje Internet Explorer ima radeći sa velikim količinama jscripta kombinovanim sa velikim DOM-om itd. Pored performansi tu su i sigurnosni aspekti koji mora da se obuhvate takodje, zatim rešavanje problema da su poslovne aplikacije  statefull, a web sajtovi stateless. Za efikasan intenzivni rad računovodja opcija rada bez miša neophodnost koja je verujem opet moguća ali teško ostvariva u web aplikacijama  Itd, itd

Drugim rečima, da bi se prišlo blizu iskustvu koje pruža desktop aplikacija bez ikakvog truda, potrebno je dosta rada iskusnih web programera što košta dosta novca. I sa svim tim, ono čemu se možete nadati od web aplikacije je da bude blizu izgleda klasicne windows desktop aplikacije iz 1999.

Nema govora da dostignete potencijale koje nudi savremena desktop aplikacija (npr. zune)

Operacije (funkcionisanje sajta) je skupo

Kao što sam gore naveo dostupnost i performantnost servera web aplikacije je kritična za rad korisnika sa sajtom. Sve je to jednostavno kad imate 10 korisnika, ali kad imate desetine hiljada korisnika koji svi istovremeno rade u prvoj smeni sa špicom oko 11 sati potrebno je da imate ozbiljne resurse na serverskoj strani koji će da isprate procesiranje upita bazi i serviranje sadržaja (web stranica sa podacima) korisniku. Ne možete ništa kvalitetno ni da keširate jer je odnos citanja i pisanja daleko od onih idealnih 80/20.

Meni lično je to kompletno bacanje para jer dok se teret procesiranja svih 10000 korisnika prebacuje na server (i placa od strane proiyvodjaca web sajta) dotle potpuno besplatni resursi moćni kompjuteri tih korisnika leže potpuno neiskorišćeni. Hilarious , isn’t it? Smile

Web knjigovodstveni programi nemaju zahtev da rade sa prospektima

Kod većine Web 2.0 internet sajtova, privlačnost “ne zahteva nikakve instalacije” ima najviše smisla jer se žele privući slučajni prolaznici, ne-korisnici –> potencijalni korisnici  (eng. prospect users). Ako slučajni prolaznik sleti slučajno na vaš sajt ne želite da ga naravno terate da instalira ništa posebno jer veliki broj korisnika bi otišao i ne pogledavši šta to vi nudite.

Model knjigovodstvenih programa je drugačiji – to nisu prospect korisnici već korisnici koji aplikaciju koriste 8 sati dnevno u vršenju svoje primarne poslovne delatnosti. Ako korisniku ponudite da instalira 50 Mb java ili .NET framework (ako ih već nema) on će ih instalirati jednombez problema i uživati nakon toga svakog momenta u povećanoj u produktivnosti.

Zaključak

Imam ja još mojih ličnih zaključaka do kojih sam došao razmišljanjem na ovu temu, ali post je već predug te ću prestati ovde – čuli ste neke od glavnih razloga što je dovoljno da ilustruje razloge mog odbacivanja web knjigovodstvenih programa.

U drugom delu ovog posta, predstaviću S+S model koji sam ja odabrao da koristim koji lično verujem da kombinuje najbolje atribute web i desktop aplikacija na način optimalan po krajnjeg korisnika.

Do tad,
Nikola The Beerdrinker

 

Posted by on 11.08.2010 in Implementacija

16 Comments

Tags: