L’usabilità dei progetti opensource

Un intervento sul blog di Experientia lamenta, non senza ragione, le problematiche di usabilità di molti progetti opensource. L’occasione per farlo è un comunicato stampa in cui Canonical, lo sponsor commerciale di Ubuntu, cerca consulenti di usabilità per i propri progetti, competenza evidentemente non presente in azienda.

Fino a qualche anno fa potevamo giustificare le lacune in ambito di usabilità e più in generale di user experience del software opensource. Erano progetti nati grazie a team focalizzati sulla progettazione e stesura di codice e usati da una ristretta minoranza di early adopters.

Le aspettative oggi sono diverse. Alcuni prodotti, come Open Office e WordPress, si rivolgono a un pubblico variegato, grazie anche a procedure di installazione semplificate e, nel caso di prodotti web, a metodi di fruizione ASP.

In questo contesto le problematiche tecniche, seppur importanti, passano in secondo piano. Il software deve essere facile da utilizzare, ma ancora di più deve proporre interfacce coerenti. Risultati che non si raggiungono per caso o con un po’ di buon senso, ma con l’introduzione di specifiche competenze professionali. Competenze che difficilmente si prendono in prestito.

Mi stupisce perciò l’iniziativa del team di WordPress che apre due questionari pubblici su questioni legate alla nuova interfaccia di amministrazione:

  • l’attuale interfaccia è il risultato di una già recente riprogettazione che ha richiesto agli utenti un nuovo approccio all’uso del software. Frequenti variazioni, per quanto si propongano di migliorare il lavoro di tutti, sono destabilizzanti;
  • ridurre la progettazione di una interfaccia grafica a un questionario sminuisce l’importanza e il ruolo di questa disciplina, anche quando gran parte delle decisioni sembrano prese;
  • il questionario si prefigge di raccogliere 5000 risposte. Ma il design di interfaccia non è un approccio democratico, quanto una disciplina che si prefigge di capire quale è la soluzione migliore per il pubblico di riferimento. Sono convinto che la maggior parte dei partecipanti al sondaggio sono sviluppatori, non necessariamente il target principale a cui si rivolge WordPress.

Ho avuto modo di provare per qualche minuto una versione, sicuramente non definitiva, della futura amministrazione di WordPress e ne sono rimasto sconcertato, soprattutto nel notare che quasi ogni azione richiede, diversamente dall’attuale, un primo click per aprire il menù e un secondo per selezionare la voce voluta. Le premesse non mi sembrano delle migliori.

Qualcosa comunque sembra muoversi nel verso giusto, anche se a un maggiore livello di astrazione. Il team di Mozilla promuove Concept Series, un insieme di idee, wireframe e prototipi a partecipazione pubblica per definire la visione dei futuri prodotti opensource. Nulla a che vedere con l’usabilità, ma qualcosa che potrebbe aiutare a raccogliere attorno ai progetti opensource una comunità con competenze non solo tecniche, ma anche di design e di user experience.

Aggiornamento serale: il blog di WordPress presenta una prima versione dei wireframe realizzati per progettare la nuova interfaccia di amministrazione. Visto che non è facile trovare in rete documenti che riportano wireframe completi e documentati, vale sicuramente la pena darci un occhio.

Imparare dai propri errori

La scorsa settimana ho ricevuto questa email da un nostro cliente:

Buongiorno [responsabile commerciale] e Antonio,

vi comunichiamo il nostro disappunto riguardo il vostro comportamento e il lavoro finora svolto.

Riteniamo che le numerose richieste di modifica in corso d’opera che vi stiamo sottoponendo siano la diretta conseguenza del vostro lavoro. Ci riferiamo al fatto che noi vi avevamo chiesto a_b_c e invece voi ci avete proposto d_e_f. Potrete concordare con noi che in questo modo non è stato raggiunto il nostro obiettivo. Ci troviamo ora a dover mettere in linea un prodotto che non è quello che volevamo.

La nostra critica si basa fondamentalmente sulla mancanza di idee e proposte da parte vostra che siete gli esperti del settore e sul vostro atteggiamento di mera esecuzione di ordini a seguito delle nostre richieste, che si basano sull’esperienza nel nostro settore, che a quanto pare non si possono sempre tradurre in campo informatico.

E’ la prima volta che ricevo una missiva del genere: c’è da rimanere sconcertati, vero?

Un messaggio con questo tono non arriva come un fulmine a ciel sereno, ma è una diretta conseguenza a una nostra email in cui, senza tanti complimenti, abbiamo chiesto al cliente di permetterci di chiudere le diverse attività in cantiere senza aggiungerne in continuazione di nuove. Non si fa così. Questo è però solo l’ultimo di una serie di errori che, da una parte e dall’altra, hanno caratterizzato la vita dell’intero progetto.

