La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

IUM20048 lezione 26 marzo 20031 LERRORE UMANO. IUM20048 lezione 26 marzo 20032 Errore Atto, effetto di allontanarsi dalla verità o dalla norma convenuta.

Presentazioni simili


Presentazione sul tema: "IUM20048 lezione 26 marzo 20031 LERRORE UMANO. IUM20048 lezione 26 marzo 20032 Errore Atto, effetto di allontanarsi dalla verità o dalla norma convenuta."— Transcript della presentazione:

1 IUM20048 lezione 26 marzo 20031 LERRORE UMANO

2 IUM20048 lezione 26 marzo 20032 Errore Atto, effetto di allontanarsi dalla verità o dalla norma convenuta dizionario Garzanti

3 IUM20048 lezione 26 marzo 20033 L errore umano riconsiderato Il concetto di errore umano è più complesso di quanto non sembri: non esiste una dicotomia semplice fra errore e comportamento corretto Ogni interazione uomo-macchina dovrebbe essere trattata come una procedura cooperativa, durante la quale possono nascere fraintendimenti da entrambe le parti (D.Norman)

4 IUM20048 lezione 26 marzo 20034

5 IUM20048 lezione 26 marzo 20035 Tolleranza degli errori Un dialogo è error-tolerant nella misura in cui, a dispetto di evidenti errori nellinput, i risultati desiderati possono essere ottenuti senza (o con minime) azioni correttive. ISO 9241 - 10

6 IUM20048 lezione 26 marzo 20036 Classificare gli errori cera la intenzione di agire? cera intenzione nellazione? NO LAPSUS NO AZIONE INTENZIONALE MA ERRATA NO lazione è proceduta come desiderato? SI lazione ha ottenuto il suo scopo? SI AZIONE CORRETTA SI AZIONE INVOLONTARIA NO AZIONE SPONTANEA SI

7 IUM20048 lezione 26 marzo 20037 Progettare per lerrore 1. Comprendere le cause di errore, e minimizzarle (prevenzione) 2. Facilitare la scoperta degli errori che comunque accadono, e facilitarne la correzione 3. Rendere ogni azione reversibile, o rendere difficili le azioni irreversibili (undo) 4. Cambiare atteggiamento verso lerrore: non giusto/sbagliato, ma approssimazioni verso lobbiettivo

8 IUM20048 lezione 26 marzo 20038 Prevenzione dellerrore Amodalità Funzioni obbliganti Avvertimenti e richieste di conferma Default inoffensivi Bypass sicuri

9 IUM20048 lezione 26 marzo 20039 Amodalità Comportamento modale: il sistema si comporta diversamente a seconda dello stato (o modalità) corrente evitare comportamenti modali, oppure evidenziare chiaramente la modalità corrente

10 IUM20048 lezione 26 marzo 200310 cursore modale : indica che sono in modalità matita

11 IUM20048 lezione 26 marzo 200311 Funzioni obbliganti Progettare le varie funzioni in modo da rendere impossibili le azioni non lecite nel contesto corrente Esempio: La portiera dellauto può essere chiusa solo con la chiave, non con la sicura… … in tal modo è impossibile restare chiusi fuori per errore

12 IUM20048 lezione 26 marzo 200312 Azioni prive di senso nel contesto corrente sono disattivate

13 IUM20048 lezione 26 marzo 200313 Avvertimenti e richieste di conferma Livelli di allerta: Tieni presente che… E proprio questo che vuoi? Fermo!

14 IUM20048 lezione 26 marzo 200314 Note alert box (Livello 1) Caution alert box (Livello 2) Stop alert box (Livello 3)

15 IUM20048 lezione 26 marzo 200315 Richieste di conferma Chiedere sempre conferma prima di effettuare azioni irreversibili o comunque pericolose… … ma senza esagerare! DANNAZIONE, SI !

16 IUM20048 lezione 26 marzo 200316 Da: AKMail

17 IUM20048 lezione 26 marzo 200317 Da: Microsoft Access 95

18 IUM20048 lezione 26 marzo 200318 Ed ora?

19 IUM20048 lezione 26 marzo 200319

20 IUM20048 lezione 26 marzo 200320 Default Usare per quanto è possibile default inoffensivi

21 IUM20048 lezione 26 marzo 200321 Bypass sicuri Suggerire unazione sicura in alternativa ad azioni che possono condurre ad errori

22 IUM20048 lezione 26 marzo 200322 BYPASS SICURO

23 IUM20048 lezione 26 marzo 200323 In caso di errore... 1. ALERT qualcosa non va 2. IDENTIFY è questo che non va 3. DIRECT ora devi fare questo

