upotrebljivost grafiČkih raČunarskih …vljubovic.members.epn.ba/diplomski.pdf(usability...

25
U N I V E R Z I T E T   U   S A R A J E V U E L E K T R O T E H N I Č K I  F A K U L T E T   S A R A J E V O UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH INTERFEJSA - DIPLOMSKI RAD - Mentor: Doc. dr Tadej Mateljan, dipl. el. ing Kandidat: Vedran Ljubović Sarajevo, april 2005. 1

Upload: others

Post on 10-Feb-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

U N I V E R Z I T E T   U   S A R A J E V UE L E K T R O T E H N I Č K I   F A K U L T E T   S A R A J E V O

UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIHINTERFEJSA

­ DIPLOMSKI RAD ­

Mentor:

Doc. dr Tadej Mateljan, dipl. el. ing

Kandidat:

Vedran Ljubović

Sarajevo, april 2005.

1

Page 2: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

Sadržaj1. UVOD........................................................................................................................32. OPĆENITO O UPOTREBLJIVOSTI........................................................................4

2.1. Ergonomski dizajn proizvoda.............................................................................42.2. Problem interakcije čovjek­računar (Human Computer Interaction – HCI)......52.3. Definicija upotrebljivosti (usability) i razvoj te oblasti......................................52.4. Inženjering upotrebljivosti..................................................................................7

3. MJERENJE UPOTREBLJIVOSTI............................................................................83.1. Efektivnost..........................................................................................................93.2. Efikasnost.........................................................................................................103.3. Zadovoljstvo korisnika.....................................................................................103.4. Ostale metrike...................................................................................................113.5. Specifikacija upotrebljivosti.............................................................................13

4. OSNOVNI PROBLEMI UPOTREBLJIVOG GUI DIZAJNA................................154.1. Grafički korisnički interfejs (GUI)...................................................................154.2. Dizajn interakcije..............................................................................................164.3. Uticaj dizajna interakcije na klasične metode razvoja softvera........................174.4. Problemi – jedno viđenje..................................................................................184.5. Problemi – drugo viđenje.................................................................................19

5. PRIMJERI................................................................................................................215.1. Interfejs za pretragu dokumenata aplikacije.....................................................215.2. Sistemski program za pretraživanje datoteka...................................................23

6. ZAKLJUČAK..........................................................................................................25L  I  T  E  R  A  T  U  R  A...........................................................................................25

2

Page 3: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

1. UVOD

Pojmovi   upotrebljivost   (eng.  usability),   inženjering   upotrebljivosti   (eng.  usabilityengineering), interakcija čovjek­računar (eng.  human­computer interaction – HCI) uproteklih desetak godina postali  su nezaobilazan dio informatičke nauke. Predmetipod   ovim   imenima   uvedeni   su   na   sve   vodeće   studije   informatike   na   svijetu.Konferencije poput CHI1 rezultiraju vrijednim naučnim radovima. Vodeće softverskekompanije, kao što su Microsoft, Apple, IBM i Sun, posvetile su čitave odjele razvojuupotrebljivosti, a rezultat njihovog rada su vrlo korisni priručnici.2

Početkom osamdesetih godina, pojavio se opravdan strah od moguće softverske krize.Zaposleni u firmama su otvoreno odbijali da koriste uvedene informacione sistemetvrdeći  da   su  bili   produktivniji   “na   stari  način”.  Naravno,  žalosno   je   da   se  novetehnologije   ne   koriste   isključivo   zbog  nepažnje   programera,   ali   poseban   problempredstavlja to što su firme utrošile veliki novac na uvođenje sistema koji se ne koristi.

Analizom razloga ove pojave došlo se do zaključka da programeri prilikom razvojasoftvera nemaju u vidu krajnjeg  korisnika.   Interfejs  nije  zasnovan na  potrebama izahtjevima  korisnika,   nego  na   funkcijama   samog  programa.  Pojedine  kontrole   sukomplikovane i teške za naučiti,  što programer ne uočava jer ih je sam dizajnirao.Korisnik je nezadovoljan konačnim sistemom i smatra da on ne obavlja neke zadatkekoje je trebao obavljati, dok s druge strane nudi funkcije koje su nepotrebne. 

U   posljednje   vrijeme,   zahvaljujući   naravno   i   studiji   upotrebljivosti,   ostvareni   suznačajni pomaci u rješavanju ovih problema. Kod korisnički usmjerenog dizajna (eng.user­centered   design)   interfejs,   kao   i   ostatak   sistema,   projektuje   se   na   osnovukorisničkih zahtjeva, a korisnik je uključen u sve faze životnog ciklusa informacionogsistema kroz prototipove i testiranje.

Ovu temu sam odabrao prije svega zato što je to aktuelna i značajna oblast koja sedotiče   moje   omiljene   teme   –   razvoj   softvera   –   kao   i   drugih   oblasti   kao   što   supsihologija,  grafički  dizajn,  ergonomija,  antropologija  itd.;  ali   i  zato što sam se usvom radu susretao sa loše dizajniranim i neupotrebljivim uređajima i programima,kao i problemima koje korisnici imaju pri radu s njima. Obzirom da je kod nas vrlomalo diplomskih i magistarskih radova odbranjeno na ovu temu, odlučio sam da šireprezentiram temu upotrebljivosti grafičkih interfejsa, u nadi da ću u svom budućemradu imati priliku da se detaljnije posvetim nekim od problema iz ove oblasti.

Nagli razvoj grafičkih interfejsa (grafički operativni sistemi, web itd.)  u posljednjevrijeme   otvorio   je   jedan   potpuno   novi   skup   problema,   kao   što   su:   dizajn

1 http://www.chi2005.org/2 http://www.microsoft.com/usability/default.htm

http://developer.apple.com/documentation/mac/HIGuidelines/HIGuidelines­2.html

3

Page 4: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

interaktivnosti, dizajn ilustrativnih grafičkih elemenata (ikone itd.) koji bi trebali da sepozovu na sličnost sa stvarnim svijetom i na taj način budu “intuitivni” (u smislu danikakva posebna obuka za rad sa sistemom nije potrebna), novi načini komunikacijesa računarom, nove grafičke paradigme itd.

2. OPĆENITO O UPOTREBLJIVOSTI

2.1. Ergonomski dizajn proizvoda

Svakako ne možemo govoriti  o  upotrebljivom dizajnu  računarskih  programa a daprethodno ne spomenemo upotrebljiv dizajn proizvoda uopšte.

Tokom Drugog svjetskog rata, američka vojna industrija je ubrzano proizvodila novanapredna oružja.  Pokazalo  se da dizajn  aviona  ili   tenka može drastično uticati  narezultate na bojnom polju. Ovi pokazatelji su sačuvani, pa se nakon rata razvila čitavanova oblast pod nazivom ergonomija (grč. ergos = rad i nomoi = prirodni zakoni) čijije   zadatak   da   proučava   dizajn   objekata   tako   da   su   oni   bolje   prilagođeni   oblikuljudskog  tijela.  Ergonomija  je  većinom usko povezana sa medicinom, a  do svojihrezultata dolazi dobrim dijelom statistički tj. analizom negativnih posljedica korištenjaloše dizajniranih proizvoda.

Danas   je  većini   ljudi  pojam “ergonomski”  poznat  putem ergonomski  dizajniranihpredmeta kao što su stolice ili stolovi. Ipak, fokus ergonomije od samog početka bioje   ne   samo   na   ljudskoj   anatomiji.   Ergonomija   se   definiše   prije   svega   kaoprilagođavanje radnog mjesta čovjeku, umjesto obratno.

U SAD se obično koristi   termin “ljudski faktori” ili  “inženjering ljudskih faktora”(Human Factors Engineering) koji bolje odražava ovu činjenicu, dok je “ergonomija”termin uobičajen u Evropi.

Jedna od disciplina ergonomije je i primijenjena psihologija, koja se bavi pitanjimakao što su:• kakve su prosječne sposobnosti korisnika?• kakva je korisnikova sposobnost učenja novih stvari?• kolika   je  vjerovatnoća  greške  i  kako će se   ta  greška odraziti  na objekat   (da   li

objekat ima sposobnost kompenziranja greške)?• kakav je odnos pojedinca i grupe prema objektu?• da li objekat omogućuje komunikaciju među članovima grupe? itd.

Budući da je i računar (sve više) dio radnog mjesta, sasvim je razumljivo razmatrati iproblem ergonomije računara, posebno kada imamo u vidu da su mnogi proizvodniprocesi u industriji danas automatizirani putem računarskog interfejsa.

4

Page 5: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

Pitanje ergonomije računara postavio je Brian Shackel još 1959. godine, ali tek 80­tihgodina prošlog vijeka se ozbiljnije pristupilo tom problemu.

2.2. Problem interakcije čovjek­računar (Human Computer Interaction – HCI)

Interakcija   čovjek­računar   (HCI)   je   oblast   koja   se   bavi   proučavanjem   interakcijeizmeđu ljudi (korisnika) i računarskih sistema. To je interdisciplinarno polje vezanoza  računarske  nauke,  psihologiju,  kognitivnu  nauku,   ergonomiju   (ljudske   faktore),dizajn, sociologiju, bibliotekarstvo, vještačku inteligenciju i druge oblasti.

Najvažniji pojam u HCI je interfejs (eng. interface). Interfejs je tačka na kojoj dolazido   interakcije   između čovjeka   i   računara.   Interfejs  uključuje  hardver   (tj.   ulazne   iizlazne uređaje) i softver (npr. određivanje koje informacije se prezentiraju korisniku ina koji način).

Osnovni cilj HCI je – poboljšati interakciju između korisnika i računara tako što će seračunari učiniti lakšim za korištenje. HCI se bavi:

• metodologijama i procesima za dizajniranje interfejsa (tj. ako je dat zadatak i klasakorisnika, dizajnirati najbolji mogući interfejs uz data ograničenja, optimizirajućiga za željeno svojstvo kao što je jednostavnost učenja ili efikasnost korištenja);

• metodama   implementacije   interfejsa   (npr.   softverski   alati   i   biblioteke   ilinajefikasniji algoritmi);

• tehnikama procjene i usporedbe interfejsa;• razvojem novih interfejsa i tehnika interakcije;• razvojem deskriptivnih i prediktivnih modela i teorija interakcije.

2.3. Definicija upotrebljivosti (usability) i razvoj te oblasti

Već  početkom 80­tih godina postalo je jasno da se postojeći  računarski sistemi nekoriste dovoljno efikasno, ali ne zbog ograničenja tehničke prirode (hardverskih ilisoftverskih) već zbog – nepravilnog dizajna. The Standish Group, istraživački centar uoblasti IT, u jednoj studiji tvrdi da je svega 30% svih informacionih sistema uspješno,a preostalih 70% su ili  potpuni promašaj  ili  predstavljaju  tek marginalan doprinossvojoj  organizaciji.  Britanska  novina  Sunday  Times  obavila   je   studiju   računarskihkorisnika čiji je zaključak da “tri četvrtine korisnika računara ne može natjerati svojemašine da rade ono što oni žele, a pojedini ih udaraju iz čiste frustracije...”

Jedan termin koji se počeo koristiti  80­tih, a popularan je i danas, su  user­friendlyproizvodi   (prijateljski   prema   korisniku).   U   ozbiljnim   studijama   ovaj   termin   seodbacuje jer je nedovoljno precizan: koje osobine treba da posjeduje proizvod koji jeuser­friendly?   Ipak,   vrijedno   ga   je   spomenuti   jer   on   predstavlja   vezu   sa   ranijimstudijama ergonomičnosti, a bitno je i to da se samim terminom stavlja korisnika na

5

Page 6: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

centralno mjesto koje on i zaslužuje. 

Thomas Landauer, svakako jedan od najznačajnijih autora u ovoj oblasti, zagovornikje termina user centered design (dizajn koji se fokusira na korisnika). Ipak pojam kojije   najviše   zaživio   u   računarskim   naukama   je  usability,   koji   ću   prevoditi   kaoupotrebljivost. 

Međunarodna organizacija za standardizaciju (ISO) dala je definiciju upotrebljivosti:Efektivnost, efikasnost i zadovoljstvo s kojim je zadati korisnik u stanju

da obavi zadate zadatke u određenom okruženju.

Ova definicija ujedno ističe i osnovne probleme upotrebljivosti:• Efektivnost (effectiveness) – sistem je efektivan ako su korisnici u stanju da izvrše

postavljene zadatke. Koncept utrošenog vremena ili  jednostavnosti upotrebe nijedio “efektivnosti”. Drugim riječima, ako je jedan sistem u stanju da izvrši određenizadatak a drugi nije, samim time prvi sistem je upotrebljiviji za taj zadatak.

• Efikasnost  (efficiency)  –  je   pojam   kojim   se   uključuje   vrijeme   u   definicijuupotrebljivosti.   Ako   je   za   obavljanje   zadatka   na   jednom   sistemu   potrebno   5minuta, a na drugom 10 minuta, brže vrijeme obavljanja zadatka na prvom sistemuimplicira da on ima bolju upotrebljivost.

• Konačno,   treća  komponenta   ISO  definicije   je  zadovoljstvo  korisnika   sistemom(eng.  user satisfaction). Zadovoljstvo korisnika je komplikovano pitanje koje semože odnositi na razne aspekte sistema, ali je ono ipak konkretno i može se mjeriti.Za sada, zadovoljstvo korisnika definisaćemo kao ono što korisnika opredjeljuje zajedan od dva sistema pod uslovom da su sistemi u svim drugim aspektima jednaki.

Slabost   ISO definicije   je   što  ona  ne  uključuje  pojam  jednostavnosti   učenja   (eng.learnability),   mada   se   može   pretpostaviti   da   je   ona   dio   pojma   efikasnosti   ilizadovoljstva.

Još jedna stvar na koju treba obratiti pažnju prilikom definisanja upotrebljivosti jestepreciznost definicije. Problemi o kojima se govori mogu varirati izuzetno od jednogdo drugog korisnika; takođe, broj različitih  načina  na koje korisnici mogu koristitisistem  i  zadataka  koje  njime  mogu  obavljati   su   skoro  beskonačni;   i  okruženje  ukojima se ovi zadaci obavljaju može uticati  na njihovo obavljanje na najrazličitijenačine.

Iz tog razloga ISO definicija govori o konkretnom tj. zadatom korisniku i konkretnomtj. zadatom zadatku (cilju), kao i o jednom određenom okruženju. Ovo je povod zbogkojeg mnogi autori iz oblasti upotrebljivosti govore o “pesimizmu” i “pesimističnojdefiniciji” ­ sistem koji savršeno zadovoljava sve korisnike u svim okruženjima i zasve zadatke je nemoguć.  Smatra se da je ovaj pesimizam dobra stvar, jer prisiljavastručnjake   iz   oblasti   upotrebljivosti   da   razmotre   najrazličitije   faktore   pri   dizajnusistema. Potrebne su naravno određene metode generalizacije korisnika, platformi izadataka, a o tome ćemo govoriti kasnije.

6

Page 7: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

2.4. Inženjering upotrebljivosti

Ideja “inženjeringa upotrebljivosti” je da se problemu upotrebljivosti sistema pristupina kvantitativan način,  odnosno na takav način da se razne osobine upotrebljivostimogu  izraziti  brojčano.  Tako se upotrebljivost  može  ugraditi  u  same specifikacijeproizvoda. 

Najvažniji   koncept   je   sposobnost  mjerenja   upotrebljivosti   sistema.   Tradicionalnipristup je da se sistem najprije dizajnira i primijeni kod korisnika, a zatim da se naosnovu povratnih informacija korisnika vrše izmjene radi poboljšanja upotrebljivostisistema. Naravno ovo nije najbolji način. Mjerenje i procjena upotrebljivosti se moževršiti   već   od   faze   dizajna   informacionog   sistema,   tako   da   se   korisniku   odmahisporučuje upotrebljiv sistem, a to znači manje troškove implementacije.

Studij   upotrebljivosti   i  HCI   je   danas   standardan  dio  programa  univerziteta   širomsvijeta, a  jedno od usmjerenja na tim univerzitetima je  i  “inženjer upotrebljivosti”(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika.

Upotrebljivost se odnosi na mjeru uspješnosti proizvoda – bio to softver, računarskisistem   ili   konačan   proizvod.   Inženjering   upotrebljivosti   je   cjelokupan   procesproizvodnje   upotrebljivih   proizvoda,   a   inženjer   upotrebljivosti   je   osoba   koja   toomogućuje.  Procjena  upotrebljivosti   je  proces   tokom kojeg   se   sistemi   i  proizvodiprocjenjuju   koristeći   neke   od   metoda   dostupnih   inženjeru   upotrebljivosti   iliprocjenitelju.

Inženjer upotrebljivosti je uključen i u proces specificiranja zahtjeva korisnika i u saminženjering softvera.  Na  taj  način  veza   između krajnjeg korisnika   i  programera  jedirektna,   te   se   garantuje   uključenost   korisnika   u   sve   faze   dizajna   softverskogproizvoda. Ovo je takođe jedan od elemenata user centered designa.

Životni ciklus upotrebljivosti sastoji se od sljedećih koraka:• upoznavanje korisnika• upoznavanje zadatka• specificiranje zahtjeva korisnika• postavljanje dometa upotrebljivosti• proces dizajna• primjena pravila, heuristika• prototipiranje• evaluacija sa korisnicima• redizajn i evaluacija• konačna evaluacija sa korisnicima i pravljenje izvještaja

Kao što smo vidjeli u prethodnom poglavlju, upoznavanje korisnika i zadataka koje

7

Page 8: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

korisnik želi obavljati su ključni problem upotrebljivosti.

Najčešći način identificiranja korisnika sistema jeste pravljenje upitnika. Pored toga,koriste   se   metode   neformalnog   razgovora,   posmatranja,   “sampling”   i   “logging”aktivnosti   (pravljenje dnevnika aktivnosti  korisnika  pri   radu sa  sistemom),  analizakorisničkog radnog mjesta i intervju. Ono što je važno naglasiti jeste da korisnik nemože dati  odgovor na pitanje kako treba dizajnirati  sistem, ali  može dati  mnoštvokorisnih   savjeta   i   informacija.  Na  kraju  korisnike   razvrstavamo u  kategorije,   npr.prema nivou ekspertize (poznavanja rada s računarom), pri čemu treba naglasiti danije uvijek moguće apsolutno smjestiti korisnika u određenu kategoriju ili grupu.

Što se tiče identificiranja zadataka, u priručnicima se preporučuje korišenje metodeNormanovih ciklusa ili etnografske metode. Pošto to izlazi iz okvira ovog diplomskograda, neću se detaljnije osvrnuti na te metode.

Faza   specificiranja   zahtjeva   korisnika   je   vrlo   važna   za   dobijanje   upotrebljivogproizvoda. Nakon što se identificiraju zadaci koje sistem treba da obavlja, skicira sedokument pod nazivom Zahtjevi korisnika koji  se zatim usavršava kroz dijalog sakorisnikom. Osnovni elementi koje ovaj dokument mora sadržati su: organizacioni iposlovni   zahtjevi;   sistemski   tehnički   zahtjevi;   i   korisnički   zahtjevi   odnosnofunkcionalnost.  Postoji više metoda za predstavljanje zahtjeva korisniku kao što sustoryboards, simulacije, rapidno prototipiranje itd.

3. MJERENJE UPOTREBLJIVOSTI

Prema mom mišljenju ovo je najvažniji aspekt upotrebljivosti, pa ću o tome govoritinešto detaljnije.

Podsjetimo se prije svega definicije upotrebljivosti koja je data u ISO standardu:Efektivnost, efikasnost i zadovoljstvo s kojim je zadati korisnik u stanju

da obavi zadate zadatke u određenom okruženju.

Dakle, obraćamo pažnju na tri faktora pri dizajnu softvera: program treba biti• efektivan – korisnik može izvršiti zadatak;• efikasan  – korisnik može izvršiti zadatak u najmanjem mogućem vremenu i uz

najmanji mogući trud;• zadovoljavajući – korištenje programa treba biti zadovoljstvo korisniku.

Još   jedna  korisna  definicija  upotrebljivosti   je  ona  koju   je  dao Shackel,  a  koja   seobično obilježava skraćenicom LEAF: Learnability (jednostavnost učenja korištenja),Effectiveness   (efektivnost),   Attitude   (stav   korisnika   prema   sistemu),   Flexibility(fleksibilnost).

8

Page 9: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

3.1. Efektivnost

Definicija   efektivnosti  prema   ISO standardu  glasi:   “preciznost   i   potpunost   kojomkorisnici postižu određeni zadatak”. U kontekstu osnovne definicije ovo znači stepenu   kojem   je   zadatak  obavljen,   zadatim   alatom,   od   strane   konkretnog  korisnika,   ukonkretnom okruženju. Kod jednostavnih zadataka dovoljno je dati zadatak korisnikui  vidjeti  da   li  ga on može   izvršiti   ili  ne.  Složeniji  zadaci  mogu biti   i  djelomičnoizvršeni.

Poželjno   je   ponekad   razbiti   zadatak   na   podzadatke   kako   bi   se   svaki   odvojenoistraživao. Na primjer, pisanje pisma u programu za obradu teksta možemo posmatratikao cjelovit zadatak – da li je korisnik odštampao pismo? Ali ako je odgovor na ovopitanje da pismo nije odštampano,  to nam ne govori  ništa o problemima koje našsoftver možda ima, pa stoga bismo mogli razbiti problem na podzadatke:

a) unos tekstab) provjera pravopisa (spell­checking)c) formatiranje tekstad) snimanje datotekee) štampanje na papir.

