All’indomani dell’AgileCamp2009 e delle belle e costruttive discussioni intercorse fra i partecipanti riguardo le sinergie possibili fra sviluppatori e specialisti di interaction design nello sviluppo agile, ho deciso di inaugurare una nuova categoria di post dedicata ai ruoli nell’Extreme Programming proprio con un post – indovina un po! – sugli interaction designer. continue reading »
Il 17 gennaio 2009 si terrà l’AgileCamp2009, il primo barcamp italiano dedicato all’incontro fra progettazione e sviluppo agile!
Temi a me molto cari come lo user centred design, la definizione del valore del prodotto e – ovviamente – i metodi agili saranno discussi in un’unica sede, contribuendo forse al consolidamento di una community italiana che prevedo crescerà tumultuosamente intorno a questi concetti per tutto il 2009.
Tempo fa promisi una risposta ad un post di Alberto in cui lui esponeva parte di alcune nostre elucubrazioni sulla differenza fra ciò che vale per l’utente e ciò che vale per il cliente. Finalmente ho avuto il tempo di… disegnare i diagrammi!
In buona sostanza il diagramma che preferisco contrapporre a quello da lui pubblicato è questo
Peraltro lo stesso Alberto in un altro suo post discute anche questo approccio.
Nelle metodologie agili, ed in particolare in Extreme Programming, si prende come obiettivo il valore realizzato per il cliente – inteso come colui che possiede il sistema finale e ne finanzia lo sviluppo, mentre nella disciplina dello user centred design i bisogni, le volontà e le limitazioni dell’utente finale sono poste al centro dell’intero processo di progettazione.
Mentre si potrebbe pensare in un primo momento che gli interessi dell’utente siano sempre coincidenti con gli interessi del cliente, che immaginiamo tutti puntare ad ottenere un pubblico soddisfatto, un’analisi più approfondita mostra immediatamente che le cose non sono così semplici. Esistono cioè casi in cui il cliente ha degli obiettivi diametralmente contrapposti alle esigenze dell’utenza del sistema. I sistemi di e-commerce sono spesso contraddistinti da questa contrapposizione, mentre le community online vedono un maggiore allineamento fra interessi del cliente e dell’utente.
Nel diagramma sopra quindi, benché il valore per l’utente di una feature non sia mai trascurabile per calcolarne il valore per il cliente, abbiamo una rappresentazione troppo semplicistica della realtà che, effettivamente, viene a galla in fase di assegnazione delle priorità delle user story.
Direi quindi che questo diagramma possa essere considerato più fedele al vero
Come si vede il valore utente, se considerato, deve esserlo in maniera in linea di principio indipendente dal valore per il cliente o cmq in correlazione controllata ovvero consapevole.
Quanto le due metriche di valore siano correlate tra loro è quindi dato, in questa rappresentazione, dall’angolo formato dai due piani individuati: il primo che pone in relazione le priorità delle user story con il valore per il cliente, il secondo che pone in relazione le priorità delle user story con il valore per l’utente. Minore l’angolo formato dai due piani, maggiore la concordanza tra le due assegnazioni di valore e la conseguente corrispondenza di assegnazione di priorità.
Quindi, in relazione ulteriore, possiamo porre la coincidenza di interessi tra clienti e utenti
e arrivare ad una morale conclusiva: se il design delle applicazioni ancora soffre troppo spesso di rigidità di processo, mentre le metodologie agili non forniscono veri e propri strumenti per la progettazione macroscopica delle stesse applicazioni, il vero sforzo da compiere nei prossimi anni è quello di far convergere i due mondi, individuando metodologie che sappiano da una parte accogliere il cambiamento senza waterfalliane eredità, dall’altra produrre e sostenere la vision di ogni progetto.
Come a dire: ok, con le user story sappiamo cosa farci, ma una metodologia di spessore per scriverle non sarebbe bello averla? Con Luca lo scambio a tal proposito è nel vivo…