24 IUM20048 lezione 26 marzo 200324 ALERT IDENTIFY DIRECT

25 IUM20048 lezione 26 marzo 200325

26 IUM20048 lezione 26 marzo 200326 ALERT IDENTIFY

27 IUM20048 lezione 26 marzo 200327

28 IUM20048 lezione 26 marzo 200328

29 IUM20048 lezione 26 marzo 200329

30 IUM20048 lezione 26 marzo 200330 Granularità dei messaggi di errore Un messaggio di errore alla volta, appena ho commesso lerrore…. … oppure tutti i messaggi di errore insieme, alla fine?

31 IUM20048 lezione 26 marzo 200331

32 IUM20048 lezione 26 marzo 200332

33 IUM20048 lezione 26 marzo 200333

34 IUM20048 lezione 26 marzo 200334 Cambiare atteggiamento verso l errore Il progettista non deve concepire una semplice dicotomia fra errori e comporta- mento corretto: al contrario, tutta linterazione uomo-macchina deve essere trattata come una procedura cooperativa fra i due, dove gli equivoci possono nascere da ambo le parti. Donald Norman

35 IUM20048 lezione 26 marzo 200335

36 IUM20048 lezione 26 marzo 200336

37 IUM20048 lezione 26 marzo 200337

38 IUM20048 lezione 26 marzo 200338

39 IUM20048 lezione 26 marzo 200339

40 IUM20048 lezione 26 marzo 200340 non tutte le azioni sono disfabili. Alcuni comandi sono molto difficili da recuperare : es nelle e-mail: dopo una SEND per l'invio della posta elettronica, l'utente non può più recuperare lo stato precedente a tale comando i comandi tempo-dipendenti, in particolare, hanno SIDE EFFECTS: non si può tornare indietro nel tempo!

41 IUM20048 lezione 26 marzo 200341 Undo Lutente deve sempre, per quanto è possibile, poter ripristinare lo stato precedente… … e così via, allindietro, senza limitazioni - non sempre si individuano gli errori immediatamente - il numero di funzioni di UNDO possibili deve essere almeno pari a quello dei comandi presenti.

42 IUM20048 lezione 26 marzo 200342 Esempi di gestione di UNDO Flip undo Multiple step Checkpoint Registrazione traccia Il copione (ACR Archer, Conway, Schneider, 1984)

43 IUM20048 lezione 26 marzo 200343 Flip undo Un FLIP UNDO ha senso se "tutti i comandi devono essere trattati in maniera uguale". Tutti i comandi devono essere recuperati compreso l'UNDO stesso. FLIP-UNDO: l'ultimo UNDO annulla l'effetto dell'UNDO precedentemente effettuato. La ragione perché UNDO non venga trattato uniformemente è dovuta a scelte fatte dai progettisti che ritengono un UNDO relativo solamente all'ultimo comando immesso.

44 IUM20048 lezione 26 marzo 200344 Multiple step I meccanismi di UNDO del tipo MULTIPLE-STEP (al contrario del FLIP-UNDO) consentono di eseguire UNDO un numero indefinito di volte, o almeno fino a che il sistema ha informazioni disponibili sullinterazione passata. Per poter correggere eventuali errori nellutilizzo di UNDO viene inserito il comando REDO che consente di ripristinare lazione annullata dallultimo comando di UNDO.

45 IUM20048 lezione 26 marzo 200345 CHECKPOINT Alcuni sistemi utilizzano CHECKPOINT o VIGILI che consentono allutente di riportare il sistema in una condizione precedente. Il numero di checkpoint e la scelta del momento in cui salvare un nuovo stato dipende molto dal tipo di sistema e dalle scelte dei progettisti. Esempio di un programma di elaborazione delle immagini: - si può pensare di salvare solo la situazione iniziale dellimmagine in questione, - oppure di fare un checkpoint prima di eseguire una azione non disfabile (ad esempio lapplicazione di un filtro non reversibile), - oppure ancora di eseguire un checkpoint dopo un intervallo di tempo prestabilito.

46 IUM20048 lezione 26 marzo 200346 Registrazione traccia La traccia è una sequenza di comandi registrati nel modo in cui sono stati emessi - possiamo compilare tale sequenza e fare degli UNDO su alcune componenti della sequenza. Per una interfaccia grafica la traccia può essere di tipo testuale o grafico a seconda degli oggetti considerati. Incrementa la sicurezza: se il sistema cade in crash, la sequenza registrata viene rieseguita ottenendo gli stessi risultati raggiunti. Ovviamente l'ultimo comando, che ha provocato il crash, non deve essere eseguito.

