24
Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezio ne 6 1 System Engineering: individuare le giuste funzionalità task e sotto-task devono essere realizzati: TASK ANALYSIS requenti, occasionali, eccezionali, di recovery onalità inadeguate --> sottoutilizzo del sistema anche se l’ è ben disegnata onalità eccessive --> difficoltà di implementazione, manuten apprendimento, uso abilità: un solo comportamento scorretto o inatteso riduce notevolmente la “fiducia” che l’utente ha del sis

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Embed Size (px)

Citation preview

Page 1: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 1

System Engineering: individuare le giuste funzionalità

• Quali task e sotto-task devono essere realizzati: TASK ANALYSIS

• Task frequenti, occasionali, eccezionali, di recovery

• Funzionalità inadeguate --> sottoutilizzo del sistema anche se l’interfaccia

è ben disegnata

• Funzionalità eccessive --> difficoltà di implementazione, manutenzione,

apprendimento, uso

• Affidabilità: un solo comportamento scorretto o inatteso riduce

notevolmente la “fiducia” che l’utente ha del sistema

Page 2: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 2

Obiettivi della progettazione di interfacce (1)

• Cambiare la comunità degli utenti e/o le loro necessità porta a modifiche notevoli dell’interfaccia:

la tipologia di utenti e l’insieme di task vanno determinate accuratamente

Page 3: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 3

Obiettivi della progettazione di interfacce (2)

• Una volta fissata la comunità di utenti e le funzionalità, la “bontà” del sistema dipende da vari fattori misurabili:

1) Tempo di apprendimento: quanto ci mette in media un utente tipico a imparare?

2) Velocità: quanto tempo ci vuole ad eseguire una serie di operazioni tipiche?

3) Quantità di errori: quanti errori commettono mediamente gli utenti?

4) Capacità di ricordare:quanto un utente ricorda dopo un’ora, un giorno, un mese?

5) Soddisfazione: quanto piacciono all’utente i vari aspetti del sistema?

Page 4: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 4

Successo nella progettazione (1)

• Fattori di successo contrastanti: uno o alcuni di essi potrebbero essere di maggior importanza rispetto agli altri

• I documenti di specifica devono indicare quali sono i fattori più importanti

• I progettisti devono fare scelte adeguate e comunicarle ai committenti chiaramente

Page 5: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 5

Successo nella progettazione (2)

•Prototyping e feedback (necessità di strumenti adeguati ed efficienti)

• Manuale utente e riferimenti tecnici vanno scritti prima della implementazione

• Strumenti di sviluppo software per la implementazione

• Il test finale certifica l’accettazione da parte del committente

Page 6: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 6

Il fattore umano nella progettazione di software interattivo (1)

• Sistemi life-critical: Controllo del traffico aereo, apparecchiature mediche,

gestione delle chiamate ai vigili del fuoco, etc.

- Ingenti investimenti per ottenere alta affidabilità ed efficacia

- Lunghi periodi di apprendimento per limitare gli errori nell’uso

- La soddisfazione soggettiva dell’utente è meno importante

- Uso frequente da parte di utenti esperti: facilità di ricordare

Page 7: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 7

Il fattore umano nella progettazione di software interattivo (2)

•Applicazioni commerciali e industriali: Sistemi bancari, gestione di

personale, prenotazioni turistiche, gestione degli ordini, etc.

- I costi sono un fattore critico, spesso a scapito di altri fattori

- Lunghi periodi di apprendimento sono da evitare

- La soddisfazione soggettiva dell’utente è alquanto importante

- Uso frequente da parte di utenti esperti: facilità di ricordare

- L’efficienza del software va bilanciata con i costi

- La velocità ad eseguire i task da parte degli utenti è fondamentale

Page 8: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 8

Il fattore umano nella progettazione di software interattivo (3)

• Applicazioni di uso personale: Software personale per ufficio, casa,

divertimento

- Costi modesti per singola licenza, ma vasto pubblico

- Periodi di apprendimento molto brevi

- La quantità di errori nell’uso deve essere controllata

- La soddisfazione soggettiva dell’utente è estremamente importante