Prima di cominciare ad analizzare cosa non ha funzionato vale però la pena di inquadrare il progetto nel suo contesto e fornire qualche cifra di riferimento:

  • i primi incontri per la definizione del progetto insieme al cliente si svolgono a Giugno 2007, più di un anno fa;
  • il progetto prevede la realizzazione di un sito di presentazione, ricerca, prenotazione e di ecommerce non standard, che attinge ad anagrafiche e listini presenti in gestionali usati dal cliente;
  • il sito va a sostituire una precedente versione, anche questa realizzata da noi;
  • dopo aver raccolto gli elementi utili da più fonti e aver svolto diverse analisi, ad Agosto del 2007 è presentato e motivato al cliente un prototipo funzionante dell’intera applicazione. Prototipo lasciato a disposizione per ogni valutazione;
  • l’impegno previsto per la realizzazione del progetto è stimato in circa 350 ore uomo, con data di consegna 15 Febbraio 2008.

Il cliente, anche se non sembrerebbe leggendo l’email, è stato coinvolto in ogni fase del progetto:

  • la raccolta di elementi utili per la progettazione del sito è partita da una serie di incontri in cui il cliente ha espresso le proprie esigenze;
  • abbiamo presentato un prototipo funzionante dell’applicazione condividendo ogni scelta;
  • abbiamo realizzato, in un ambiente accessibile al cliente, circa 5 rilasci intermedi su dati reali per verificare le diverse funzionalità

Sembrerebbero le basi su cui realizzare un prodotto apprezzato. L’email ricevuta non lascia però spazio ad alcun dubbio: il cliente è insoddisfatto, è convinto che questo non sia il prodotto richiesto e manifesta chiari dubbi sulla competenza della società che li ha accompagnati in questo percorso. Come è possibile?

Se analizziamo più approfonditamente quello che è successo nell’arco di questi 12 mesi si capisce che in realtà di errori ne sono stati commessi tanti, troppi, da ambo le parti. Ecco i principali:

  • Errore 1: c’è bisogno di un sito nuovo (?) – Tutto comincia quando il cliente manifesta perplessità per alcune problematiche del sito attualmente online. Si tratta di alcuni bug e soprattutto di problemi relativi all’usabilità e non coerenza dell’interfaccia di navigazione. Il cliente viene convinto a riprogettare da capo l’intero sito, promettendo un’applicazione più usabile, più veloce, migliore. Viste le richieste, sarebbe forse stato più semplice sistemare quanto era già online.
  • Errore 2: ti costa 100. No 300. Vabbè facciamo 200 – Al cliente è proposto un investimento contenuto, il tutto senza verifiche. Dopo una breve sessione di macroanalisi si evince che l’impegno è invece circa tre volte rispetto quanto promesso. A questo punto inizia il tira-e-molla che porta il prezzo finale a circa il doppio, una via di mezzo che non fa felice nessuna delle due parti.
  • Errore 3: un cliente fantasma – Non abbiamo spiegato chiaramente al cliente che avremmo avuto bisogno, per tutta la durata del progetto, del suo apporto. Trovandosi davanti a un prototipo funzionante alcuni clienti sono infatti convinti che sia già stato fatto tutto, che sia sufficiente procedere con l’implementazione e vedersi consegnato il progetto dopo alcuni mesi. Nel documento di progetto va invece quantificato l’impegno richiesto al cliente in termini di verifica funzionalità, test, prove sul campo e supporto per le inevitabili domande che nascono nello sviluppo di tutti i giorni. Il cliente ha inoltre risposto con enorme ritardo ad ogni comunicazione che gli è stata inviata. Alcune email non hanno ricevuto risposta, altre dopo un mese, con casi di risposte dopo ben 5 mesi rispetto alle richieste. Abbiamo più volte sollecitato il cliente, via email e verbalmente, senza alcun risultato apprezzabile.
  • Errore 4: referenti aziendali non all’altezza – Punto cardine di un progetto di successo è l’interazione con referenti aziendali competenti e in grado di farsi portavoce delle richieste dei consulenti e dell’azienda per cui lavorano. Così non è stato. Il progetto è stato affidato a un dipendente part-time dell’azienda che non è riuscito a trasmettere dubbi, perplessità, richieste, proposte. Come se non bastasse un altro attore del progetto, che ha seguito la precedente realizzazione del sito, lavora part-time con orario di lavoro non coincidente con quello del referente principale. Non è sempre facile accorgersi della presenza di un referente non motivato, ma quando succede l’azienda va immediatamente informata oppure la situazione, come in questo caso, precipita. E, nella maggior parte dei casi, è il web project manager a dover alzare la mano.
  • Errore 5: il software si modifica anche all’ultimo minuto – Il software è un prodotto di ingegneria. Il fatto che un progetto web sia accessibile da un monitor fa sì che il cliente non sempre riesca a valutare, diversamente da altre opere di ingegneria, l’impatto di alcune richieste di modifica. Aver presentato un prototipo funzionante ha lo scopo di confrontare proposte e punti di vista, ma anche di limitare il numero di modifiche in corso d’opera. In realtà nulla è scolpito nella pietra e, come ben sa chi adotta metodologie di sviluppo agile, è impossibile prevedere ogni caratteristica a priori. Il problema in questo caso è ancora una volta legato alla mancanza di feedback da parte del cliente in tempi accettabili. Le richieste di modifica sono pervenute mesi dopo che la funzionalità era stata consegnata per verifica.
  • Errore 6: non serve capire chi è il visitatore – Al cliente è stato suggerito, prima ancora di iniziare l’analisi del sito, di compiere alcuni fondamentali studi relativi agli utenti a cui il sito si rivolge, alle loro aspettativi e modalità di ricerca. Per motivi di budget, ma non solo, il cliente si è limitato a indicare alcuni siti concorrenti che presentano, rispetto alla versione attualmente online, alcuni spunti di miglioramento. Questa è una strategia che non paga, perché a sito terminato rimane il dubbio che non tutto sia stato realizzato come si sarebbe dovuto.
  • Errore 7: il sito non fa quello che voglioIl sito non deve fare quello che vuoi tu, ma quello che vuole il tuo utente (vedi punto precedente). Il nostro interlocutore, nel giustificare il nostro pessimo lavoro, parla di sito che non voleva, di sito che non corrisponde alle sue attese. Sbaglia due volte: perché ogni sua indicazione è stata presa in considerazione e perché cerca di mettersi nei panni di un visitatore che in realtà non conosce e si fa ingannare da dettagli e particolarità che sarà l’unico a notare.