Mogli   bismo   i   dalje   razbijati   ove   zadatke,   npr.   zadatak   provjere   pravopisa   napodzadatke pokretanja programa za provjeru i izbora/odbacivanja ponuđenih varijanti.Čak i ovo možemo podijeliti na pojedinačne zadatke pomjeranja miša i klikanja! Alinajčešće tako detaljna podjela nije potrebna.

Osnovne metrike efektivnosti,  odnosno kategorije za pobliže ispitivanje i mjerenje,su:➢ Omjer uspješnog i neuspješnog ispunjavanja zadatka.➢ Frekvencija upotrebe pojedinih komandi odnosno mogućnosti/funkcija programa.➢ Broj i obim problema koje ima korisnik pri ispunjavanju zadatka.➢ Kvaliteta izlaza.

Omjere   uspjeha   i   neuspjeha   posmatramo   na   nivou   čitavog   zadatka   ili   pojedinihpodzadataka.

Frekvencija upotrebe pojedinih mogućnosti nas upućuje na probleme sa efektivnošćusistema,   na   primjer:   Da   li   postoji   redundantna   (dvostruka,   nepotrebna)funkcionalnost? Zašto se pojedine komande ne koriste? Da li su uopšte potrebne? Dali postoji neki drugi, efikasniji način rješavanja problema? itd.