- Uso da parte di utenti con skill molto differenti e “in evoluzione”

Page 9: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 9

Il fattore umano nella progettazione di software interattivo (4)

Sistemi esplorativi, creativi e collaborativi: Browser web, enciclopedie

multimediali, supporti alle decisioni, sistemi per il design,

composizione di musica, audio/video conferenza, etc.

- Frequenza d’uso molto variabile

- Utenti ben motivati ma anche molto esigenti

- Uso da parte di utenti poco esperti

- Difficoltà di individuare le funzionalità tipiche

- La velocità ad eseguire i task con la manipolazione diretta

Page 10: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 10

Affrontare la diversità umana (1)

• Le capacità percettive, cognitive, motorie degli individui sono molto

variabili, così sono di conseguenza variabili le loro esigenze

• Utente medio: trovare compromessi o realizzare versioni multiple del

sistema

• Regolazioni individuali - ergonomicità - norme codificate (es. ISO 9001)

• Differenti capacità di interpretare stimoli sensoriali e compiere azioni

complesse:

- Memoria a breve termine - Memoria a lungo termine

- Attenzione - Ricerca e “colpo d’occhio”

- Cognizione del tempo - Soluzione di problemi

Page 11: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 11

Affrontare la diversità umana (2)

•Fattori che influenzano le prestazioni percettive e motorie

- Vigilanza - Fatica

- Carico mentale - Conoscenza dei risultati

- Monotonia e annoiamento - Privazioni (es., sonno)

- Ansietà e paura - Isolamento

- Età - Uso di droghe e alcool

- Bioritmo

•Personalità differenti si riflettono in differenti approcci al computer:

diffidenza o timore <----> interesse e piacere

Page 12: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 12

Affrontare la diversità umana (3)

•Preferenze sullo stile dell’interazione:

presentazioni grafiche <----> tabulazione dei datipresentazioni fitte <----> presentazioni sparselavoro step-by-step <----> lavoro condensato

• Mancanza di semplici tassonomie sui tipi di personalità degli utenti: uso di indicatori quali MBTI (Myers-Briggs Type Indicator)

estroverso <----> introversometodico <----> intuitivopercettivo <----> giudiziososensibile <----> distaccato

Page 13: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 13

Affrontare la diversità umana (4)

• Differenze culturali, etniche, razziali, linguistiche: - caratteri, numeri, simboli - ordine di lettura - formati per date e orari - formati per numeri e importi - pesi e misure - numeri telefonici e indirizzi - nomi e titoli - identità personale, nazionalità, etc. - maiuscole e punteggiatura - sequenze ordinate - scelte di icone, colori, etc. - plurali, spelling, sillabazione - etichetta, garbo, tono, formalità, metafore

• Utenti disabili in diversi modi:- motorietà - vista- udito - articolazione della parola- tatto e uso delle dita - utenti anziani

Page 14: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 14

Osservazioni etnografiche

• Il progettista di interfacce utenti studia i comportamenti individuali degli utenti e il contesto organizzativo

• Osservare le interfacce in uso per migliorarle

• PROBLEMI: interpretare correttamente le osservazioni, evitare di interferire con i normali processi, cogliere gli aspetti importanti

• Seguire un processo etnografico ben validato riduce il rischio di errori

• Preparare la valutazione, effettuare lo studio del campo, analizzare i dati, relazionare sui risultati

Page 15: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 15

Linee guida per effettuare osservazioni etnografiche (1)Preparazione

• Capire le politiche organizzative e la cultura lavorativa• Familiarizzare con il sistema e la sua storia• Porre obiettivi iniziali e preparare le domande• Ottenere gli accessi e i permessi necessari per osservare e intervistare

Studio del campo• Stabilire i rapporti con i dirigenti e gli utenti• Osservare o intervistare gli utenti al lavoro, raccogliendo i dati• Seguire ogni traccia che emerge dalla visita• Registrare la visita

Page 16: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 16

Linee guida per effettuare osservazioni etnografiche (2)

