Sviluppo Agile e User-Centered Design felicemente sposi? - progettareperlepersone - tecniche e strumenti dello user-centred design
Immagine  
"
lo user-centred design non persegue soluzioni totalizzanti e definitive, bensì un continuo miglioramento che si basa sui dati forniti dall’osservazione
"
 
\\ Home Page : Articolo
Sviluppo Agile e User-Centered Design felicemente sposi?
Di stefano (del 26/11/2008 @ 09:47:03, in Approfondimenti, linkato 13987 volte)

L’argomento del titolo, ovvero come sposare lo sviluppo Agile e lo User-Centered Design, è stato ultimamente al centro dei miei interessi. Dopo aver letto innumerevoli articoli su blog e riviste, ho frequentato, per approfondire, il corso di specializzazione Agile Development and Usability del Nielsen Norman Group ad Amsterdam, letto il loro report sull’argomento e ascoltato l’intervento di Alberto Mucignat al RomeCamp. Quelle che seguono sono le conclusioni a cui sono arrivato, alla luce anche delle mie esperienze, che in genere sono con progetti della durata massima di due o tre mesi e solo in ambito web.

Per chi non sappia nulla dello sviluppo Agile, mi limiterò a una descrizione sintetica degli elementi più importanti. Agile è un processo di sviluppo che sostituisce il classico waterfall lifecycle nella produzione del software. In estrema sintesi Agile spezzetta in più cicli quello che di solito viene fatto in un unico ciclo. Quindi le fasi di Analisi, Progettazione, Programmazione e QA Testing e Rilascio vengono svolte solo per un piccolo gruppo di funzionalità e ripetute per i cicli che seguono, su altri piccoli gruppi di funzionalità. Ognuna di queste fasi, quasi sempre di carattere incrementale, è, nella terminologia Agile (metodo SCRUM), chiamato sprint.

Lo sviluppo Agile è nato nell’ambito della produzione del software e questo, a mio parere, lo rende suscettibile di adattamenti per essere proficuamente utilizzato in ambito web. Inoltre, dei principi alla base dell’Agile Manifesto pubblicato nel 2001, metto in evidenza quello che ritengo il più importante, sostituendo software con user experience: “Our highest priority is to satisfy the customer through early and continuous delivery of valuable experience“. Questo, aggiungo io, con lo scopo di permettere al committente di raggiungere i suoi obiettivi, informativi o commerciali che siano.

Veniamo alla mia visione su come sposare lo sviluppo Agile e lo UCD. Lo farò dividendo il processo in fasi, analizzando quelle essenziali.

Fase A - Ricerca e analisi
La fase di Ricerca e analisi è fondamentale per la buona riuscita di un progetto web. Oltre a definire gli obiettivi aziendali e gli scopi del sito web, si pianificano le attività di ricerca per acquisire informazioni sui suoi fruitori, potenziali o reali che siano. A tal fine si effettuano interviste all’interno dell’azienda, si analizza la concorrenza, si esamina il sito web già on line (analisi dei log) e si effettuano attività di ricerca etnografica (di qualunque tipo, dalle interviste informali nelle fiere ai test di usabilità sul campo). Al termine di queste attività il committente deve tassativamente approvare un documento dove sono riportati gli obiettivi del progetto.

Fase B - Sprint 0: sviluppo dei personaggi, degli scenari e delle stories
Servendoci dei risultati delle ricerche possiamo, nello sprint 0, definire i personaggi e gli scenari che ci porteranno a individuare le principali stories (altro termine dello sviluppo Agile). Una delle criticità dello sviluppo Agile è la gestione della priorità delle stories. Con l’uso dei personaggi e degli scenari questo aspetto è affrontato a monte con la segmentazione e quindi le stories più significative riguardano i personaggi primari. Durante lo sprint 0 il team di programmazione, o almeno un suo rappresentante, deve essere coinvolto nello sviluppo dei personaggi e degli scenari. Il committente, se coinvolto, parteciperà al loro sviluppo e, se non coinvolto, dovrà condividere la loro scelta. Sempre in questo sprint si avvieranno le procedure per il reperimento dei partecipanti al card sorting e/o alla prototipazione partecipata e/o ai test di usabilità, in modo da poterli convocare con un breve preavviso. Anche in questo caso i personaggi torneranno utili per la preparazione dello screener.