Ovisno o problemu, izlaz koji proizvede korisnik može biti ili ispravan ili pogrešan,odnosno   može   imati   razne   nivoe   prihvatljivosti.   Tačan   nivo   prihvatljivog   izlazadefinišemo   imajući   u   vidu   zadatak,   npr.   tipfeler   u   poštanskoj   adresi   nije   tolikokatastrofalan kao onaj u telefonskom broju.

9

Page 10: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

3.2. Efikasnost

Definicija   efikasnosti   glasi:   “preciznost   i   potpunost   ostvarenja   cilja   u   odnosu   napotrošene resurse”. Neki za ovo koriste termin “propusnost” (eng. throughput). 

U najjednostavnijem smislu, pod resursima se posmatra utrošeno vrijeme. Ponekadželimo takođe posmatrati i uloženi trud, dakle poželjno je da korisnik koristi sistem uzšto manje napora.

Glavni problemi koji se javljaju su izbor odgovarajućeg vremenskog okvira u kojemzadatak   treba   biti   zadovoljen,   te   problem   nepotpuno   ispunjenih   zadataka   koji   serješava razbijanjem zadatka na podzadatke kao što je već objašnjeno. Pitanje truda jemalo složenije.  Da li  ćemo posmatrati  pojedinačne akcije tastaturom ili  mišem, ilićemo se pozivati na korisnikovu subjektivnu procjenu truda koji je uložio/la – to ovisiod samog problema koji rješavamo.

Tako bi metrike efikasnosti sistema mogle biti:➢ Vrijeme potrebno za obavljanje izabranih zadataka.➢ Broj pojedinačnih akcija potrebnih za obavljanje zadatka.➢ Vrijeme potrošeno na čitanje dokumentacije.➢ Vrijeme potrošeno na pretraživanje Interneta.➢ Vrijeme potrošeno na otklanjanje grešaka.

Prve dvije metrike bi mogle predstavljati vrijeme i trud. Vrijeme i broj akcija običnostoje u međuzavisnosti, mada to ne mora obavezno biti slučaj. Neke akcije traju duženego druge, pa ih je nekad potrebno razbiti sve do broja pritisaka na tipku ili klikovamišem.

3.3. Zadovoljstvo korisnika