47 IUM20048 lezione 26 marzo 200347 Copione ACR Archer, Conway e Schneider nel 1984, suggerirono un modello di copione che considera l'utente come un "costruttore/autore del copione" ed il sistema come un "interprete della scrittura. L'utente esegue dei comandi, ogni azione viene scritta nel copione, ed in seguito viene sottoposta per l'esecuzione. La sequenza di comandi può essere manipolabile.

48 IUM20048 lezione 26 marzo 200348 Esempio di copione L'utente sottopone il comando c 1 poi c 2 poi c 3 ; l'utente ricorderà che la sua storia dell'interazione è: "... c 1 c 2 c 3. -se si esegue il comando c 3 e poi lo si vuole togliere, si potrà utilizzare un UNDO e si ritornerà "come se" la sequenza fosse c 1 c 2 (la sequenza reale è: c 1 c 2 c 3 undo).

49 IUM20048 lezione 26 marzo 200349 Storia: nota completa di quello che l'utente ha fatto (c1 c2 c3 undo). Copione: nota di interazione che il sistema tratta come la sua storia effettiva. La scrittura dipende dal sistema e può essere più semplice o più complessa della Storia. Stato: l'equivalenza classificata di scritture (es: c1 c2 c3 undo è equivalente ad undo c2; la storia ed il copione sono diversi ma lo stato finale è lo stesso). L'interfaccia ruota tra l'editing e l'interpretazione del copione: il primo generalmente termina con ENTER mentre il secondo termina quando il controllo ritorna all'utente.

50 IUM20048 lezione 26 marzo 200350 UNDO Simbolico e Manipolativo L'UNDO può essere simbolico: l'utente specifica un UNDO di molti comandi; oppure manipolativo: viene manipolato il copione Si può mostrare il nome del comando fino al quale l'utente vuole fare un UNDO oppure mostrare contemporaneamente tutto l'iter dei comandi immessi. Si può mostrare una versione della sessione sia per l'UNDO (indietro di un comando) che per il REDO (avanti di un comando).

51 IUM20048 lezione 26 marzo 200351 Difetti Il modello del copione proposto da A.C.S. non è adeguato per un completo utilizzo di UNDO/REDO. Consideriamo il copione: c 1 c 2 c 3 facciamo un UNDO dei comandi c 3 e c 2 (salvati in uno stack tampone atto per eventuali REDO) e quindi sottoponiamo i comandi c 4 e REDO c 2 c 3 il risultato è un copione come:c 1 c 4 c 2 c 3 Si supponga, ora, di voler tornare a c 1 c 2. Il modello ACS consentirà di fare i passi descritti nella seguente figura :

52 IUM20048 lezione 26 marzo 200352 Lo stato precedente c 1 c 2 non può essere raggiunto mediante UNDO e REDO. Il modello ACS non soddisfa queste caratteristiche in quanto propone un copione "lineare".

53 IUM20048 lezione 26 marzo 200353 NOTA: Undo Skip Redo Il problema è stato risolto nel 1984 da Vitter introducendo le funzioni UNDO, SKIP e REDO (USR). Un particolare comando può essere rieseguito in tempi diversi. I comandi sono visti come nodi di un grafo e la successione dei comandi viene registrata nei percorsi del grafo.

54 IUM20048 lezione 26 marzo 200354 Vitter utilizza un grafo aciclico diretto (DAG). Il copione di Vitter risulta essere un DAG che rappresenta solamente il percorso dei comandi successivi che vogliono essere eseguiti e non la storia completa. L'utente sceglie quale figlio aggiungere ad un nodo padre, evitando di immagazzinare tutte le scelte possibili. Si può mostrare che il modello di Vitter può risolvere lincongruenza c1c2 precedente (http://cesare.dsi.uniroma1.it/~ium/luc6.htm).

55 IUM20048 lezione 26 marzo 200355 Proprietà di Undo Skip Redo Le scelte offerte all'utente sfruttano le modalità inerziali: il redo di solito è in relazione all'ultimo undo eseguito. Effettuare n undo ed in seguito n redos porterà il sistema allo stesso stato. Gli utenti possono ovviare facilmente ai propri errori. I redo non scompaiono dal copione (altra proprietà inerziale). Il copione non si restinge mai.


Scaricare ppt "IUM20048 lezione 26 marzo 20031 LERRORE UMANO. IUM20048 lezione 26 marzo 20032 Errore Atto, effetto di allontanarsi dalla verità o dalla norma convenuta."

Presentazioni simili


Annunci Google