Fase C - Sprint 1: architettura informativa, task, wireframe e interfaccia grafica
A mio parere, le stories più importanti dello sprint 1 sono quelle che portano allo sviluppo dell’architettura informativa generale, a individuare i task principali, alla progettazione dei wireframe generali e al progetto grafico dell’interfaccia. Gli strumenti UCD a supporto di queste attività sono il card sorting, la prototipazione partecipata e il cognitive walkthrough con i personaggi. L’eventuale coinvolgimento di persone nella progettazione tornerà utile alla raccolta di informazioni per rifinire e perfezionare i personaggi e gli scenari. In questo sprint il team di programmazione procederà alla raccolta di informazioni sullo stato dell’arte delle tecnologie in uso nel dominio specifico (analisi dei siti concorrenti) e alla definizione di specifiche tecniche compatibili con le caratteristiche dei personaggi. Chiaramente il committente sarà partecipe delle decisioni prese e dovrà condividerle.

Fase D - Dallo sprint 2 allo sprint (N): produzione
Nella fase di produzione vengono individuate stories che, di volta in volta, portano allo sviluppo di determinate sezioni del sito web oppure a determinati task dell’applicativo web (una procedura di registrazione, per esempio). Per essere subito produttivi, conviene arrivare allo sprint 2 con almeno 1 o 2 stories già progettate, in modo da procedere subito alla fase di programmazione. Parallelamente altre stories saranno progettate per essere pronte nello sprint successivo. Una certa asincronicità, quindi, è essenziale per procedere spediti. Le attività UCD per la verifica delle scelte fatte, sono i test di usabilità (tradizionali o RITE, Rapid Iterative Testing and Evaluation) con prototipi più o meno evoluti e il cognitive walkthrough con i personaggi. Al rilascio di una sezione del sito web o di una o più funzionalità dell’applicativo web, il committente valuterà e fornirà il proprio feedback. Per questa ragione si dovranno prevedere alcuni sprint per gli eventuali aggiustamenti.

Fase E - Sprint (N)+1: pubblicazione
Le attività di questo sprint sono essenzialmente di revisione e controllo. Un’attenta correzione dei testi, il controllo dei messaggi di errore e un debug finale, garantiscono al prodotto una maggiore qualità. Il sito web potrà essere pubblicato completo oppure, se il committente lo richiede, si procederà con la pubblicazione di una parte significativa, rimandando a sprint successivi il suo completamento.

Fase F - Sprint di ottimizzazione e modifica
Se il progetto lo prevede si potranno identificare degli sprint in cui inserire le attività di ricerca più idonee per valutare l’efficacia, l’efficenza e la soddisfazione d’uso. Quelle più comuni in questa fase sono l’analisi dei log, i questionari e le interviste. Chiaramente, a ogni sprint di ricerca sarà abbinato uno sprint per l’implementazione delle modifiche.

Conclusioni
Appare chiaro, da quanto ho scritto, che per me lo sviluppo Agile modellato intorno allo User-Centered Design è un processo ben strutturato, che deve essere guidato con mano ferma per rispettare tempi e costi. Solo in questo modo il matrimonio risulterà duraturo e felice.

Nota finale
Al temine del suo intervento al RomeCamp, Alberto Mucignat mi diceva che lo sviluppo Agile ti permette di rispondere velocemente a cambiamenti di rotta, anche significativi, da parte del committente. Su questo sono d’accordo, ma voglio sottolineare, che in questo caso, la stessa agilità è richiesta a lui nell’adeguare il budget e far si che il progetto mantenga i giusti margini di profitto.
Articolo Articolo  Storico Storico Stampa Stampa  Condividi Condividi
I commenti sono disabilitati.

< ottobre 2024 >
L
M
M
G
V
S
D
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
     
             


Titolo
Analisi (12)
Approfondimenti (5)
Bibliografia (1)
Corso UCD (8)
Eventi (3)
Idee (2)
Interviste (1)
Presentazione (1)
Recensioni (3)
Risorse (14)
Segnalazioni (52)