Definicija  zadovoljstva prema ISO standardu  je:  “komfor  i  prihvatljivost  sistema”.Očito,  ovo je   teško  izraziti  na mjerljiv  način.  Jedina mogućnost   jeste da  izvršimoeksperiment na korisnicima, tj. da ih zamolimo da koriste naš sistem i zatim da opišukoliko su zadovoljni njegovim radom. Međutim i ovo ima svojih problema. Npr. akozamolimo grupu od 50  ljudi  da ocijene koliko vole čokoladu brojem od 1 do 10,uvijek se postavlja pitanje da li je ocjena 10 jednog ispitanika isto što i ocjena 10drugog. Postoje ideje da se komfor korisnika mjeri količinom nepotrebnih radnji kojevrše pri korištenju sistema. Npr. ako korisnik puno “šara” mišem prije izbora opcije,moguće je da se nervira jer se opcije ne nalaze tamo gdje želi ili očekuje da budu.

Cilj dizajniranja sistema je da se promovira kontinuirana i produžena upotreba sistemaod strane korisnika. Stoga je zadatak inženjeringa upotrebljivosti, između ostalog, daosigura da korisnik ima pozitivne stavove prema sistemu. 

10

Page 11: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

Moguće je mjeriti stav korisnika koristeći upitnik, na primjer:

Kako biste ocijenili vaše opšte mišljenje o sistemu?1 = vrlo loš    do   5 = vrlo dobar

Razuman uslov koji možemo postaviti je da treba biti barem 90% korisnika koji suocijenili sistem sa 4 ili 5. Na ovaj ili sličan način može se dobiti relativno objektivnamjera zadovoljstva korisnika. Ipak, nove ideje za rješavanje ovog problema se javljajusvakodnevno.

3.4. Ostale metrike

Kod definicije upotrebljivosti koju je ponudio Shackel spomenuta je i  jednostavnostučenja  (learnability)   kao   metrika   odvojena   od   efikasnosti,   zatim  stav   korisnika(attitude) kao nešto vrlo slično ranije opisanom zadovoljstvu korisnika,  te potpunonova kategorija –  fleksibilnost.  Poslužićemo se ovom Shackelovom definicijom dabismo dopunili našu malu listu metrika koje generalno primjenjujemo na sistem.

Da bi bilo moguće koristiti sistem efektivno i što je brže moguće, potrebno je da onbude   lagan   za   učenje   korisnicima.   Jednostavnost   učenja   je   prvo   što   korisniciprimjećuju na sistemu, pa će vjerovatno doprinijeti njihovom prvom utisku. Važno jeda sistem bude brzo naučen pošto su troškovi obuke visoki, a poslodavac bi volio dakorisnici što prije budu produktivni. Povrh toga, povećano vrijeme obuke povećavatrošak prelaska na novi sistem što bi moglo učiniti promjenu sistema neprofitabilnomkratkoročno ili čak dugoročno ako se kadar rijetko mijenja.

Obično se govori o “krivoj učenja”.  Važno je da korisnik za što  je kraće mogućevrijeme stekne osnovna znanja potrebna za obavljanje zadataka. S druge strane, svoznanje o sistemu može biti teško steći i najvjerovatnije neće nikada biti ni ostvareno –niti   je  vjerovatno  potrebno većini  korisnika.  Neki   sistemi,  npr.  oni  postavljeni  najavnim mjestima (ATM mašine), ciljaju na tzv. nulto vrijeme učenja (zero learningtime). Ovakvi sistemi se oslanjaju na korisnikovo “znanje svijeta” kako bi omogućilida ih korisnik vrlo lako nauči koristiti, drugim riječima biće napravljeno upravo onošto korisnik već  zna ili očekuje, a biće ponuđeni i vizuelni nagovještaji kako trebaobaviti zadatak.

Neki ljudi vole da uče nove stvari ili posmatraju to kao izazov. Ali to nije uvijek tako.Mnogi jednostavno mrze da uče nove sisteme, posebno ako su vezani za druge stvarikoje takođe ne vole kao što je posao ili škola. Korisnici obično žele da što prije počnuobavljati zadatke i pri tome često prave greške ili nesmotrene stvari.

Kada govorimo o jednostavnosti učenja, očito je najvažniji pojam vrijeme potrebno dakorisnik počne koristiti sistem. Ali mogu se mjeriti i neke druge stvari, na primjer

11

Page 12: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

možemo proširiti uobičajeni skup metrika sljedećim kriterijima:➢ Vrijeme potrebno da se nauči sistem.➢ Vrijeme potrebno da se postigne odabrani kriterij performansi.➢ Teškoće uočene prilikom sticanja potrebnog znanja.➢ Vrijeme potrebno za održavanje znanja o sistemu➢ Vrijeme   potrebno   za   ponovno   učenje   sistema   nakon   određenog   vremena   bez

korištenja.

Naravno tu su i metrike koje smo ranije spominjali u kontekstu efikasnosti:➢ Vrijeme potrošeno na čitanje dokumentacije.➢ Vrijeme potrošeno na pretraživanje Interneta.➢ Vrijeme potrošeno na otklanjanje grešaka.

Ali   jednostavnost  učenja  ne  uključuje  samo vrijeme provedeno  na  učenje,  nego   imjeru koliko je sistem uspješno naučen. Neki od kriterija koji mogu poslužiti za ovosu:➢ Učestalost grešaka.➢ Učestalost neke konkretne greške.➢ Učestalost upotrebe Interneta za pomoć.➢ Broj situacija kada je korisniku bila potrebna pomoć za neki problem.

Shackel   je   definisao   fleksibilnost   kao   “dozvoljenu   adaptaciju   na   određeni   nivovarijacije u zadatku i/ili okruženju.” Očito da je pri formulisanju ove definicije ključniuticaj   imao studij  ergonomije,   jer  se  govori  o  adaptiranju  proizvoda zadatku a  nekorisniku, dakle nema govora o svjesnoj operaciji “adaptiranja” od strane korisnika.Ipak, mi ćemo proširiti ovu definiciju da uključimo i mogućnost korištenja proizvodana razne načine ili za razne namjene. Npr. u nekom programu za obradu teksta možetenapraviti novi dokument tako što:• izaberete opciju Novi iz menija Datoteka• pritisnete kraticu na tastaturi• kliknete na ikonu sa praznim listom• izaberete šablon (template) i otvorite ga• otvorite postojeći dokument, pobrišete sav njegov sadržaj i kada otkucate izaberete

opciju Snimi kao...Na ovaj način program se prilagođava korisniku tj. korisnik može izabrati način kojimu najviše odgovara.

Konačno Shackelova definicija spominje i stav korisnika prema sistemu, kao kriterijbogatiji   od   “zadovoljstva”   koje   specificira   ISO.   Nije   dovoljno   samo   definisatiprihvatljiv  nivo  problema  i  prepreka  koje  korisnik   rješava;  kroz   stalne   susrete   sasistemom  i  njegovo korištenje,  korisnik  bi   trebao  osjećati  povećano  zadovoljstvo.Drugim riječima, ljudi trebaju uživati u korištenju sistema. Zabavan sistem je neštošto je u računarskim tehnologijama rijetkost. To je takođe i vrlo subjektivan pojam. 

12

Page 13: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

3.5. Specifikacija upotrebljivosti

Pristup koji nazivamo “inženjering upotrebljivosti” podrazumijeva da se prije početkaproizvodnje   aplikacije   napravi   jedan   dokument   koji   se   naziva  specifikacijaupotrebljivosti. To je izjava o uslovima koje će proizvod morati zadovoljavati kadabude napravljen, a njome se definišu elementi na koje će se obratiti pažnja prilikommjerenja upotrebljivosti. 

Specifikacija sadrži:• skup ili podskup korisnika na koje se odnosi;• preduslovi za mjerenje;• kako će kriteriji biti izmjereni;• kako znamo da su kriteriji ispunjeni.

Ova specifikacija se zatim koristi kao osnova za ciklus procjena – redizajn – ponovnaprocjena koji je dio inženjeringa upotrebljivosti. Kao sporedni efekat, dobija se jasnomjerilo   kada   završiti   sa   razvojem,   što   rješava   jedan   čest   problem   kod   rapidnogprototipiranja – a to je da inženjeri ne znaju kada da se zaustave.