Analisi• Inserire i dati in database alfanumerici e multimediali• Quantificare i dati e estrarre statistiche• Ridurre e interpretare i dati• Raffinare gli obiettivi e il processo usato

Stesura dei rapporti• Considerare molteplici uditori e obiettivi• Preparare i rapporti e presentare i risultati

Page 17: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 17

Gli obiettivi del progettista di software interattivo

• Influenzare la ricerca accademica ed industriale

• Fornire metodologie, strumenti, tecniche per l’implementazione di sistemi

• Aumentare la consapevolezza delle esigenze del pubblico di utenti

Page 18: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 18

Influenzare la ricerca accademica ed industriale

Le nuove proposte di tecniche, linguaggi di programmazione, strutture dati,

dispositivi hardware, dovranno tenere sempre di più in conto le capacità

cognitive degli esseri umani con l’obiettivo di:

- ridurre l’ansia e la paura nell’usare i computer

- guidare l’evoluzione verso usi complessi in modo piacevole

- realizzare strumenti automatici per implementare sistemi interattivi

- proporre nuove forme di interazione e di manipolazione diretta

- progettare nuovi dispositivi di interazione

- fornire assistenza on-line

- realizzare filtri per l’esplorazione dell’informazione

Page 19: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 19

Fornire metodologie, strumenti, tecniche per l’implementazione di sistemi

- strumenti automatici per costruire sistemi software

- documenti di specifica

- facilitare lo sviluppo e supportare la consistenza con le specifiche

- semplificare evoluzione e raffinamento

- prototipazione rapida

- studiare l’usabilità attraverso testing

- usare i risultati del testing per il raffinamento (feedback)

- assistenza e supporto on-line come fonte di conoscenza dei problemi

Page 20: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 20

Aumentare la consapevolezza delle esigenze del pubblico di utenti

• molti utenti sono ancora a disagio con il computer

• scelte di progetto sbagliate possono causare una sensazione di “stupidità”:

evitare comandi troppo complicati, messaggi di errore ostili o vaghi,

sequenze di operazioni tortuose e poco familiari

• un sistema ben progettato deve consentire all’utente di esprimere le

proprie ansie e insoddisfazioni nei confronti del sistema stesso in modo

che il progettista possa tenerne conto

• il software insoddisfacente diventerà rapidamente superato e fuori mercato

Page 21: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 21

Gestire i processi della progettazione di interfacce

• Progettazione organizzativa per supportare l’usabilità

• I tre pilastri della progettazione

• Metodologie di sviluppo

• Osservazioni etnografiche

• Progettazione partecipativa

• Sviluppo dello scenario

• Relazioni su impatto sociale per revisione precoce del progetto

• Questioni legali

Page 22: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 22

Progettazione organizzativa per supportare l’usabilità (1)• L’usabilità sta diventando un fattore critico per il successo dei prodotti

software

• Laboratori di usabilità e test in fase di sviluppo

• Nuove figure professionali ed organizzative nelle strutture societarie e

nei gruppi di progetto: vice-presidenti per l’usabilità, architetti di

user-interface, ingegneri dell’usabilità, etc.

• Gruppi di lavoro centralizzati sui fattori umani

Page 23: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 23

Progettazione organizzativa per supportare l’usabilità (2)

• Figure di consulenti esperti di arti grafiche, scrittura di libri didattici,

animazione, psicologia, sociologia, etnografia

• Documentazione delle linee guida

• Benefici dell’usabilità: riduzione dei costi, aumento dei ricavi, aumento

della produttività

• La progettazione è un processo dinamico e creativo, in cui applicare

disciplina, tecnica, metodi, e misurazione del successo

Page 24: Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 61 System Engineering: individuare le giuste funzionalità Quali task e sotto-task devono essere

Gestione dei Progetti Software 2 (a.a. 2004/05) - Lezione 6 24

I tre pilastri della progettazione

INTERFACCE UTENTI DI SUCCESSO

RICERCA ACCADEMICA

Teorie eMetodi

Algoritmi ePrototipi

EsperimentiControllati

StrumentiSoftware per

interfacce

Documentidi linee guida

Revisionedi esperti e

test di usabilità