Veliki potrošački softver, aplikacije i veb lokacije rađaju kod vaših poslovnih korisnika preterana očekivanja od onog što vaš mali tim za razvoj može da uradi. Evo kako da se reše njihove (često opravdane) žalbe. Da li je Linkoln rekao da sav softver mrzimo bar neko vreme i da neki softver mrzimo sve vreme? Rekao bi to. Hvala bogu da ne možemo sav softver da mrzimo stalno jer, nakon što pogodimo pravu kombinaciju pritisaka na miša i tastaturu, većina tog softvera radi čarobne stvari. Šteta što put do tog rezultata često uključuje psovke i čupanje kose – posebno ako je kôd iz vaše vlastite kuće. Čak i da mrzimo korišćenje velikih proizvoda, aplikacija i veb lokacija, ocenjivanje razvoja softvera često nije fer prema prilagođenim projektima za posebne zadatke preduzeća. Uostalom, postoje na stotine ako ne i hiljade programera koji rade na velikim softverima i uslugama od kojih potrošači zavise u svakodnevnom životu. Postoje čitavi timovi posvećeni samo delu za plaćanje kreditnim karticama i čitave zgrade pune radnika posvećenih rešavanju kako da ljudi kliknu češće za jedan procenat. Ali teško je o manjim internim projektima ne suditi prema standardima koje postavljaju ove brigade programera.
Mnoga preduzeća imaju grupicu programera ili samo jednu opsednutu dušu, koja radi deo vremena na jednom softverskom projektu, a istovremeno žonglira sa nekoliko drugih. Krajnji korisnici u kompaniji, koji su se upravo okrenuli od veb lokacije za maloprodaju, ili od postavljanja neke duhovitosti na društvene mreže, promene karticu i očekuju isti nivo lakoće od korporativnog računovodstva koji se nalazi na njihovoj radnoj površini. Razvijanje softvera je teško, ali još je teže kada su vaši korisnici tu u hodniku i jedu u istom bifeu. Kada im se ne sviđa vaš kôd, osetićete to duboko u sebi. Lakše se emocionalno oporaviti od gadne greške ako nemate nekoga ko je stalno spominje u kompanijskom druženju.
Evo 11 razloga zbog kojih korisnici mrze vaš softver. Neke je lako popraviti. Mnogi su samo posledice veličine tima. Veći timovi su u stanju da naprave jednostavnije proizvode i da posvete vreme doterivanju.
Previše uticaja korisnika
Da li želite da razgovarate sa svojim drugarima iz osnovne škole ili čitate novosti o fudbalskoj utakmici vaše dece? Nemate drugog izbora nego da se prijavite na neku od nekoliko glavnih lokacija društvenih medija i prihvatite njihova pravila. Ako brinete o svojoj privatnosti, želite da izrazite emociju složeniju od dugmeta srca ili otpremite duži video u drugom formatu, nemate sreće. Glavne platforme definišu svoje uslove i korisnici moraju da se prilagode.
Projekti manjih preduzeća nemaju tu moć. Njihovi korisnici nisu pritisnuti zvaničnim Uslovima korišćenja. Šef tima odgovara velikom šefu i hijerarhija može da ga primora kada dođe vreme za bonuse. Sve to čini vrlo različit balans snaga, pa korisnici ne moraju da prihvate ono što su dobili i nađu načina da im se to dopada. Korisnici moraju da prihvate pravila koja postavi velika društvena platforma, ali za lokalni softver mogu efikasno da pritisnu. A ako uspeju da pritisnu, počeće da vas opsedaju za detalje.
Spor je
Nisu svi softveri preduzeća spori. Neke stare stvari zapravo pojure na novom hardveru, jer ih razvojni tim nije opteretio funkcijama. Ali kada se uvode nove funkcije, nije retkost da se sve pokvari.
Brzina je samo jedan kompromis sa kojim programeri moraju da žongliraju, a kada raste potražnja za funkcijama, performanse često nastradaju. Veliki timovi mogu usput da prave novi dizajn, ali manji timovi to ne mogu.
Jedino rešenje je suprotstaviti se nekim zahtevima za funkcije koje će narušiti korisničko iskustvo. Ako će novi SQL upiti biti puni složenih JOIN-ova, forsirajte nešto jednostavnije. Ako bi pametno novo dugme zahtevalo lanac sporih AJAX poziva, recite ne. Vreme je jedina stvar koju ne možemo da produžimo.
Izgleda staro
Stariji programeri često vole da posećuju prodavnice čiji softver za naplatu nije ažuriran još od ere zelenog ekrana, jer je to za njih nostalgično. Bez animiranih GIF-ova ili uopšte bilo koje boje. Ekran je matrica znakova fiksne širine u mreži 25×80. Ali, vreme odziva je neverovatno brzo jer mreža nije zakrčena zamamnim ikonama i uvodnim ekranima. Ali to je ipak zeleni ekran. Šefovima će se možda svideti jer radi bez većih ulaganja. Računovođi se možda sviđa jer su se troškovi razvoja isplatili već pre mnogo godina. Ali korisnici su zaglavljeni u 1960-im godinama, a neki će se žaliti. Sigurno, iskusni korisnici mogu da upamte sve funkcijske tastere za šetanje po raznim ekranima, ali mi ostali ne možemo da shvatimo ni kako da spustimo meni – ako je taj kvadrat tamo zaista meni.
Ako šefovi ne žele da se popravlja nešto što nije pokvareno, nastavite da podsećate korisnike da je to super efikasno. Odštampajte podsetnike kako biste pomogli ljudima koji ne mogu da zapamte šta rade koji funkcijski tasteri. Drugo rešenje je da se napravi grafička ljuska koja izgleda lepo, ali ne radi ništa osim što generiše naredbe koje se šalju na skrivenu sesiju zelenog ekrana. To dodaje prelepu fasadu bez promene unutrašnjosti. A ako neki ljudi prosto vole stari zeleni ekran, oni mogu i dalje da ga koriste.
Previše bezbednosti
Neki lokalni projekti trpe zbog nedovoljno bezbednosti, ali često je problem da je ima previše. Kompanija nije dovoljno velika da plati punu profesionalnu zaštitu, pa greši tako da je krajnje oprezna. Možda je neko jednom ubacio USB disk sa virusom i svima upropastio tu funkciju. Sada su svi USB portovi blokirani. Neko je preuzeo virus i sada su sva preuzimanja zauvek zabranjena. Mnogi mali timovi djeluju poput „Dr. Ne“, odbijaju sve zahteve i podržavaju samo najnevine funkcije.
Ne postoji jednostavno rešenje. Korisnici ne vole da ih drakonska pravila ograničavaju, ali oni će biti prvi koji će se pobuniti ako njihovi podaci o zaposlenju procure. Najbolje što možete učiniti je da osjetljive podatke sakupite u bolje zaštićene sisteme kako biste korisnicima omogućili određenu fleksibilnost.
Nema probe vlastitih proizvoda
Testiranje korporativnog softvera je uvek izazov i postaje sve složenije kada programeri malo znaju o tuđim veštinama. Možda se vaše preduzeće bavi aranžiranjem cveća, oštrenjem sekira ili seckanjem mesa za proizvodnju gurmanske hrane za pse. Velike su šanse da onaj ko pravi vaš softverski program za planiranje vremena ili internu bazu podataka ne zna ništa o onome što rade svi ostali. Jedno rešenje je da programer menja poslove po nedelju dana, ali to ne vredi kada poslovi uključuju ozbiljne veštine kao što su vožnja kamiona ili održavanje aviona. Ponekad je dovoljno da ih posmatra. Ponekad postoje pametni zaposleni koji mogu dobro da opišu poslove.
Međutim, programeri će morati da komuniciraju. Oni će morati da saslušaju svoje korisnike i dozvole im da im objasne kako da uklone smetnje i loše osmišljene tokove rada. Unapređenje ovih kanala je neophodno. Ako programeri ne mogu obavezno da koriste sopstveni kôd, moraće da razgovaraju sa onima koji ga koriste.
Promena poslovanja je skupa
Možete da promenite poslovanje u skladu sa softverom, ili da napišete softver koji odgovara poslu. Često bi ovo prvo zahtevalo prekvalifikaciju na hiljade ljudi i prepravak mnogih čudnih i tajnovitih radnih tokova koji su nastajali decenijama. Zato menadžeri često pokušavaju da nabave novi softver koji će se uklopiti sa starim poslovanjem i to znači da odražava složenost koja se razvijala tokom godina. Ponekad, kada se ljudi žale na softver, oni se zapravo žale na neku neobičnu praksu koja je počela pre više decenija i sada je ovekovečena u softveru.
Za to nema rešenja, osim ako priznamo da je softver možda otkrio neku lošu ili preterano starinsku praksu poslovanja. Ako vaši korisnici mrze da koriste softver jer je neki njegov deo previše složen, možda je to zato što je poslovanje previše složeno. Iskoristite tu mržnju kao signal za veće promene.
Manji broj ciklusa prepisivanja
Mnogi programi se mogu poboljšati tako da se potpuno prepišu. Znam jedan tim koji svakog januara krene u obnavljanje i svake godine napravi potpuno novu verziju. Skupo je, ali rešava pitanje nadimanja i nereda koji se nagomilava. Većina kompanija ne može to da priušti, a ako i mogu, često su u iskušenju da novac ulože na nešto drugo. Tako softver postaje sve stariji. Za to nema rešenja osim budžeta dovoljno velikog da podrži potpunu obnovu. Do tada, korisnici samo treba da prihvate ono što se ne može obnoviti.
Sve stariji radni okviri
Nekada kada je softver bio nov, programeri su izabrali radni okvir za novi kôd. Tada je izbor bio pametan – ali zamah je opao. Možda je kompaniju radnog okvira kupio neko kome nije bilo stalo. Možda je bankrotirala jer je uprava radnih okvira trošila profit na luksuzna putovanja u Evropu? Možda su zajednicu otvorenog koda napali neki toksični mrzitelji. Kada je vaš tim odlučio da budućnost kompanije poveri ovom okviru, to je bila pametna odluka, jer je okvir bio neverovatan. Ali sada se on drži na tankim nitima, dok se hakerski vukovi noću šunjaju tražeći neobezbeđene bezbednosne propuste.
Malo se može učiniti da se isprave stare greške poput ove. Možete pokušati da isplanirate budućnost biranjem većih, bolje podržanih kompanija ili projekata otvorenog koda sa širokom podrškom, ali ima granica u predviđanju budućnosti. Sve što možete da uradite jeste da razmislite o prepisivanju. Uz malo sreće, možete spasiti veliki deo poslovne logike.
Previše funkcija
Kompanija koja je pravila osnovni radni okvir ubacila je sve karakteristike kojih je mogla da se seti da bi se zadovoljile potrebe na stotine kompanija. Vaša kompanija, međutim, većinu njih ne koristi, ali one sede tamo i skupljaju prašinu na menijima i, što je još gore, zbunjuju nove korisnike koji se uvek pitaju zašto su te funkcije tu. Može se imati previše dobrih stvari.
Ponekad ih možete izbaciti ili vešto prebaciti u podmenije van vidokruga. Prepisivanje poslovne logike možda neće biti isplativo, ali često je moguće očistiti stablo menija i potkresati opcije dostupne prosečnom korisniku.
Rukovanje greškama
Izuzeci i greške neprestano se javljaju u toku rada. Ponekad je prekinuta veza do baze podataka ključeva. Drugi put obrasci sadrže nesaglasne vrednosti. Ključno je dati korisniku mogućnost da razume, zaobiđe i prevaziđe probleme.
Manjim projektima nedostaju ciklusi traženja pogrešaka koji bi otkrili sve moguće greške i osigurao se elegantan način oporavka. Teško je znati šta je gore: nema poruke o grešci ili šifrovana poruka sa čudnim brojem.
Za testiranje i ispravljanje pogrešaka vreme mnogo znači. Najbolje rešenje je stvoriti dobar okvir za prijavljivanje grešaka kako bi se korisnici ohrabrili da prijavljuju svoje probleme. Pažljivo praćenje i dobra dokumentacija su prvi korak ka ispravljanju ovih grešaka.
Mali budžet
Čak i najuspešnije kompanije ne mogu priuštiti dovoljno vremena za razvoj da bi programeri proizveli nešto u istim osnovnim standardima kao ogromni potrošački proizvodi koje koristi skoro polovina sveta. Velike banke, trgovinski multinacionalni konglomerati i farmaceutske kompanije bogate su po nekim standardima, ali nemaju dovoljno rezervnih novčanih sredstava za podršku ozbiljnom razvoju. Ponekad je potrebno samo podsetiti korisnike da su alati napravljeni sa malim budžetom. Ako su zarade dobre, a fond bonusa obilan, možda je to cena da bi se koristio softver koji nije tako sjajan.
Izvor: CIO