Na   osnovu   ranije   spomenutog,   možemo   napraviti   checklistu   mjerenja   odnosnokriterija koje ćemo koristiti u specifikaciji:• Vrijeme potrebno za obavljanje zadatka.• Procenat ostvarenja zadatka.• Procenat ostvarenja zadatka po jedinici vremena.• Omjer uspjeha i neuspjeha.• Vrijeme potrošeno na otklanjanje grešaka.• Frekvencija upotrebe on­line pomoći i dokumentacije.• Vrijeme potrošeno na upotrebu pomoći i dokumentacije.• Procenat povoljnih/nepovoljnih komentara korisnika.• Broj ponovljenih ili neuspješnih naredbi.• Broj dobrih osobina sistema, prema sjećanju korisnika.• Broj naredbi koje nisu nikako korištene.Naravno, konačna lista kriterija ovisi o projektu.

Whiteside, Bennett i Holtzblatt su predložili da se specifikacija upotrebljivosti proširijednim skupom ekstenzija koje pobliže određuju kriterije. Ove ekstenzije su:• Najgori   slučaj.  Ovim   je   dat   najgori   mogući   scenario   za   sistem   koji   ujedno

predstavlja   sistem   neprihvatljiv   korisniku.   To   je   korisno   znati   prije   početkaprojekta.

• Najniži prihvatljivi nivo. Najniži nivo performansi koji je prihvatljiv korisniku.• Planirani slučaj. Ovo je nivo za koji se očekuje da će ga sistem postići.• Najbolji slučaj. Najbolji mogući scenario. Primjećujemo da ovo ne mora biti ono

što se očekuje.• Trenutni nivo. Ovo je eventualno stanje sistema koji se trenutno koristi odnosno

13

Page 14: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

sistema   koji   pokušavamo   da   unaprijedimo.  On   služi   kao   bazni   nivo   sa   kojimupoređujemo naš novi sistem. Poznavanje trenutnog sistema nam pomaže, zato štoje korisniku vrlo lako da izrazi mišljenje o tome koliko je zadovoljan postojećimsistemom.

Ovo predloženo proširenje specifikacije ima osobine da je  do pomenutih podatakarelativno lako doći,  a pružaju dobru bazu sa kojom se performanse novog sistemamogu uporediti i eventualno ponoviti ciklus inženjeringa upotrebljivosti.

Sljedeća tabela je jedan primjer specifikacije upotrebljivosti zajedno sa spomenutimdodacima:

Specifikacija upotrebljivosti

korisnička populacija: svi korisnicipreduslovi: mjerenja treba izvršiti nakon 1 sedmice upotrebe

Najgorislučaj

Najnižiprihvatljivi nivo

Planiranislučaj

Najboljislučaj

Trenutninivo

Atribut: Mjerenje:

efikasnost grešaka pozadatku

5 ili više  2  1  0  5

efikasnost potrebnovrijeme

10 ili više 5 minuta 3 minute 1 minuta 10 minuta

Kako doći  do  metrika  upotrebljivosti?  Prije   svega,   specifikacija  upotrebljivosti   seformira   na   osnovu   zahtjeva   korisnika.   Kada   su   i   korisnik   i   inženjer   zadovoljnispecifikacijom, može se formirati ugovor koji je obavezujući za obje strane. Izmjeneugovora se moraju vršiti uz obostranu saglasnost.

Sistem   se   zatim   razvija   metodologijom   dizajna   usmjerenog   na   korisnika   (user­centered  design).  Na  primjer,   to  može  biti   rapidno  prototipiranje.  Kada   se   završiprojektovanje   sistema,  može   se   aplicirati  metrika   i  analizirati   rezultati   kako bi   seutvrdilo (ne)slaganje sa specifikacijom.

Jedan dio metoda “inženjeringa upotrebljivosti” je da od korisnika zatražimo da obavineki zadatak ili zadatke dok inžinjeri analiziraju njegov rad. To se može obaviti naviše načina. 

Prvo, može se prepustiti korisniku da obavi zadatak, nakon čega tim za procjenu mjeriutrošeno vrijeme, broj grešaka ili  koliko je puta zatražena pomoć.  Zatim, mogu seposmatrati korisnici tokom korištenja sistema, čime se uočavaju problemi sa kojimase  korisnici   susreću   i  kako  su   ih   riješili.   Jedan  koristan  metod   je   i   da  natjeramokorisnika da “glasno razmišlja” prilikom rada i time uočavamo stvari koje mu se (ne)

14

Page 15: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

sviđaju. 

Konačno,   tim   za   procjenu   može   provesti   intervjue   i   tako   doći   do   informacije   ozadovoljstvu korisnika sistemom. Sličan metod je i korištenje upitnika.

Važno je naglasiti da se metodom specifikacije upotrebljivosti dolazi tek do opštihperformansi sistema. Da bi se došlo do stvarnih informacija o zadovoljstvu korisnikasistemom, njihovim performansama i  stavu prema sistemu, potrebna su podrobnijaispitivanja. No pošto bi opisivanje ovih naprednih metoda bilo preopširno za jedandiplomski rad, nastavićemo sa drugim temama.

4. OSNOVNI PROBLEMI UPOTREBLJIVOG GUI DIZAJNA

4.1. Grafički korisnički interfejs (GUI)

U nastavku teksta  posvetiću se grafičkim računarskim interfejsima, odnosno danasdominantnoj tzv. WIMP metafori rada sa računarom.

Od   samih   početaka   računarstva   postavljeno   je   pitanje:   na   koji   način   predstavitikorisniku ono što se zbiva u računaru? Prvobitni i do danas vrlo raširen odgovor naovo  pitanje  posljedica   je  čisto  praktičnih  ograničenja.  Prvi   računari   su  kao   jediniuređaj  za  interakciju   sa  korisnikom  imali   teleprinter   (svojevrsnu električnu pisaćumašinu). Tako je nastao  tekstualni  ili  komandni  interfejs – u svojevrsnom dijalogukorisnik unosi tekstualne naredbe koje označavaju određenu operaciju, na što korisnikodgovara takođe verbalno. 

Ovakav  način   interakcije   je  krajnje  nepraktičan   jer  korisnik  mora  memorisati   svenaredbe i njihovu semantiku, ustvari čitav jedan jezik komunikacije sa računarom, ato traje dugo. Kao što smo vidjeli ranije,  learnability  je jedan od bitnih faktora priizboru sistema. Mnogi tvrde da, ako uložite vrijeme da naučite naredbe, možete bitivišestruko   produktivniji   nego   korištenjem   grafičkog   interfejsa.   Ipak   komandniinterfejsi   imaju   svoje   mjesto,   kao   napredni   administratorski   alat   ili   za   osobe   saograničenim vidom ili kretanjem.

Grafički interfejs je rođen početkom 70tih godina u Xerox PARC (Palo Alto ReseachCenter)   laboratoriji.   Tada   su   postavljeni   osnovni   koncepti   koje   nazivamo   WIMPmetafora.  1982.  godine,  na  osnovu  rezultata   rada  Xeroxovog   tima,  nastao   je  prvikomercijalan  računar   sa  GUIjem,  Apple Lisa,  a  nakon nje   i  popularni  Macintosh.Osnovni   elementi   grafičkog   interfejsa   Macintosha   su   jednostavno   prekopirani   upopularnom   sistemu   Microsoft   Windows   (oko   čega   se   vodio   višegodišnji   sudskiproces), ali ovaj sistem nije postao popularan prije 1990­tih. 

Današnji sistemi kao što su Windows XP, Mac OSX ili Linux koriste uglavnom iste

15

Page 16: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

ideje   kao   i   prvobitni   Xeroxov   sistem.   Ipak,   s   vremena   na   vrijeme   se   pojavealternativni koncepti kao što su Microsoft Bob, 3dwm ili  FSV. Ne­WIMP grafičkiinterfejsi   su   takođe   rašireni   u   računarskim   igrama,   istraživačkim   sistemima   kojikoriste “virtuelnu realnost” (3D interfejs koji  simulira stvarni  svijet),   te u brojnimspecijalizovanim sistemima kao  što   su  ATM uređaji.  Važno  je   spomenuti  dodirniinterfejs (ekran koji se aktivira na dodir). Prema sadašnjim informacijama, izgleda daće WIMP interfejs konačno dobiti nasljednika u 3D interfejsima,3  ipak predstavljeniradni modeli nude vrlo malo suštinskih izmjena u odnosu na tradicionalni pristup.

WIMP je skraćenica koja obuhvata osnovne elemente interfejsa:• Window – prozor• Icon – ikona• Menu – meni• Pointer – pokazivački uređaj, miš.