Realizzare un progetto che soddisfi ambo le parti, soprattutto un progetto che richiede alcuni mesi di lavoro, è un’attività che il cliente e l’azienda di consulenza devono affrontare sapendo di mettere in campo tutto l’impegno necessario. Referenti non motivati, stime di costo in continua variabilità, scorciatoie di progettazione, tempi non rispettati sono gli elementi che piano piano, giorno dopo giorno, minano la riuscita di un progetto che è apparentemente solido. Esattamente quello che è successo in questo caso.

Risorse di web project management

Ho inserito qualche nuovo elemento nella spalla destra di Fucinaweb.

Un box contiene ora un elenco di documenti, articoli e blog che trattano di project management e in particolare di web project management. Sono più di un centinaio di risorse che ho inserito in questi mesi in delicious, la maggior parte con un abstract di presentazione nel campo note. L’elenco completo si trova all’indirizzo delicious.com/TheBigFox/projectmanagement ed è accessibile anche in formato RSS per poterlo aggiungere al proprio lettore di feed.

Nel mio account delicious non si trovano solo risorse di project management, ma di altri argomenti trattati con regolarità qui su Fucinaweb, tra cui:

Ho introdotto un ulteriore box con l’elenco dei tag più utilizzati negli interventi. Prima di farlo ho cercato di inserire i tag anche per i contenuti meno recenti che ne erano privi. Fucinaweb ospita infatti articoli dal 2002, quando davvero pochi strumenti permettevano l’adozione di tag. Tag che ricordano – non è una sorpresa – quelli utilizzati in delicious:

Con i tag si riesce a spingersi oltre così da individuare, per esempio, tutte le recensioni pubblicate oppure i corsi online gratuiti di accessibilità, asp.net e web design.

Ho infine eliminato le categorie perché non rispecchiano l’evoluzione degli argomenti presentati nel sito. Nel farlo ho messo in pratica quanto ho scritto in Categorie e tag, ricette e ingredienti.

Se siete interessati alla totalità dei contenuti, sia per quanto riguarda gli articoli di Fucinaweb, sia per le risorse che segnalo su delicious, ma preferite non riempire il vostro lettore rss di diversi flussi, potete iscrivervi al mio profilo su friendfeed.

Oppure, se volete approfittare per aggiungermi anche nella vostra rubrica, vi consiglio di utilizzare il servizio di social networking professionale offerto da Plaxo, un’ottima soluzione per chiunque voglia gestire i contatti sia su piattaforma Mac, PC, che sul proprio cellulare.

Altri dettagli relativi alle modalità con cui contattarmi si trovano, come sempre, nel mio profilo.