Inginerie Software c5

download Inginerie Software c5

of 72

Transcript of Inginerie Software c5

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 1

    Inginerie software curs 5Proiectarea interfeei utilizator

    id18554389 pdfMachine by Broadgun Software - a great PDF writer! - a great PDF creator! - http://www.pdfmachine.com http://www.broadgun.com

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 2

    Obiective

    Sugerarea unor principii generale de proiectare a interfeei utilizator (UI user interface).

    Explicarea diferitelor stiluri de interaciune i utilizarea lor. Explicarea alegerii ntre prezentareaJUDILFi cea

    textual a informaiilor. Explicarea principalelor activiti ale procesului de

    proiectare a interfeei utilizator. Introducerea atributelor de utilizabilitate i a abordrilor

    evalurii sistemului.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 3

    Subiecte tratate

    Modele de interfee utilizator Principii i probleme de proiectare a UI Procesul de proiectare a interfeei utilizator

    Analiza utilizatorului Prototiparea interfeei utilizator Evaluarea interfeei

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 4

    Modele de interfee utilizator

    Interfa batch (n loturi de lucrri)Una sau mai multe interfee ce permit utilizatorilor s preprogrameze cartele

    special formatate prin perforare, pe baza unui ablon specific recunoscut de calculator. Fiecare cartel corespunde unei comenzi sau unei linii de cod. Aa numitele cartele job erau utilizate pentru a dirija procesarea pachetului de cartele. Cartelele erau citite ntr-un cititor de cartele care furniza calculatorului informaiile pentru procesare.

    Problema acestui model de interfa este lipsa de interactivitate cu calculatorul n timpul procesrii cartelelor. La apariia unei probleme la o cartel operaia trebuia s se opreasc pentru a se nlocui cartela greit. Aceasta conducea la reluri multiple pentru a pune programul la punct.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 5

    http://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era

    Formular INPUTEditare cod surs

    Linie de cod surs

    PROGRAM

    Eroare de intrare

    OUTPUT

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 6

    Modele de interfee utilizator

    Interfa n mod linie de comand (CLI)Afieaz un prompterFDUHLQGLFIDSWXOFVLVWHPXOHVWHJDWDV

    primeasc o intrare. Utilizatorul tasteaz o comand i o trimite spre procesare apsnd de obicei tasta Enter. Calculatorul proceseaz comanda i furnizeaz o ieireVXEIRUPGHWH[W.

    Aduce interactivitate cu calculatorul. Dificil de reinut comenzile complexe. Un limbaj de scripting permite utilizatorilor s creeze fiiere de

    comenzi ce pot fi lansate ca atare.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 7

    Modele de interfee utilizatorInterfa text (TUI)Utilizeaz ntreg ecranul pentru a executa diferite operaii. Ofer funcionalitate i utilizabilitate superioar n conducerea activitilor.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 8

    Modele de interfee utilizator

    Interfee grafice (GUI)Interfee standard ncepnd cu anii 1990.Prima interfa grafic a fost disponibil pentru uzul comun n 1984 cnd

    Apple a introdus calculatorul Macintosh. Metafora birou (desktop) a GUI: informaiile sunt organizate ca ntr-un

    biroufiierele sunt localizate n registre (folder) iar programele i alte informaii pot fi organizate pe ecran ca pe o mas de scris (desktop).

    Lansarea programelor i manipularea obiectelor pe ecran se face utiliznd mouse-ul, un dispozitiv hardware specializat.

    Obiectele sunt mprite n 4FDWHJRULLFDUHIRUPHD]DFURQLPXOWIMP: window, icon, menu, i pointing device.

    Configurabilitatea interfeei permite modificarea aparenei i poziiei diferitelor elemente de pe ecran.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 9

    Modele de interfee utilizator

    Interfee Web

    Bazate pe (X)HTML i pe tehnologii asociate.Site-urile Web conin pagini Web interconectateFDUHLPSOLFLQWHUIHe

    utilizator consistente.

    Aparena interfeei poate s depind de browser-ul Web i de rezoluia ecranului calculatorului de la utilizator.

    Site-urile Web ofer un anumit nivel de interactivitate:- link-uri incluse n text i n grafic;- formulare (forms).

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 10

    Modele de interfee utilizatorInterfee ce se integreaz cu aceste modele

    Interfee hardware pentru meninerea SECURITII sistemului: Smart cards, introduse ntr-un cititor separat; citite i comparate cu

    nregistrrile existente ntr-un fiier. Scanarea amprentelor, implic plasarea degetului arttor ntr-un mic

    dispozitiv de citire a amprentelor i verificarea acestora n raport cu informaii memorate ntr-un fiier.

    Scanarea retinei, implic plasarea feei ntr-un cititor de retin, care va scana retina i va compara informaia cu cea memorat ntr-un fiier.

    Etichete cu identificator n frecven radio (RFID), care sunt dispozitive mobile ce comunic cu un sistem de calcul printr-un cititor RFID (ex. Chip-uri RFID sunt implantate n animale ca i n unele persoane).

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 11

    Modele de interfee utilizatorAlte interfee

    Interfee tactile se bazeaz pe simul tactil pentru a genera feedbackhaptic; utilizate n simulatoare. (Ex. Atunci cnd un pilot aflat ntr-un simulator ntlnete o anumit situaie pe ecran, maneta de control va opune aceeai rezisten ca i n situaia real).

    Interfee de atingere: se utilizeaz un stylus sau degetul pentru a atinge pictogramele sau alte obiecte grafice pentru a le manipula. (Ex. touch screen asociate cu Personal Digital Assistants (PDAs) sau cuPocket PCs).

    Interfee utilizator prin telefon: utilizarea tastaturii telefonului pentru a interaciona cu programul din sistem.

    Interfee buton: utilizeaz un dispozitiv hardware pentru a manipula obiecte de pe ecran. Se gsesc pe iPod sau pe player-e pentru jocuri video. Pot fi combinate i cu alte interfee, cum ar fi un joystick.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 12

    Modele de interfee utilizator Interfee atente urmresc atenia utilizatorului prin ghidarea lui de-a

    lungul unui proces i atenionareaGHVSUHRULFHSUREOHPSRWHQial. Interfaa este proiectat s neleag ce face utilizatorul astfel nct s reacioneze corespunztor.

    Ex. Interfaa va urmri orice modificare a ateniei vizuale sau dac utilizatorul s-a ntors pentru a da atenie la altceva.

    Interfee pentru gesturi se bazeaz pe gesturi manuale ca intrri, pe msur ce utilizatorii i mic minile i braele pentru a manipula obiecte prezentate de calculator.

    Interfee reflexive permit utilizatorilor s defineasc i s controlezentregul sistem prin intermediul interfeei utilizator.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 13

    Interfee cu zooming (ZUI): reprezint obiectele n diferite nivele de scalare i detaliu (o evoluie a GUI).

    Desktop infinit care const din diferite obiecte cu diferite nivele de detaliu. Operaii: selectare obiect; mrire obiect pentru vizualizare sau pentru lucru cu

    el; comprimare obiect. Utilizeaz grafic vectorial pentru a reprezenta obiectele.

    Modele de interfee utilizator

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 14

    Modele de interfee utilizator Interfa Archy (propus de Jef Raskin; integrat n Canon Cat).Bazat text, fr caracteristici GUI. Micare n salturi pe ecran pentru o cutare incremental pe text. Se pot insera i executa comenzi.Utilizeaz o ZUI cu care se face interfaarea printr-un mouse.Pe msur ce aria de zoom se apropie de obiect, obiectul se mrete astfel nct

    mai mult informaie poate fi examinat pentru a decide dac obiectul va fi expandat.

    Interfa creier-calculator: bazat pe implanturi; probabil cea mai direct interfa.

    Interfee creier-calculator rudimentare au fost dezvoltate pentru a permite oamenilor i maimuelor s controleze un cursor pe un ecran.

    Alte interfee utilizeaz implanturi care sunt controlate de creier pentru a depi lipsa necongenital a auzului sau a vederii.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 15

    Subiecte tratate

    Modele de interfee utilizator Principii i probleme de proiectare a UI Procesul de proiectare a interfeei utilizator

    Analiza utilizatorului Prototiparea interfeei utilizator Evaluarea interfeei

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 16

    Proiectarea UI

    Proiectarea UI este o parte esenial a ntregului proces de proiectare a software-lui.

    Interfaa utilizator trebuie proiectat astfel nct s fie potrivit cu abilitile, experiena i ateptrile utilizatorilor anticipai.

    Deseori utilizatorii unui sistem l judec mai curnd dup interfa dect dup funcionalitate.

    O interfa proiectat prost poate determina un utilizator s fac greeli catastrofice.

    Proasta proiectare a interfeei este unul dintre motivele pentru care multe sisteme software nu au fost niciodat utilizate.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 17

    Obiectivele unui proiect bun

    Trebuie s fie etic.

    Trebuie s aib un scop.

    Trebuie s fie pragmatic.

    Trebuie s fie elegant.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 18

    Obiectivele aplicate la proiectarea UI

    Etics nu afecteze i s ajute cu adevrat utilizatorii s-i simplifice viaa.

    Ex. O interfa nu trebuie s includ informaii inutile care s distrag utilizatorul i s l fac mai puin eficient n ndeplinirea sarcinilor.

    Cu scop s ajute utilizatorul s-i ating scopurile pentru care folosete software-ul i s-i neleag limitrile.

    Scopul utilizatorului poate fi descoperit prin nelegerea modului n care acesta se comport la lucru.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 19

    Obiectivele aplicate la proiectarea UI

    Pragmatic Crearea ct de repede posibil a unui design pentru UI care s ndeplineasc cerinele prilor interesate.

    Discutarea regulat a cerinelor i necesitilor,FXWRDWHSUile interesate.

    Elegant Design-ul UI trebuie s fie ct de eficient posibil.

    Reducerea numrului de click-uri n special la proiectarea site-urilor Web.

    Toate prile unei interfee trebuie s fie coerente, i.e. trebuie s se simt c lucreaz mpreun ca pri ale unui aceluiai ntreg.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 20

    Factori umani n proiectarea interfeei

    Memorie pe termen scurt limitat Oamenii i pot aminti instantaneu n jur de 7 elemente de

    informaie. Dac li se prezint mai multe, ei sunt predispui la a grei.

    Oamenii fac greeli Atunci cnd un utilizator face o greeal, alarme i mesaje de

    eroare nepotrivite duc la creterea stresului i la predispoziia la greeli suplimentare.

    Oamenii sunt diferii Oamenii au o gam larg de capabiliti fizice. Proiectanii nu

    trebuie s se orienteze dup capabilitile lor proprii. Oamenii au preferine diferite referitor la interaciune

    Ex. Unii prefer grafica, alii textul.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 21

    Principiile proiectrii UI

    Proiectarea UI trebuie s in cont de necesitile, experiena i capabilitile utilizatorilor sistemului.

    Proiectanii trebuie s fie contieni de limitrile fizice i mentale ale utilizatorilor (ex. memorie pe termen scurt limitat) i s recunoasc faptul c acetia pot face greeli.

    Principiile proiectrii UI stau la baza proiectrii interfeelor, dar nu toate principiile sunt aplicabile tuturor proiectelor.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 22

    Principiile proiectrii UI

    Principiu Descriere Familiaritate Interfaa trebuie s utilizeze termeni i concepte extrase din

    experiena persoanelor care vor utiliza n cea mai mare msur sistemul.

    Consisten Interfaa trebuie s fie consistent n sensul c, de cte ori este posibil, operaii comparabile trebuie activate n acelai mod.

    Surpriz minim Utilizatorii n-ar trebui s fie niciodat surprini de comportamentul sistemului.

    Recuperabilitate Interfaa trebuie s includ mecanisme care s le permit utilizatorilor recuperarea din erori.

    ndrumarea utilizatorului

    Interfaa trebuie s ofer feedback cu semnificaie clar atunci cnd apar erori i s ofere faciliti de help senzitiv la context.

    Diversitatea utilizatorilor

    Interfaa trebuie s ofere faciliti corespunztoare de interaciune pentru diferite tipuri de utilizatori ai sistemului.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 23

    Principiile proiectrii UI

    Familiaritate Interfaa trebuie s se bazeze pe termeni i concepte

    orientate pe utilizator i nu pe concepte specifice sistemelor de calcul. De exemplu, un sistem pentru birou trebuie s utilizeze concepte ca scrisori, documente, fiiere, i nu directoare, identificatoare de fiier, etc.

    Consisten Sistemul trebuie s prezinte un nivel corespunztor de

    consisten. Comenzile i menu-urile trebuie s aib acelai format, punctuaia comenzilor s fie similar, etc.

    Consisten intre aplicaii: ex. comenzile cu neles similar exprimate n acelai mod. Consisten low-level: ex. utilizarea acelorai acceleratori ca cei definii de sistemul de

    operare. Consisten high-level: ex. aceleai operaii suportate de toate tipurile de entiti din

    sistem.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 24

    Principiile proiectrii UI Surpriz minim

    Dac o comand funcioneaz ntr-un mod cunoscut, utilizatorul trebuie s fie capabil s prevad funcionarea comenzilor comparabile (conform cu modelul mental construit de utilizator n timpul utilizrii aplicaiei).

    Recuperabilitate Sistemul trebuie s ofere un anumit grad de flexibilitate fa de

    erorile utilizatorilor i s permit acestora s poat recupera sistemul.

    Poate include;- Facilitate undo: reface sistemul n starea de dinaintea ultimelor aciuni;- Confirmarea aciunilor distructive;- tergeri 'soft';- Salvarea strii sistemului la anumite intervale de timp i posibilitatea ca

    sistemul s fie repornit de la ultimul checkpoint.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 25

    Principiile proiectrii UI Ghidarea utilizatorului

    asistarea utilizatorului sisteme de help integrate cu sistemul: Diferite nivele de help i ghidare, Structurate astfel nct s nu copleeasc utilizatorul cu informaii.

    manuale on-line, etc.

    Diversitatea utilizatorilorUniversal Design (UD) = filozofie de proiectare care are ca scop evitarea excluderii de

    utilizatori datorat unor alegeri de proiectare prost gndite.Trebuie oferite faciliti de interaciune pentru diferite tipuri de utilizatori: Ocazionali (necesit ghidare) vs. power users (necesit acceleratori). Utilizatori cu dizabiliti: ex. Utilizatori cu dificulti de vedere => se va prezenta

    textul cu caractere de dimensiuni mari.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 26

    Probleme de proiectare n UI

    n proiectarea sistemelor interactive trebuie adresate dou probleme: Cum va fi furnizat calculatorului informaia de la

    utilizator? Cum va fi prezentat utilizatorului informaia produs

    de calculator?

    Interaciunea cu utilizatorul ca i prezentarea informaiei pot fi integrate prin intermediul unui cadru coerent, cum ar fi o metafor pentru interfaa utilizator.

    (ex. ATM, airline self-ticketing, ?)

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 27

    Stiluri de interaciune

    Manipulare direct

    Selecie din menu

    Completare formular

    Limbaj de comand

    Limbaj natural

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 28

    Stiluri de interaciune

    Stil de interaciune

    Avantaje Dezavantaje Exemple de aplicare

    Manipulare direct

    Interaciune rapid i intuitiv. Uor de nvat.

    Poate fi dificil de implementat. Potrivit doar dac exist o metafor vizual pentru task-uri i obiecte.

    Jocuri video Sisteme CAD

    Selecie din menu

    Evit greelile utilizatorului. Tastare puin.

    Lent pentru utilizatorii experimentai. Poate deveni complex dac menu-urile au multe opiuni.

    Sistemele de uz general.

    Completare formular

    Simplu de introdus date. Uor de nvat. Verificabilitate.

    Ocup mult spaiu pe ecran. Apar probleme dac opiunile utilizatorului nu se potivesc cu cmpurile din formular

    Control stoc Procesare mprumut personal

    Limbaj de comand

    Puternic i flexibil. Dificil de nvat. Management slab al erorilor.

    Sisteme de operare, Sisteme de comand i control

    Limbaj natural

    Accesibil utilizatorilor ocazionali. Uor de extins.

    Necesit mai mult tastare. Sistemele care neleg limbaj natural nu sunt de ncredere.

    Sisteme pentru extragere informaii.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 29

    Manager GUIX-Windows

    Interfa grafic(GUI)(Gnome/KDE)

    Interpretor pentru limbaj de comenzi

    Interfa comenzi Unix shell(ksh/csh)

    Sistem de operare Linux

    Separarea stilului de interaciune de entitile care sunt manipulate prin interfaa utilizator.

    Separarea prezentrii informaiilor de gestionarea dialogului i de logica aplicaiei.

    Interfee utilizator multiple

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 30

    Interfee bazate Web

    Multe sisteme bazate Web au interfee bazate pe formulare (forms) Web.

    Cmpurile formularelor pot fi menu-uri, casete preluare text, butoane radio, etc.

    n exemplul LIBSYS utilizatorii aleg dintr-o list sursa la care se va face cutarea i tasteaz fraza de cutare ntr-o caset de preluare text.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 31

    Prezentarea informaiilor

    Prezentarea informaiilor se refer la prezentarea informaiilor produse de sistem utilizatorilor acestuia.

    Informaiile pot fi prezentate direct (ex. text ntr-un procesor de texte) sau pot fi transformate ntr-o anumit form de prezentare (ex. ntr-o anume form grafic).

    Abordarea Model-View-Controller este o modalitate de a oferi suport pentru prezentri multiple ale datelor.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 32

    Prezentarea informaiilor

    Informaii de afiat

    Software de prezentare

    Afiare

    Practic bun de proiectare: separarea software-lui de prezentare de informaia de prezentat. Permite:

    - formate multiple de prezentare;- modificarea reprezentrii fr a afecta sistemul de calcul suport.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 33

    Model-view-controller

    Gesturi utilizator

    Selectare vedere

    Notificare a uneimodificri

    Modificare stare

    Interogare stare

    Eveniment

    Invocare metod

    Modelncapsuleaz starea aplicaiei-Rspunde la interogrile despre stare-Expune funcionalitatea aplicaiei-Notific vederile cnd apar modificri

    ControllerDefinete comportamentul aplicaiei-Mapeaz gesturile utilizator n actualizri ale modelului-Selecteaz vederea pentru rspuns-Cte unul pentru fiecare funcionalitate

    View-Red modelele-Solicit actualizri de la modele-Trimite gesturi utilizator la controller-Permite controllerului s selecteze vederea

    Decupleaz vederile (prezentarea) de model (datele). Stabilete un protocol de tip subscribe / notify ntre ele.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 34

    Prezentarea informaiilor

    Informaii statice Iniializate la nceputul unei sesiuni. Nu se modific pe

    durata sesiunii.

    Informaii dinamice Se modific pe parcursul unei sesiuni iar modificrile

    trebuie comunicate utilizatorului sistemului.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 35

    Factori de afiare a informaiilor

    Este utilizatorul interesat de informaii precise sau de relaii ntre date?

    Care este frecvena de modificare a informaiilor?

    Modificarea trebuie s fie comunicat imediat?

    Utilizatorul trebuie s rspund printr-o aciune la o modificare?

    Exist o interfa de manipulare direct?

    Informaia este textual sau numeric? Valorile relative sunt importante?

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 36

    Prezentri alternative ale informaiilor

    Prezentare analogic:Uor de format o impresie la prima vedere asupra valorii;Posibilitatea de a arta valori relative;Mai uor de vzut valorile excepionale.

    Prezentare digital:Compact ocup puin spaiu pe ecran;Se pot comunica valori precise.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 37

    Metode de prezentare

    1

    3

    4 20 10 20

    Dial with needle Pie chart Thermometer Horizontal barDial with needle

    Pie chart Thermometer Horizontal bar

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 38

    Afiarea de valori relative

    0 100 200 300 400 0 25 50 75 100Pressure Temperature

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 39

    Vizualizarea datelor

    Se ocup cu tehnicile pentru afiarea cantitilor mari de informaii.

    Vizualizarea poate revela relaiileGLQWUHHQWLWi i tendinele datelor.

    Exemple : Informaii meteo colectate de la mai multe surse; Starea unei reele de telefonie sub forma unui set de noduri

    conectate; Combinat chimic vizualizat sub form de presiuni i temperaturi

    ntr-un set de rezervoare i conducte; Un model molecular afiat n 3 dimensiuni; Pagini Web afiate ca arbore hiperbolic.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 40

    Afiarea culorilor

    Culoarea adaug o dimensiune suplimentar unei interfee i poate ajuta utilizatorul s neleag structuri complexe de informaie.

    Culoarea poate fi utilizat pentru a evidenia: evenimente excepionale, anomalii, similariti.

    Greeli obinuite la utilizarea culorilor n proiectarea interfeelor: Utilizarea culorii pentru a comunica o informaie

    particular; Utilizarea excesiv de culori.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 41

    ndrumri de utilizare a culorilor

    Limitarea numrului de culori utilizate i folosirea lor consecvent.

    Utilizarea unei schimbri de culoare pentru a ilustra o schimbare n starea sistemului.

    Utilizarea codificrii pe baz de culori pentru a oferi sprijin utilizatorilor n realizarea activitii curente.

    Utilizarea codificrii pe baz de culori n mod bine gndit i controlat.

    Atenie la mperecherea culorilor.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 42

    Mesaje de eroare Proiectarea mesajelor de eroare este de importan critic.

    Mesaje proaste pot conduce la refuzarea sistemului de ctre utilizator.

    Mesajele trebuie s fie: politicoase, concise, consistente constructive.

    Cultura i experiena utilizatorilor trebuie s constituie un factor determinant n proiectarea mesajelor.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 43

    Factori de proiectare n formularea mesajelor

    Factor Descriere Context De cte ori este posibil, mesajele generate de sistem trebuie s reflecte

    contextul curent al utilizatorului. n msura posibilitilor, sistemul trebuie s fie contient de ceea ce face utilizatorul i trebuie s genereze mesaje relevante pentru activitatea curent.

    Experien Pe msur ce utilizatorii se familiarizeaz cu sistemul ei devin nerabdtori cu mesajele lungi ce conin descrieri detaliate ale problemei. Totui, nceptorilor le este dificil s neleag texte scurte i concise referitoare la o problem. Trebuie oferite ambele tipuri de mesaje iar utilizatorul trebuie s poat controla concizia acestora.

    Nivel de pregtire

    Mesajele trebuie construite dup competenele i experiena utilizatorului. Mesajele adresate diferitelor clase de utilizatori pot fi exprimate n moduri diferite funcie de terminologia familiar celui care citete.

    Stil Mesajele trebuie s fie mai curnd pozitive dect negative. Trebuie s utilizeze de preferin modul activ de adresare i nu pe cel pasiv. Nu trebuie s fie insulttoare sau ironice.

    Cultur De cte ori este posibil, proiectantul mesajelor trebuie s fie familiar cu cultura rii unde se va vinde sistemul. Exist diferene culturale clare ntre Europa, Asia i America. Un mesaj potrivit ntr-una din culturi poate fi inacceptabil n alta.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 44

    Erori ale utilizatorilor

    Exemplu: S presupunem c o asistent tasteaz greit numele unui pacient.

    Indicai numele pacientului n caset i apoi apasai pe OK

    Nume pacient:

    Popa, M.

    OK Cancel

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 45

    Proiectare bun i proast a mesajelor

    ??? Error #27Invalid patient ID

    OK Cancel

    Popa, M nu este un pacient nregistrat.Apasai Pacieni pentru o list de pacieni.Apasai Retry pentru reintroducere nume pacient.Apasai Help pentru mai multe informaii.

    Pacieni CancelRetryHelp

    Mesaj de eroare orientat sistem Mesaj de eroare

    orientat utilizator

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 46

    Subiecte tratate

    Modele de interfee utilizator Principii i probleme de proiectare a UI Procesul de proiectare a interfeei utilizator

    Analiza utilizatorului Prototiparea interfeei utilizator Evaluarea interfeei

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 47

    Procesul de proiectare a interfeei utilizator (UI)

    Proiectarea UI este un proces iterativFDUHLPSOLFRlegtur strns ntre utilizatori i proiectani.

    Activiti fundamentale ale acestui proces: Analiza utilizatorului. nelegerea a ceea ce vor face

    utilizatorii cu sistemul;

    Prototiparea sistemului. Dezvoltarea unei serii de prototipuri n vederea experimentrii;

    Evaluarea interfeei. Experimentarea prototipurilor cu utilizatorii.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 48

    Procesul de proiectare

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 49

    Subiecte tratate

    Modele de interfee utilizator Principii i probleme de proiectare a UI Procesul de proiectare a interfeei utilizator

    Analiza utilizatorului Prototiparea interfeei utilizator Evaluarea interfeei

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 50

    Analiza utilizatorului

    Dac nu se nelege ce vor utilizatorii s fac cu sistemul, atunci nu exist o perspectiv realist a proiectrii unei interfee eficiente.

    Analiza utilizatorului trebuie descris n termeni pe care i pot nelege att utilizatorii ct ceilali proiectani.

    Scenariile n care sunt descrise episoade tipice de utilizare sunt un mod de a realiza aceste analize.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 51

    Exemplu: Scenariu al interaciunii cu utilizatorul

    Jane este student la teologie i lucreaz la un eseu despre arhitectura indian i modul n care aceasta a fost influenat de practicile religioase. Pentru a nelege acest lucru ea ar dori s acceseze cteva imagini ale detaliilor construciilor celebre, darQXSRDWHJVLQLPLFn biblioteca local.

    Ea l abordeaz pe bibliotecarul din domeniu pentru a-i expune problema iar acesta i sugereaz civa termeni de cutare ce ar putea fi folosii. El recomand, de asemenea, cteva biblioteci n New Delhi i Londra care ar putea avea acest material, aa c ei se conecteaz la cataloagele bibliotecii i lanseaz cteva cutri folosind aceti termeni. Gsesc cteva materiale surs i plaseaz o solicitare ca fotocopii ale imaginilor cu detaliile arhitecturale s fie postate direct ctre Jane.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 52

    Exemplu: Cerine rezultate din scenariu

    Utilizatorii ar putea s nu cunoasc termeni de cutare corespunztori, deci au nevoie de o metod care s-i ajute s aleag termeni.

    Utilizatorii trebuie s poat alege coleciile n care s se realizeze cutrile.

    Utilizatorii trebuie s poat realiza cutri i s cear copii ale materialelor relevante.

    Jane este student la teologie i lucreaz la un eseu despre arhitectura indian i modul n care aceasta a fost influenat de practicile religioase. Pentru a nelege acest lucru ea ar dori s acceseze cteva imagini ale detaliilor construciilor celebre, darQXSRDWHJVLQLPLFn biblioteca local.

    Ea l abordeaz pe bibliotecarul din domeniu pentru a-i expune problema iar acesta i sugereaz civa termeni de cutare ce ar putea fi folosii. El recomand, de asemenea, cteva biblioteci n New Delhi i Londra care ar putea avea acest material, aa c ei se conecteaz la cataloagele bibliotecii i lanseaz cteva cutri folosind aceti termeni.*VHVFFkWHYDPDWHULDOHVXUVi plaseaz o solicitare ca fotocopii ale imaginilor cu detaliile arhitecturale s fie postate directFWUH-DQH.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 53

    Tehnici de analiz

    Analiza sarcinilor (tasks) Modeleaz paii implicai n realizarea unei sarcini.

    Interviuri i chestionare ntreab utilizatorii despre activitile pe care ei le

    realizeaz.

    Etnografie Observ utilizatorii n timp ce lucreaz.

    Analiza sarcinilor (tasks)Interviuri i chestionareEtnografie

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 54

    Exemplu: Analiz ierarhic a sarcinilor

    Analiza sarcinilor (tasks)Interviuri i chestionareEtnografie

    Deseneaz o ierarhie a aciunilor ce trebuie realizate.

    Pornete de la obiectivul utilizatorului

    Preluare imagini din biblioteci de la distanta

    1.Descoperire posibile surse

    2.Stabilire cuvinte

    de cautare

    3.Cautare imagini

    4.Cerere fotocopii ale elementelor

    gasite

    3.1.Selectarebiblioteca

    3.2.Conectarela catalog

    3.3.Cautareimagini

    3.4.Modificarecuvinte de

    cautare

    3.5.Inregistrare elementele importante

    3.3.1.Introducere cuvinte de cautare

    3.3.2.Initiere cautare

    3.3.3.Inspectare rezultate

    do 1,2,3 pana sunt gasite imagini, 4

    do 3.1, 3.2, 3.3 pana sunt gasite imagini, 3.4 daca e necesar, 3.5

    do 3.3.1, 3.3.2, 3.3.3Task-urile de nivel nalt sunt divizate n subtask-uri.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 55

    Intervievare

    Proiectare de interviuri semi-structurate bazate pe ntrebri deschise.

    Utilizatorii pot furniza astfel informaiile pe care ei le consider eseniale i nu doar informaiile pe care inginerul s-a gndit s le colecteze.

    Interviuri n grup sau grupuri focalizate permit utilizatorilor s discute ntre ei despre ceea ce fac.

    Analiza sarcinilor (tasks)Interviuri i chestionareEtnografie

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 56

    Etnografie

    Implic faptul c un observator extern urmrete utilizatorii la lucru i i interogheaz verbal despre ceea ce fac.

    Valoroas deoarece multe sarcini ale utilizatorilor sunt intuitive i acestora le este foarte dificil s le descrie i explice.

    Ajut, de asemenea, n nelegerea rolului influenelor sociale i organizaionale asupra modului de lucru.

    Analiza sarcinilor (tasks)Interviuri i chestionareEtnografie

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 57

    Exemplu: nregistrri etnografice

    Controlul traficului aerian implic mai multe suite de control unde suitelecare controleaz sectoare adiacente din spaiul aerian sunt localizate fizic una lng alta. Zborurile dintr-un sector sunt reprezentate prin benzi de hrtie prinse n grilaje de lemn ntr-o ordine ce reflect poziia lor n sector.'DFQXVXQWVXILFLHQWHlocuri n grilaj (i.e. atunci cnd spaiul aerian este foarte ocupat), controlorii pun benzile pe birou n faa grilajului.

    Analiza sarcinilor (tasks)Interviuri i chestionareEtnografie

    Atunci cnd urmrim controlorii, observm c acetia se uit cu regularitate la grilajele din sectorul adiacent. i ntrebm de ce fac aa.Ei ne rspund c, dac controlorul alturat are benzi pe biroul lui, aceasta nseamn c exist multe zboruri care vor intra n sectorul lor. De aceea ei ncearc s mreasc viteza avionului din sector pentru a face loc avionului ce urmeaz s vin.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 58

    Exemplu: Concluzii pe baza etnografiei

    Controlorii trebuie s vad toate zborurile dintr-un sector. De aceea trebuie evitate afiri derulante n care dispar din vedere avioanele din partea superioar sau din cea inferioar.

    Interfaa trebuie s aib modaliti de a le comunica controlorilor cte zboruriH[LVWn sectoarele adiacenteastfel nct ei s-i poat planifica activitatea din sector.

    Analiza sarcinilor (tasks)Interviuri i chestionareEtnografie

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 59

    Subiecte tratate

    Modele de interfee utilizator Principii i probleme de proiectare a UI Procesul de proiectare a interfeei utilizator

    Analiza utilizatorului Prototiparea interfeei utilizator Evaluarea interfeei

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 60

    Prototiparea interfeei utilizator

    Scopul prototiprii este de a permite utilizatorilor s capete experien direct cu interfaa.

    n lipsa acestei experiene directe, este imposibil de judecat utilizabilitatea unei interfee.

    Prototiparea poate fi un proces cu dou stadii: n primul stadiu se pot utiliza prototipuri pe hrtie; n cel de al doilea stadiu desenul este rafinat i se

    dezvolt prototipuri automate din ce n ce mai sofisticate.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 61

    Prototip pe hrtie

    Parcurgerea scenariilor utiliznd schie ale interfeei.

    Prezentarea unei serii de interaciuni cu sistemul (storyboard).Un storyboard este o schi pe hrtie a interfeei utilizator, cu fiecare

    ecran reprezentat pe o foaie separat. Fiecare ecran, comutator, buton, etc. este reprezentat exact aa cum este vzut de utilizator. Fiecare pagin include adnotri ce permit utilizatorului s se plimbeprin toat aplicaia.

    Prototipul pe hrtie este o metod eficient de a afla reaciile utilizatorului la propunerile pentru design-ul interfeei.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 62

    Tehnici de prototipare

    Prototipare bazat pe script Se dezvolt o serie de scripturi i ecrane utiliznd un instrument

    ca Macromedia Director. Atunci cnd utilizatorul interacioneaz cu acestea, ecranul se modific trecnd la urmtoarea afiare.

    Programare vizual Se utilizeaz un limbaj proiectat pentru dezvoltarea rapid a

    software-lui, cum ar fi Visual Basic.

    Prototipare bazat Web Utilizarea unui browser Web i a unor scripturi asociate.

    Ecranele interfeei utilizator sunt prezentate pe calculator, dar NU exist nici o funcionalitate de baz. Singura funcionalitate implementat este cea a interfeei utilizator.

    List instrumente: http://c2.com/cgi/wiki?GuiPrototypingTools

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 63

    Subiecte tratate

    Modele de interfee utilizator Principii i probleme de proiectare a UI Procesul de proiectare a interfeei utilizator

    Analiza utilizatorului Prototiparea interfeei utilizator Evaluarea interfeei

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 64

    Evaluarea interfeei utilizator

    Trebuie realizate evaluri ale design-ului unei interfeei utilizator pentru a vedea n ce msur acesta corespunde modului de lucru potrivit.

    Evaluarea total este foarte costisitoare i nepractic pentru majoritatea sistemelor.

    n mod ideal o interfa ar trebui evaluat n raport cu specificaiile de UTILIZABILITATE.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 65

    Utilizabilitate

    Capaciatatea de a fi utilizabil.

    Convenabil i practic de utilizat.

    Bazat pe urmtoarele principii:

    Utilizabilitatea necesit concentrare pe utilizatori.

    Oamenii utilizeaz produse software pentru a fi productivi.

    Utilizatorii sunt persoane ocupate care ncearc s ndeplineasc sarcini.

    Utilizatorii sunt cei care decid dac un produs este uor de utilizat.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 66

    Utilizabilitate

    Lansarea procesului de utilizabilitate odat cu proiectarea

    permite exprimarea n termenii experienei utilizatorului a:

    - testelor de utilizabilitate,- interfeei i documentaiei produsului,

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 67

    Atribute de utilizabilitate

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 68

    Tehnici simple de evaluare

    Chestionare pentru feedback de la utilizator.

    nregistrare video a utilizrii sistemului i evaluarea ulterioar a proieciei.

    Extinderea codului cu operaii de colectare referitoare la utilizarea facilitilor i la erorile utilizatorului.

    Adugarea de cod care s colecteze feedback on-line de la utilizator.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 69

    Metode de testare a utilizabilitii

    Quick and dirtyefectuat de obicei dup ce produsul a fost realizat.

    Sub form de chestionare imprimate sau on-line sau sub form de feedback direct de la utilizatori.

    Formativeau loc n timpul dezvoltrii produsului.

    Exemplu: Beta tester-ii persoanele care testeaz utilizabilitatea i funcionalitatea software-lui) pot testa facilitatea de help on-line pentru a se asigura c acesta este utilizabil i accesibil.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 70

    Metode de testare a utilizabilitii

    Sumativeau loc atunci cnd produsul a atins un anumit stadiu de dezvoltare definit de echipa proiectului.

    Este testat progresul fcut n dezvoltarea produsului. Utilizeaz metrice pentru evaluarea eficienei, eficacitii i

    gradului de satisfacere a cerinelor pentru produsul testat. Beta tester-ii pot oferi feedback i despre utilitatea

    documentaiei.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 71

    Rezumat

    Principiile de proiectare a interfeei utilizator trebuie s ajute n ghidarea proiectrii interfeelor utilizator.

    Stilurile de interaciune includ manipulare direct, sisteme de menu-uri, completare formulare, limbaje de comand i limbaj natural.

    Afirile grafice ar trebui utilizate pentru a prezenta tendine i valori aproximative. Afirile digitale sunt utile atunci cnd este necesar precizie.

    Culorile trebuie utilizate cu economie i n mod consistent.

  • Adapted after Ian Sommerville 2007 Software Engineering, 8th edition. Chapter 16 Slide 72

    Rezumat

    Procesul de proiectare a interfeei utilizator implic analiza utilizatorului, prototiparea sistemului i evaluarea prototipului.

    Scopul analizei utilizatorului este de a face proiectanii contieni de modul n care utilizatorii lucreaz de fapt.

    Prototiparea UI ar trebui s fie un proces n dou stadii, cu prototipurile elaborate n primul stadiu utilizate ca baz pentru prototipuri automate ale interfeei.

    Scopurile evalurii UI sunt de a obine feedback despre cum s fie mbuntit design-ul interfeei i de a evalua dac interfaa ndeplinete cerinele de utilizabilitate.