Creeaza.com - informatii profesionale despre


Simplitatea lucrurilor complicate - Referate profesionale unice
Acasa » referate » informatica » calculatoare
Proiectand pentru utilizatori - Esenta proiectarii interfetelor utilizator

Proiectand pentru utilizatori - Esenta proiectarii interfetelor utilizator


Proiectand pentru utilizatori

Proiectarea dirijata de scop

Putinul software care este proiectat constiincios este, de obicei, proiectat din punctul de vedere al programatorului, uneori si din punctul de vedere al departamentului de marketing si ocazional din punctul de vedere al utilizatorului. Dar nici unul dintre aceste puncte de vedere nu reflecta scopurile, tinta utilizatorului.

In timp ce job-ul utilizatorului este sa se focalizeze pe task-uri, jobul proiectantului este sa caute in functie de task, pentru a identifica scopurile utilizatorului. In aceasta consta cheia crearii celor mai eficiente solutii software.

Un bun proiectant software trebuie sa fie atent, sensibil la scopurile utilizatorului prevenind astfel haosul din procesul de dezvoltare software.



1.1.Scopurile utilizatorului

Scopurile utilizatorului sunt destul de diferite ce ceea ce am putea ghici noi ca sunt. Un functionar se concentreaza asupra unor scopuri ca: sa nu para stupid, sa nu faca greseli mari, sa efectueze un volm adecvat de munca, sa se amuze (sau cel putin sa nu para a fi prea plictisit). Daca unii au aspiratii mai inalte acestea sunt mai mult personale: sa fiu cel mai bun in ceea ce fac, sa ajung repede pe lista si sa castig marea promovare, sa invat tot ceea ce se cunoaste despre acest domeniu, sa fiu un monument de modestie, etica si incredere.

Multe dintre cartile despre interfetele utilizator presupun ca scopurile acestuia au de-a face cu scopul de business al programului. Insa un software proiectat pentru a indeplici strict scopul business-ului va esua, daca este proiectat avand in minte scopurile personale ale utilizatorului va atinge si scopurile sale de business. Daca examinam cel mai comercial software disponibil in prezent constatam ca interfetele utilizator sunt in particular adepte ale catorva elemente: sa faca utilizatorul sa para stupid, sa provoace utilizatorul sa faca greseli mari, sa incetineasca ritmul utilizatorului astfel incat acesta sa nu poata obtine un volum de munca adecvat, sa previna veselia si sa plictiseasca utilizatorul.

Pentru a crea software care sa aiba succes, sa fie eficient, trebuie sa urmarim ca el sa indeplineasca scopurile utilizatorului. Nu putem evident ignora tehnologia sau task-urile.In continuare vor fi date cateva exemple de rezultate focalizate pe tehnologie si task-uri in loc de utilizator si scopurile acestuia.

Frecvent software-ul presupune ca utilizatorul este as in domeniul calculatoarelor, ex. - utilizatorul termina de editat un document il inchide iar programul il intreaba daca doreste sa il salveze; tehnologia din spatele acestei solicitari tine de abilitatea CPU-ului de a adresa direct informatia stocata, cu schimbul, in memorie, dar de unde sa stie un utilizator novice aceasta

software-ul interogheaza utilizatorul si sunt intrebari la care acesta nu are nici inclinatia si nici nu este pregatit sa raspunda - De ce ai ascuns acest fisier ? Care linie de cerere de intrerupere este libera? Pentru utilizator fiind foarte dificil sa se concentreze cand este bombardat prin intreruperi de confirmare ex. - Esti sigur ? Chiar vrei sa stergi acel fisier sau ai alte motive pentru a apasa tasta <Delete>?

programele exprima un jargon care nu poate fi inteles de catre utilizatorii obisnuiti - How many stop bits? - iar uneori chiar de catre cei experti - Please specify IRQ.

caracteristicile sunt ascunse in spatele unui voal de meniuri, casete de dialog, ferestre, iar utilizatorul de unde sa stie ca raspunsurile se afla in help-ul sistem daca el nu stie sa ajunga la acest help

adesea programele contin la vedere" instructiuni periculoase putand fi actionate accidental si speriind utilizatorii nepreveniti

1.2.Esenta proiectarii interfetelor utilizator

Singurul test adevarat al calitatii unei interfete utilizator este in context. Cum va fi folosit software-ul Cine il va utiliza ? Cat de frecvent ? Pentru cat timp ? Cat de importante sunt consideratiile privind integritatea datelor ? Ce-i cu invatarea ? Portabilitatea ? Raspunsurile variaza de la o aplicatie la alta.

Primul task al unui proiectant software este de a cauta si de a gasi raspunsurile la aceste intrebari la sau la alte intrebari centrate pe utilizator. Factorul principal pe care trebuie sa il urmarim este reprezentat mereu de scopurile, tinta utilizatorului


Usurinta de invatare este de asemenea importanta, deoarece ea afecteaza starea de multumire si in final are efect asupra randamentului. Volumul procesului este solicitarea dominanta plasata in sistem si daca este necesar usurinta de invatare trece pe locul doi.

Ideea este ca o proiectare buna face utilizatorul mai eficient. Aceasta ia in considerare scopul universal de a nu fi stupid, precum si orice scop particular de business sau usurinta de utilizare care este relevanta. Tine de proiectant sa determine modul in care se manifesta eficienta in functie de circumstante.