Kod WIMP koncepta,  sve  je  prozor,   i   sav sadržaj  se  nalazi  u nekom od prozora.Prozore možete premještati,  sakrivati,   ili  stavljati   jedan na drugi.  Ikona je grafičkielement koji  simbolizuje neku akciju  ili   funkciju programa, mada je  takođe važanelement interfejsa i tekstualno dugme (button). Drugi način prezentiranja mogućnostiprograma je kroz menije. Uobičajen pristup je da se najvažnije i najčešće korištenefunkcije predstave kao ikone, a ostale su sakrivene u menijima koji se otvaraju klikomna  određeno dugme ili  naslov.  Konačno  –  glavni  uređaj  pomoću  kojeg  koristimoWIMP interfejs je njegovo veličanstvo miš, mada striktno govoreći “pointer” možeuključivati i taktilni interfejs (ekran osjetljiv na dodir), elektronsko pero, tablet itd.

Pošto  je WIMP preovlađujući  koncept  danas,  u nastavku ću izložiti  neke osnovneprobleme u oblasti upotrebljivosti koji se tiču WIMP grafičkih interfejsa. Kao što smovidjeli ranije, problem zadovoljstva korisnika sistemom je jedan od najslabije riješenihu   dosadašnjem   razvoju   inženjeringa   upotrebljivosti.   Ova   oblast   je   još   uvijeknedovoljno razvijena, a posljednjih godina su prezentirani različiti koncepti i ideje.

4.2. Dizajn interakcije

Paralelno sa ranije izloženim konceptom inženjeringa upotrebljivosti,  nastavljaju serasprave na temu prikladne klasifikacije discipline kojom se bave pojedini   radovi.Tako Cooper i Reimann odbacuju pojam dizajna korisničkog interfejsa (user interfacedesign) jer, prema njihovom mišljenju, dizajnerski problemi zalaze mnogo dublje odonoga što se vidi na ekranu. Termini kao što su informaciona arhitektura (information

3 Microsoft   je  najavio   da   će   iduća  verzija   Windows  operativnog   sistema,   pod   kodnim   imenomLonghorn,   između   ostalog   sadržavati   i   Avalon   –   trodimenzionalni   sistem   navigacije   saodgovarajućim APIjem. Slično se najavljuje i za sljedeću verziju MacOS operativnog sistema podkodnim imenom Tiger (najvjerovatnije će nositi komercijalnu oznaku 10.3). Informatički gigantSun je predstavio radnu verziju 3D okruženja pod nazivom Looking Glass koje će biti objavljenopod  open­source   licencom,  a   ciljna  platforma   je  Sunova  Linux  distribucija  pod  nazivom JavaDesktop.

16

Page 17: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

architecture) i dizajn iskustva (experience design) takođe su neprikladni. IA je ostalavezana uz web i njegove specifičnosti. Pojam dizajna iskustva se mnogo promovira uposljednje vrijeme, ali da li mi zaista možemo dizajnirati korisničko iskustvo?

Termin  za koji  su  se  Cooper  i  Reimann na kraju opredijelili   je  dizajn  interakcije(interaction design), čiji je glavni cilj da se poboljša korisnikovo iskustvo pri radu saračunarom. Dizajn interakcije se bavi definisanjem i dizajnom ponašanja (behavior)artefaktâ, okruženjâ i sistemâ, kao i formalnih elemenata koji prenose informaciju otom ponašanju.

Naime,   oni   posmatraju   dizajn   u   tri   dimenzije:   forma,   značenje   i   ponašanje.Tradicionalno   dizajn   se   bavio   samo   formom   i   značenjem,   dok   je   ponašanjezanemareno. Interaktivni proizvodi moraju u svakoj od ovih dimenzija imati određenumjeru; npr. softverske aplikacije stavljaju naglasak na formu i ponašanje, dok se pridizajnu Web sajtova ističe značaj forme i sadržaja dok se ponašanje manje razmatrajer je ono dobro definisano.

Konkretno, dizajn interakcije je disciplina koja se bavi:• Definisanjem forme proizvoda i njihovog odnosa u smislu upotrebe i ponašanja.• Predviđanjem kako će upotreba proizvoda uticati na odnos čovjeka prema sistemu i

razumjevanje sistema.• Istraživanjem dijaloga između proizvoda, čovjeka i konteksta (fizičkih, kulturnih,

historijskih).

Dizajn   interakcije   pristupa   dizajnu   proizvoda   iz  ciljem­vođene  perspektive,   dakledizajner:• polazi od razumjevanja kako i zašto ljudi žele koristiti te proizvode;• zagovornik je korisnika i njegovih ciljeva;• proizvod posmatra kao cjelovit paket, ne samo skup mogućnosti i atributa;• gleda u budućnost, posmatra stvari onakvim kakve bi mogle biti, a ne nužno kakve

jesu trenutno.

Dizajneri  interakcije moraju, prije svega, razumjeti  ciljeve, motivaciju i  očekivanjaljudi za koje žele dizajnirati (prave se tzv. mentalni modeli). Mentalni modeli se mogunajbolje razumjeti kao opisi logičkog (ili emotivnog) razvoja događaja kroz vrijeme.Dizajnirani interfejs mora izražavati vlastiti tok događaja koji se uspješno poklapa satokom   koji   daje   korisnik.   Time   stvaramo   svojevrstan   “neverbalni   prirodni   jezik”kojim korisnik komunicira sa dizajniranim predmetom.

4.3. Uticaj dizajna interakcije na klasične metode razvoja softvera

Ciljem­vođene   metode   dizajna   podrazumijevaju   šest   značajnih   izmjena   ukonvencionalnim metodama razvoja softvera:• Prvo   dizajn,   zatim   programiranje  (dok   stari   način   pretpostavlja:   početak

17

Page 18: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

programiranja   što   je   prije  moguće,   a   primjena  dizajna   na   kraju   ili   eventualnoparalelno programiranje i dizajn).

• Odvojena  odgovornost   za  dizajn  od  programiranja  (stari   način:   programeri   sudonosili   značajne   odluke   o   interakciji   softvera   i   korisnika,   obično   za   vrijemeprogramiranja, što je očit konflikt interesa).

• Fokus je na zadovoljavanju ciljeva korisnika (stari način: analizirani su pojedinačnizadaci koje korisnik obavlja bez uzimanja u obzir krajnjeg cilja koji korisnik želipostići).

• Definisanje specifičnih arhetipskih korisnika (persone) za proizvod koji se razvija,na osnovu pažljivog posmatranja stvarnih  i  potencijalnih korisnika  (stari  način:menadžeri   i   programeri   su   govorili   o   “krajnjem   korisniku”   bez   konkretnihpodataka).

• Definisanje scenarija korištenja, uz korištenje persona kao glavnih karaktera u timscenarijima. Scenariji upotrebe su glavni alat za definisanje funkcije, ponašanja iforme interaktivnih proizvoda (stari  način:  korištene su marketinške ček­liste zadefinisanje  funkcije proizvoda,   ili   je  prepušteno programerima da odluče šta bitrebalo uraditi).

• Praćenje principa dizajna ponašanja  (stari način: oslanjalo se samo na principeforme, ostale komponente su nagađane; pa su se zatim te loše interakcije ponavljalekroz   testiranje   na   korisnicima;   da   bi   konačno   bili   zakrpljeni   samo   najgoriproblemi).

4.4. Problemi – jedno viđenje

U   svojoj   izuzetno   popularnoj   knjizi  About   Face,   Cooper   i   Reimann   govore   osljedećim čestim problemima koji se susreću pri dizajnu interfejsa:

• Stav softvera (držanje, eng. posture)Kao što ljudi imaju jedno opšte držanje koje odgovara njihovom poslu ili ulozi uživotu, tako i softver treba zauzeti određeni stav. Softver može biti šaren, ozbiljan,dosadan, jednostavan, komplikovan. Ovo nije tek stvar ličnog ukusa, nego je dioprocesa kojim se pokušava uklopiti program u scenario korištenja, odnosno krajnjasvrha i  cilj  programa približiti  krajnjem korisniku i  uticati  na sveukupan odnosizmeđu korisnika i aplikacije.

• Orkestracija i tokKada se ljudi mogu koncentrirati u potpunosti i isključivo na neku aktivnost, onigube svijest o periferalnim problemima i smetnjama. Ovo stanje duha se naziva tok(eng.   flow).   Prije   svega,   treba   izbjegavati   sve   što   ometa   tok   pri   korištenjuproizvoda.   Zatim   možemo   razmišljati   o   vještačkom   izazivanju   stanja   toka,   tj.orkestraciji.

• Eliminisanje “nameta” korisnicimaPod “nametima” se podrazumijevaju sve nepotrebne operacije i dodatni rad. Dakleu svim situacijama gdje se može korisniku ponuditi neko razumno default rješenjeto treba uraditi.