Catalogati per mese:
Febbraio 2007
Marzo 2007
Aprile 2007
Maggio 2007
Giugno 2007
Luglio 2007
Agosto 2007
Settembre 2007
Ottobre 2007
Novembre 2007
Dicembre 2007
Gennaio 2008
Febbraio 2008
Marzo 2008
Aprile 2008
Maggio 2008
Giugno 2008
Luglio 2008
Agosto 2008
Settembre 2008
Ottobre 2008
Novembre 2008
Dicembre 2008
Gennaio 2009
Febbraio 2009
Marzo 2009
Aprile 2009
Maggio 2009
Giugno 2009
Luglio 2009
Agosto 2009
Settembre 2009
Ottobre 2009
Novembre 2009
Dicembre 2009
Gennaio 2010
Febbraio 2010
Marzo 2010
Aprile 2010
Maggio 2010
Giugno 2010
Luglio 2010
Agosto 2010
Settembre 2010
Ottobre 2010
Novembre 2010
Dicembre 2010
Gennaio 2011
Febbraio 2011
Marzo 2011
Aprile 2011
Maggio 2011
Giugno 2011
Luglio 2011
Agosto 2011
Settembre 2011
Ottobre 2011
Novembre 2011
Dicembre 2011
Gennaio 2012
Febbraio 2012
Marzo 2012
Aprile 2012
Maggio 2012
Giugno 2012
Luglio 2012
Agosto 2012
Settembre 2012
Ottobre 2012
Novembre 2012
Dicembre 2012
Gennaio 2013
Febbraio 2013
Marzo 2013
Aprile 2013
Maggio 2013
Giugno 2013
Luglio 2013
Agosto 2013
Settembre 2013
Ottobre 2013
Novembre 2013
Dicembre 2013
Gennaio 2014
Febbraio 2014
Marzo 2014
Aprile 2014
Maggio 2014
Giugno 2014
Luglio 2014
Agosto 2014
Settembre 2014
Ottobre 2014
Novembre 2014
Dicembre 2014
Gennaio 2015
Febbraio 2015
Marzo 2015
Aprile 2015
Maggio 2015
Giugno 2015
Luglio 2015
Agosto 2015
Settembre 2015
Ottobre 2015
Novembre 2015
Dicembre 2015
Gennaio 2016
Febbraio 2016
Marzo 2016
Aprile 2016
Maggio 2016
Giugno 2016
Luglio 2016
Agosto 2016
Settembre 2016
Ottobre 2016
Novembre 2016
Dicembre 2016
Gennaio 2017
Febbraio 2017
Marzo 2017
Aprile 2017
Maggio 2017
Giugno 2017
Luglio 2017
Agosto 2017
Settembre 2017
Ottobre 2017
Novembre 2017
Dicembre 2017
Gennaio 2018
Febbraio 2018
Marzo 2018
Aprile 2018
Maggio 2018
Giugno 2018
Luglio 2018
Agosto 2018
Settembre 2018
Ottobre 2018
Novembre 2018
Dicembre 2018
Gennaio 2019
Febbraio 2019
Marzo 2019
Aprile 2019
Maggio 2019
Giugno 2019
Luglio 2019
Agosto 2019
Settembre 2019
Ottobre 2019
Novembre 2019
Dicembre 2019
Gennaio 2020
Febbraio 2020
Marzo 2020
Aprile 2020
Maggio 2020
Giugno 2020
Luglio 2020
Agosto 2020
Settembre 2020
Ottobre 2020
Novembre 2020
Dicembre 2020
Gennaio 2021
Febbraio 2021
Marzo 2021
Aprile 2021
Maggio 2021
Giugno 2021
Luglio 2021
Agosto 2021
Settembre 2021
Ottobre 2021
Novembre 2021
Dicembre 2021
Gennaio 2022
Febbraio 2022
Marzo 2022
Aprile 2022
Maggio 2022
Giugno 2022
Luglio 2022
Agosto 2022
Settembre 2022
Ottobre 2022
Novembre 2022
Dicembre 2022
Gennaio 2023
Febbraio 2023
Marzo 2023
Aprile 2023
Maggio 2023
Giugno 2023
Luglio 2023
Agosto 2023
Settembre 2023
Ottobre 2023
Novembre 2023
Dicembre 2023
Gennaio 2024
Febbraio 2024
Marzo 2024
Aprile 2024
Maggio 2024
Giugno 2024
Luglio 2024
Agosto 2024
Settembre 2024
Ottobre 2024

Ultimi commenti:
Anche io ho sempre c...
11/05/2011 @ 11:55:59
Di Stefano Dominici
Mi trovo in sintonia...
10/05/2011 @ 15:04:56
Di Andrea Picchi
Io uso sempre InPriv...
09/05/2011 @ 17:30:40
Di Stefano Dominici


Titolo


04/10/2024 @ 17:27:56
script eseguito in 31 ms