O mare parte din software-ul pe care il utilizam in prezent pe PC-urile noastre este mai degraba centrat pe caracteristici (feature centered) si nu centrat pe scop (goal centered). Un program asa de raspandit ca Microsoft Word for Windows ne ofera sute de functii - formatare paragrafe, inserare campuri, vizualizare si previzualizare imagini, configurare toolbar-uri, dar nici una dintre ele nu este centrata pe scop. De exemplu daca dorim sa scriem o scrisoare programul vine cu un template tipic pentru o scrisoare de business dar ce ne facem daca dorim sa scriem o scrisoare personala . discutie.

Proiectarea dirijata de scop constrange pe oricine si majoritatea tipurilor de programatori, au tendinta de a gandi in termeni de functii si caracteristici. Este cat se poate de natural dat fiind modul in care este construit software-ul functie cu functie. Elaboratorii sunt in mod frecvent frustati de aceasta din moment ce li se cere sa gandeasca intr-un stil nefamiliar lor.

Totusi proiectarea dirijata de scop este un avantaj fiind un puternic instrument pentru a raspunde la majoritatea intrebarilor importante ce se ivesc in faza de proiectare:

care trebuie sa fie forma programului ?

cum va interactiona utilizatorul cu programul ?

cum pot fi organizate mai eficient functiile programului ?

cum se va prezenta programul pentru prima data utilizatorilor ?

cum poate programul sa rezolve problemele ?

cum va ajuta programul pe utilizatorii ocazionali sa devina experti ?

cum poate programul sa furnizeze suficienta profunzime pentru utilizatorii experti ?

Design Software - terminologie

Referitor la terminologia corecta pentru a face referire la cei care proiecteaza software exista o oarecare confuzie.

Termenul de arhitect software este bun daca facem analogia cu arhitectii de cladiri. Acest termen insa a fost atribuit inginerilor software cei care construiesc interiorul sistemului de calcul. Termenul de software designer este cel utilizat inclusiv de catre ASD (Association of Software Design) dar si acest termen isi pierde valoarea deoarece este mult folosit ca termen pentru programatorii seniori.

Design-ul software este acea etapa din procesul de dezvoltare care este responsabila cu determinarea modului in care programul va realiza scopurile utilizatorului. Intrebarile la care trebuie sa raspunda in aceasta faza le include pe urmatoarele:

ce va face programul software

cum va arata el ?

cum va comunica cu utilizatorul ?

Un alt grup in continua crestere ai caror membrii se autointituleaza profesionisti ai abilitatii de utilizare si sunt persoane ce nu provin neaparat din randul programatorilor, dar se specializeaza in a studia cum va reactiona lumea cu software-ul. Ei organizeaza interviuri si se centreza pe grupuri de utilizatori observandu-i atent cum folosesc software-ul evaluand apoi calitatea interfetelor utilizator si facand recomandari.

O alta disciplina numita diversificat human factors engineering sau human computer interaction respectiv ergonomie vizeaza comportarea oamenilor in interactiunea cu calculatoarele si alte obiecte tehnologice.

O alta specialitate academica in crestere este psihologia cognitiva, popularizata la Universitatea din California care abordeaza modul de gandire al oamenilor si cel de intelegere a lumii inconjuratoare in particular a obiectelor tehnice cu care acestia lucreaza.

Modele

Metoda curenta privind modalitatea in care lucreza un dispozitiv este ceea ce numim modelul de implementare.

Modelul mental al utilizatorului sau uneori modelul conceptual este diferit de cel de implementare si este reprezentat de modul in care isi imagineaza utilizatorul functionarea unui dispozitiv.

Modelul manifest, el reprezentand modalitatea prin care programul isi prezinta functionalitatea fata de utilizator.

Cu cat modelul manifest este mai aproape de modelul mental al utilizatorului, cu atat acestuia ii va fi mai usor sa afle cum sa utilizeze si sa inteleaga programul.Abilitatea de a croi modelul manifest este o puternica parghie pe care proiectantul software o poate utiliza. Un model mental nu trebuie sa fie neaparat adevarat sau exact ci sa permita utilizatorului sa lucreze eficient cu procesul modelat.

Deoarece de multe ori interfetele software sunt proiectate de ingineri care stiu exact cum lucreaza acesta, rezultatul este un software cu un model manifest foarte consistent cu modelul sau de implementare.Este logic si adevarat dar nu si eficient. Intelegerea modului in care software-ul lucreaza il va ajuta intotdeauna pe cel care il utilizeaza doar ca aceasta intelegere are un cost semnificativ. Modelul manifest permite creatorilor de software sa rezolve problema simplificand modalitatea aparenta in care software-ul lucreaza. Interfetele utilizator care abandoneaza modelul de implementare pentru a urma cat mai indeaproape modelele mentale sunt mult mai bune.

Proiectantul de interfete trebuie sa protejeze utilizatorul de modelele de implementare pe care inginerul software le utilizeaza pentru a rezolva problemele interne ale software-ului. Majoritatea structurilor de date si algoritmilor utilizati pentru a reprezenta si manipula informatii in software sunt instrumente logice bazate pe modele matematice. Toti programatorii sunt influentati in aceste modele ei rezolva probleme de programare gandind matematic, ca umare ei vad aceste modele matematice ca fiind termenii cei mai potriviti pentru inventarea interfetelor utilizator.

Utilizatorului nu ii pasa in mod curent de modul in care este implementat programul. Ii pasa insa de orice problema apare datorita diferentelor dintre modele insa diferenta in sine nu prezinta nici un interes in particular.





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.