18

Page 19: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

• Navigacija i inflekcijaU svim aplikacijama, a pogotovo web­baziranim, uobičajen je problem navigacije.Ono što se ovdje mora shvatiti je da je navigacija “namet”, osim možda u igrama.Dakle navigaciju treba eliminisati gdje je moguće, ili maksimalno pojednostaviti.Programi kojima je teško navigirati možda su prekomplikovani i treba eliminisatineke njihove mogućnosti ili ih razbiti u više zasebnih programa?

• Razumijevanje operacije poništavanja (undo)Undo je jedinstvena operacija koju nam nude računarski sistemi. Stoga je izuzetnovažno imati mogućnost vraćanja na prethodno stanje gdje god je to moguće, a da tosamo za sebe ne ometa tok. Pri tome se možemo poslužiti  mentalnim modelomgrešaka.

• Osmišljanje datoteka i snimanjaVećina korisnika ima problema da razlikuje internu memoriju od hard diska, stogaovu razliku ne treba nametati korisnicima kroz upozorenja i dijaloške prozore.

4.5. Problemi – drugo viđenje

Autori jednog od pregleda stanja sa upotrebljivošću interfejsa računarskih programasu pak spomenuli sljedeći skup pravila:

Fitt­ov zakon

Ovo je najosnovnije i najpoznatije od pravila dizajna korisničkog interfejsa. Ono kažeda što je objekat na ekranu veći i bliži pokazivaču miša, to je lakše na njega kliknuti.Na prvi pogled tako nam nalaže zdrav razum, pa ipak ovo pravilo je često ignorisanou UI dizajnu. Na primjer, dugme koje se najčešće koristi u aplikaciji može se učinitivećim.

Prividna  veličina kontrole  može se  uvećati   stavljanjem  te kontrole  na  rub ekrana.Kada pokazivač miša dođe do ruba ekrana, on se zaustavlja tačno na tom rubu bezobzira na brzinu njegovog kretanja. Ovo znači da za osobu koja koristi miš, objekti naekranu   se   nastavljaju   preko   ruba   praktično   u   beskonačnost.   Na   primjer,   metadimenzija   1x1   piksel   smještena   u   gornjem   desnom   uglu   ekrana   je   trivijalnojednostavna za pogoditi – samo pomjerajte miš prema gore i desno koliko god želite.Iz   ovoga  možemo vidjeti   da   se  kontrole  mogu  učiniti   lakšim   za  klikanje   ako   sepostave na rubnim dijelovima ekrana.

Nepotrebne smetnje

Kada korisnik radi njegova pažnja je usmjerena na rad, tako da svaki put kada imnešto skrene pažnju on izgubi određeno vrijeme da bi vratio koncentraciju. Iz ovograzloga treba minimizirati smetnje koje aplikacija stvara korisniku. Svaka aplikacijaposjeduje grafički element koji je fokus rada – npr. u programu za obradu teksta to je

19

Page 20: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

tekst, a u web pregledniku to je web stranica. Ovaj element treba učiniti centralnimelementom interfejsa u kojem se sve događa.

Treba   izbjegavati  prozore  koji  “iskaču” za vrijeme rada,  a  ne  doprinose  korisniminformacijama. Na primjer, prozor koji iskoči da vas obavijesti da tekst koji ste tražilinije   pronađen   je   potpuno   beskoristan;   vjerovatno   biste   željeli   da   popravite   vašupretragu,   ali   umjesto   toga   trebate  kliknuti   na  dugme  “Ok”  da  biste   zatvorili   ovoobavještenje.

Koristiti moć računara

Računari su moćni uređaji, koji većinu vremena ne koriste svoju procesorsku moć niprostor za smještaj. Stoga treba koristiti ovu neiskorištenu snagu da bi se olakšao radkorisniku.

Kada se neki element interfejsa može podesiti, potrebno je pokušati obaviti taj posaoza korisnika.  Ukoliko postoje  dva  ili  više elemenata  interfejsa koji   su vrlo  slični,računar treba da uoči tu sličnost i učini ih različitim. Na primjer, ukoliko istovremenoradite sa dvije datoteke vrlo dugačkog i sličnog imena, aplikacija treba prikazati onajdio imena koji se razlikuje.

Takođe,  aplikacije  moraju  pamtiti  postavke kao što   su   izgled   i  veličina  prozora  itrenutno odabrane postavke. Prostor na disku je jeftin, a smještaj ovih par podatakatroši njegov neznatan dio. Npr. prilikom gašenja programa za obradu teksta, umjestoiskačućeg  upita  da   li   tekst   treba  snimiti   i   kako  (nepotrebna smetnja!),   tekst   trebaautomatski zapamtiti  pod određenim predefinisanim imenom (npr. “Bezimeni tekst1”) koji će prilikom sljedećeg pokretanja programa biti opet automatski otvoren. Nataj način, ljudi koji se ne žele zamarati rukovanjem datotekama i direktorijima mogukoristiti računar na jednostavniji način.

Elementi trebaju biti lagani za razlikovanje i pronalaženje

Kao   što   smo   već   spomenuli,   slični   elementi   interfejsa   trebaju   se   probati   učinitirazličitim, što se posebno odnosi na često korištene elemente. Primjer je program zapregledanje weba na kojem je svako od osnovnih dugmadi (Nazad, Naprijed, Stop,Ponovo   učitaj)   obojeno   različitom   bojom.   Ovo   omogućuje   korisniku   da   koristiprogram “naslijepo” tj. da ne troši toliko vremena analizirajući elemente interfejsa ipronalazeći onaj koji želi da koristi.

Još   jedan   negativan   primjer   je   dugme   za   pronalaženje   teksta   i   dugme   zauvećanje/umanjenje – u oba slučaja u pitanju je povećalo. Ovu dugmad treba učinitirazličitim, kako bojom tako i konceptom.

20

Page 21: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

Kada izaberete dio teksta u programu za obradu teksta, vi to radite zato što želite daobratite posebnu pažnju na taj tekst – stoga ovaj tekst treba biti lagan za čitanje saposebno visokim kontrastom. Greška je izbor boja pozadine i teksta koji ne pružajudovoljan kontrast.

5. PRIMJERI

5.1. Interfejs za pretragu dokumenata aplikacije

Pravila objašnjena ranije pokušaćemo demonstrirati na primjerima iz stvarnog svijeta. 

Informacioni   sistemi   preduzeća   često   su  orjentisani   na   dokumente,   tj.   rezultatkorištenja sistema je jedan broj dokumenata. Takvih dokumenata se vremenom nakupiviše, pa korisniku postaje teško da pronađe onaj dokument koji mu je u tom trenutkupotreban. Ideja je napraviti kao glavni interfejs za komunikaciju sa sistemom jedanprozor za izbor dokumenta sa kojim se radi. 

Ako   korisniku   samo   prezentiramo   listu   dokumenata,   korisnik   će   morati   ručnopretraživati   te   dokumente,   otvarati   ih   dok   ne   nađe   željeni   dokument   itd.   Daklepotrebno je osmisliti određenu pretragu te liste.

Program koji bi isključivo pretraživao sadržaj datoteka bi donekle mogao zadovoljitipotrebe  navedenog   sistema.   Ipak,   ako   ta  mogućnost   postoji,   zašto   ne  definisati   iodređeni   broj   meta­podataka?   Kvalitetni   meta­podaci   mogu   drastično   popravitirezultate   pretrage,   često   i   napraviti   razliku   između   beskorisne   i   izuzetno   korisneaplikacije. Za potrebe ovog primjera, opredijelio sam se za sljedeće meta­podatke:• Predmet• Vrsta dokumenta• Datum• Od (pošiljalac)• Za (primalac)• Ključne riječi

Pri izboru meta­podataka za stvarni sistem glavni kriterij je: mogućnost automatskoggenerisanja. Npr. datum kreiranja dokumenta je uvijek dobar meta­podatak. U našemslučaju,   predmet   je   obavezan   sastavni   dio   svakog   dokumenta,   vrsta   dokumentaodgovara recimo određenoj komponenti informacionog sistema, polja od/za se moguodrediti iz konteksta, tako da korisnik ručno unosi samo ključne riječi.

Ključne riječi  predstavljaju jednu vrstu univerzalnog meta­podatka.  Ovdje korisnikmože unijeti  sve  interesantne  informacije koje se ne mogu uklopiti  u ostale meta­podatke.  Ipak, pretjerano oslanjanje na ključne riječi  za pretragu treba izbjegavati.Pravilno formiranje ključnih riječi  je težak zadatak, čak i profesionalcima, za to jepotrebno   razumjeti   mehanizam   pretraživanja   što   ipak   ne   možemo   očekivati   od

21

Page 22: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

korisnika. Stoga, ključne riječi trebamo dodati kao meta­podatak tek kad su sve drugemogućnosti za meta­podatke potrošene.

Pogledajmo sada   interfejs  za  pretragu.  Može  se  uočiti  da   su  polja   za  unos  meta­podataka grupisana po određenoj logici. Polje sa rezultatima predstavlja dominantandio ekrana jer je to glavno polje koje korisnik koristi za izbor datoteke. U pojedinimslučajevima   korisnik   čak  može   ignorisati   ostatak   prozora.  Dvostrukim  klikom  nadokument   isti   se   otvara   u   odgovarajućoj   aplikaciji   odnosno   komponentiinformacionog sistema.

Slika 1. Prozor za pretragu dokumenata kao glavni korisničkiinterfejs nekog informacionog sistema

Primijetimo da nema dugmeta za pretragu. Sva polja su dinamička – kako korisnikunosi slova u neko od tekstualnih polja automatski se primjenjuje filter na rezultatepretrage tako da korisnik odmah vidi samo dokumente koji odgovaraju kriteriju. Timeje iskorištena moć  računara: savremeni računari u stanju su vršiti  takvo dinamičkofiltriranje. Nije potreban nikakav dodatni klik na dugme za pretragu ili recimo nekidijalog koji nas obavještava da nema rezultata, jer rezultate vidimo direktno ispod.Jedan izuzetno brz i agresivan filter je i polje za vrstu dokumenta.

Korisno je  i spomenuti  da npr. nije moguće unijeti  neispravan datum. Na primjer,kada korisnik izabere godinu 2004. automatski će se popuniti polja za dan i mjesec,tako da će datum biti  1.   januar  2004.  Tako,  sa  samo četiri  klika mišem, korisnikfiltrira dokumente na one iz recimo 2004. godine.

Konačno,  korisnici  koji   su navikli   raditi   na   taj  način  mogu  koristiti   sortiranje  pojednom od kriterija klikom na naslov odgovarajuće kolone.

22

Page 23: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

5.2. Sistemski program za pretraživanje datoteka

Nastavljajući u istom tonu, daću pregled upotrebljivosti jednog postojećeg programa injegov redizajn,  po sistemu  prije/poslije.  U pitanju   je  glavni  program za pretragudatoteka  jednog manje korištenog grafičkog okruženja za Linux operativni  sistem.Opredijelio sam se za ovo jer postoji dosta sličnosti, ali i bitnih razlika u odnosu naprethodni primjer.

Slika 2. PRIJE

Prije  svega,  primjećujemo da,  mada  je  u  pitanju  samostalan program za pretragu,njegov   prozor   nije   formiran   kao   zaseban   program   nego   kao   dijaloški   prozorpostojećeg programa: ne posjeduje meni, koristi tabove (kartice). Mišljenja smo da bizbog značaja programa za pretragu i činjenice da ga mnogi koriste kao svoj glavniinterfejs za izbor dokumenata on ipak trebao oličavati zaseban program.

Osim standardnog dugmeta za gašenje prozora (X) ne postoji mogućnost zatvaranjaovog   prozora.   Ustvari,   prozor   se   može   zatvoriti   klikom   na   dugme   Cancel,   aliuobičajen naziv za ovu opciju je Quit i ona bi se trebala  nalaziti u meniju File, kojegnema. Sve ovo predstavlja nekonzistentnost sa ostatkom sistema. Vrlo je važno danovi programi koriste slične koncepte i ideje kao postojeći, kako bi korisnici svojeznanje mogli iskoristiti pri radu s njima.

23

Page 24: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

Prostor sa rezultatima pretrage koji je najvažniji dio interfejsa zauzima minoran dioekrana – manje od četvrtine.   Istina,  promjenom veličine prozora i  ovaj  prostor sepovećava,  ali   to  mnogi  korisnici  neće  znati.  Opcije  pretrage  su  grupisane u četirikartice, od čega je jedna čisto informativna (About – o programu). Raspored opcija upreostale tri  kartice ima niz logičkih problema, do te mjere da korisnik nikad nijesiguran gdje se nalazi neka opcija dok ne pogleda sve tri. 

Sami nazivi prve i druge kartice (“Find” i “Filter options”) su redundantni, jer je čitavprogram  posvećen   “pronalaženju  datoteka”   i   “filtriranju”.  Opcije   vezane   za  vrstudatoteke nalaze se  i na drugoj i  na trećoj kartici (“File  type:” i “Do not look intobinary files”). Opcija na trećoj kartici “Output files where no match is found”, osimšto   je  prilično sumnjive upotrebne vrijednosti,  definisana   je kao  radio dugme,  štoznači da se ne može izabrati a da se pri tome ne isključe druga srodna radio dugmad.Opcija   “Match   anywhere”   je   nejasna.   Generalno,   korištena   terminologija   jenekonzistentna i vrlo profesionalna (“Rights” vs. “Permissions”, “User id” i “Groupid”, “Extended regexp” itd.)

Prozor   sa   rezultatima  pretrage   ima  više  problema,   izbor   navedenih   informacija   odatotekama je diskutabilan, na datoteke se ne može dvokliknuti da bi se otvorile.

Ispravke ovih problema, kao i mnogih drugih koje nisam naveo možete vidjeti ispod.

Slika 3. POSLIJE

Pošto je ovo primjena pravila upotrebljivosti  po završenom projektu, odnosno nijekorištena   metodologija   inženjeringa   upotrebljivosti   pri   samom   projektovanjuaplikacije,   zadržao   sam   se   na   reorganizaciji   grafičkog   interfejsa.   Postoji   dostasuštinskih tj. konceptualnih stvari koje bi se mogle izmijeniti u programu. Na primjer,rezultati pretrage mogu biti osjetljiviji na tip datoteke, tako da se podaci mogu pronaćiunutar Word i drugih dokumenata, bez obzira na posebne karaktere koje ovi programiubacuju u tekst itd.

24

Page 25: UPOTREBLJIVOST GRAFIČKIH RAČUNARSKIH …vljubovic.members.epn.ba/diplomski.pdf(usability engineer), tj. softverski inženjer koji razumiju probleme korisnika. Upotrebljivost se odnosi

6. ZAKLJUČAK

Upotrebljivost  grafičkih   računarskih   interfejsa   je   izuzetno  bitna  oblast   softverskoginženjeringa. Takođe to je i dinamična oblast koja je još  uvijek u razvoju. Stavovipojedinih autora su često vrlo različiti,  čak i suprotni, a postoji mnogo prostora zaistraživanje i otkrivanje novih činjenica.

Obzirom   na   slabu   zastupljenost   studija   upotrebljivosti   kod   nas,   postoji   mnogoprostora   za   razvoj   ovakvih   studija,   posebno   imajući   u   vidu   razvojne   projektezasnovane na softveru otvorenog izvornog koda.

L  I  T  E  R  A  T  U  R  A

1. Xristine Faulkner, Usability Engineering, Macmillan Press Ltd 2000, ISBN 0­333­77321­7.

2. Alan Cooper and Robert Reimann, About Face 2.0: The Essentials of InteractionDesign, John Wiley & Sons © 2003, ISBN 0­7645­26413.

3. Jakob   Nielsen,  Usability   Engineering,   published   by   Morgan   Kaufmann,   SanFrancisco, 1994, ISBN 0­12­518406­9.

4. Jakob Nielsen, Designing Web Usability, New Riders Publishing © 2000, ISBN 1­56205­810­X.

5. Wilbert O. Galitz,  The Essential Guide to User Interface Design, John Wiley &Sons © 2002, ISBN 0­471­084646.

6. Clayton Lewis and John Rieman, Task­Centered User Interface Design, © ClaytonLewis and John Rieman 1993, 1994.

7. Larry E. Wood, User Interface Design, CRC Press LLC 1997, ISBN 0849331250.8. Fundamentals of Designing User Interaction, © 2000 Microsoft Press.9. Apple   Human   Interface   Guidelines   (HIG),   Apple   Computer   Inc   2004.

http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/OSXHIGuidelines.pdf

10.Calum Benson, Adam Elman, Seth Nickell, Colin Z. Robertson, GNOME HumanInterface   Guidelines   2.0,   The   GNOME   Usability   Project   ©   2004.http://developer.gnome.org/projects/gup/hig/2.0/

25