Un buon doppio: UX Design e Scrum
Nello sviluppo del software, Scrum sta guadagnando sempre più consensi come metodo agile di gestione dei progetti. Nel frattempo, ci sono numerosi workshop, una letteratura completa e un gran numero di esperti di Scrum. Nel contesto Scrum, tuttavia, è stato finora trascurato di integrare altri elementi e discipline specialistiche che sono essenziali per un prodotto forte - come lo user experience design (abbreviato: UX design).
Una buona esperienza utente (UX) porta al fatto che agli utenti piace usare un prodotto o un software, ed è quindi un fattore essenziale di successo. Tuttavia, nella pratica, il design dell'esperienza utente e il processo Scrum sono apparsi finora solo fianco a fianco e hanno pochi punti di contatto: Il design dell'esperienza utente - dalla ricerca degli utenti alla definizione delle personas allo sviluppo di schizzi e wireframes - è spesso creato in anticipo e poi consegnato al team di sviluppo per l'implementazione. A peggiorare le cose, agenzie esterne specializzate - che spesso lavorano secondo il classico metodo a cascata - di solito creano il design dell'esperienza utente. Questo è dovuto principalmente al fatto che quando le aziende IT sono state fondate, specialmente quelle che sono state in giro per molto tempo, il tema della UX non era così in primo piano come lo è oggi. Ma solo quando il design dell'esperienza utente e lo sviluppo competono insieme in un processo agile c'è una vittoria alla fine: un prodotto di successo che non solo funziona, ma che gli utenti amano usare.
UX design nel processo Scrum: 3 aspetti
Fattore di successo 1: vicinanza fisica - per un maggiore scambio e comprensione reciproca
Spesso il rapporto tra designer e sviluppatori è piuttosto teso. Questo è spesso dovuto al fatto che entrambi i gruppi sanno poco dei processi lavorativi dell'altro. Per esempio, spesso non è facile per i designer capire come gli sviluppatori continuano a lavorare con i progetti che hanno fornito. Gli sviluppatori, a loro volta, spesso non hanno idea dei processi che i designer attraversano per creare un concetto valido. Per entrambe le parti, a volte è molto opaco ciò che l'altro gruppo fa nel suo lavoro quotidiano. Un lavoro di chiarimento da parte della direzione del progetto e degli stessi membri del team può inizialmente creare una comprensione di base. Si dovrebbe spiegare quali sono i compiti dei singoli ruoli e in che misura i processi nello sviluppo del software devono essere adattati anche attraverso l'integrazione dei designer. È importante che tutti i membri del team capiscano che un prodotto di successo può essere creato solo attraverso una buona interazione tra entrambi i processi - user experience design e sviluppo del software.
Per migliorare la comprensione del lavoro dell'altro, la vicinanza spaziale è un aspetto essenziale: quando designer e sviluppatori lavorano insieme nella stessa stanza, possono vedere su cosa sta lavorando l'altro. Possono farsi domande a vicenda e/o mostrare visibilmente le loro fasi di lavoro, come disegni o immagini di architetture software, nella stanza. Visualizzando visibilmente ciò su cui stanno lavorando, le conversazioni e le discussioni possono avvenire più facilmente e rapidamente. I canali di comunicazione brevi fanno sì che le domande vengano poste più frequentemente e chiarite più rapidamente, e quindi hanno un effetto positivo sul risultato del prodotto.
Se il tempo lo permette - e la competenza corrispondente è disponibile - i designer possono anche sostenere gli sviluppatori nella programmazione, per esempio nell'area dello sviluppo front-end. Il vantaggio: i progetti autoprogettati possono anche essere implementati tecnicamente immediatamente e quindi testati per la loro fattibilità. Al contrario, gli sviluppatori possono anche partecipare alla creazione del design dell'esperienza utente come parte del processo Scrum, per esempio creando mockup o prototipi.
Fattore di successo 2: considerare il design UX già nello Sprint 0 - per personas rilevanti e buone user stories
Nel processo Scrum, il tempo che precede il primo Sprint è utilizzato per misure preparatorie, come l'impostazione dell'architettura tecnica. Questo periodo viene anche chiamato Sprint 0. I primi passi del processo concettuale e creativo dell'UX design possono essere ben integrati in questa fase. L'obiettivo dello Sprint 0 in questo caso è di sviluppare insieme una comprensione fondamentale dell'utente e una visione unificata del prodotto. A questo scopo, si raccomanda un workshop in cui tutti i partecipanti al progetto - sviluppatori, user experience designer, product owner e idealmente anche gli stakeholder - sviluppano un quadro generale dell'idea di UX. Allo stesso modo, i primi passi del design UX dovrebbero essere già implementati nello Sprint 0: Ricerca utenti, creazione di Persona- e sviluppo di requisiti sotto forma di User Stories. Su questa base, i partecipanti possono sviluppare insieme un product backlog che sia comprensibile per tutti. Le riunioni quotidiane di Scrum dovrebbero avere luogo già nello Sprint 0, in cui i membri del team si informano a vicenda sui progressi e sullo stato attuale della fase di preparazione.
Alla fine dello sprint, il proprietario del prodotto ordina le user stories che sono state sviluppate insieme nello sprint 0 secondo la loro priorità. Le user stories che rappresentano il cosiddetto Minimal Viable Product (MVP) - cioè il prodotto o la caratteristica che porta il maggior beneficio possibile per l'utente con il minor sforzo - hanno la priorità più alta. Queste user stories dovrebbero poi essere implementate nei primi sprint.
Per stimare quanti sprint saranno necessari per implementare il MVP, gli sviluppatori dovrebbero stimare lo sforzo delle user stories prioritarie nello Sprint 0. Il compito degli user experience designer in questa fase è di descrivere il valore e il beneficio di una user story e di ricordare agli sviluppatori lo sforzo richiesto per implementare il design.
Può essere difficile per gli sviluppatori stimare lo sforzo quando non c'è ancora un design definito dell'esperienza utente. Per ottenere una comprensione comune - e quindi una stima più accurata - delle user stories, si raccomanda di creare semplici prototipi (di carta) durante lo Sprint 0. In questo modo, le idee di tutti i partecipanti al progetto possono essere visualizzate rapidamente e quindi meglio discusse nel gruppo. Le idee più valide possono poi essere ulteriormente sviluppate e idealmente testate per l'usabilità usando prototipi mentre sono ancora nello Sprint 0, per esempio dai colleghi. Il feedback dei tester può quindi essere preso in considerazione in una rapida iterazione. A causa dello sviluppo parallelo, solo gli user experience designer saranno in grado di eseguire il processo completo più e più volte durante il corso del progetto, vale a dire la continua ricerca degli utenti, l'adattamento - e se necessario la ri-creazione - delle personas, la creazione e il test dei prototipi, ecc. Durante il processo, gli user experience designer dovrebbero assicurarsi di condividere regolarmente i loro risultati con il resto del team.
Fattore di successo 3: Coinvolgere gli UX designer in tutte le riunioni Scrum - per il "quadro generale".
Il prerequisito per un'integrazione olistica degli user experience designer nel processo Scrum è la loro partecipazione a tutte le riunioni tipiche di Scrum. Nel contesto di questo scambio "istituzionalizzato" tra sviluppatori e user experience designer, entrambi i gruppi possono scoprire rapidamente se il design dell'esperienza utente creato può essere implementato con uno sforzo ragionevole. Inoltre, gli sviluppatori hanno anche l'opportunità di far fluire le loro idee e punti di vista nel processo di design UX.
Si raccomanda anche una stretta collaborazione tra gli UX designer e i product owner, specialmente quando si progettano le user stories. Possono usare la loro esperienza nel trattare con gli utenti e i loro bisogni quando creano le user stories e creare progetti di user experience per le user stories pianificate. Si dovrebbe fare attenzione a creare un design dell'esperienza utente molto dettagliato solo quando è necessario - e non con largo anticipo. Lo stesso vale per la formulazione finale delle user stories, poiché è molto probabile che le user stories iniziali cambino nel corso del progetto a causa di nuove intuizioni. Quindi, è consigliabile finalizzare le storie utente in termini di esperienza utente solo uno o due sprint prima dell'implementazione pianificata, al fine di ridurre al minimo il carico di lavoro. Come parte integrante di un team Scrum, gli user experience designer sono sempre disponibili per le domande. Questo aiuta a prevenire la duplicazione del lavoro, per esempio, se un dettaglio sul comportamento dell'interfaccia utente è stato capito diversamente dallo sviluppatore e implementato senza ulteriori indagini.
I test utente sono un altro campo di attività che gli UX designer possono intraprendere durante lo sviluppo. A questo scopo, si raccomanda di condurre test di usabilità con utenti selezionati a intervalli regolari - circa ogni due sprint - idealmente con prototipi prima. Questo dà al gruppo target l'opportunità di valutare gli incrementi di prodotto appena implementati. La consultazione precoce con gli utenti ha il vantaggio che qualsiasi richiesta di cambiamento da parte degli utenti può essere presa in considerazione immediatamente. Soprattutto se gli aggiustamenti sono già fatti ai prototipi e non al software già sviluppato, questo significa un enorme risparmio di tempo e di costi. Le modifiche possono essere fatte direttamente in un'iterazione successiva, o le richieste di cambiamento sono ancorate in nuove storie utente. Per mantenere uno scambio trasparente con il team Scrum, gli UX designer dovrebbero presentare i risultati dei test utente nel Daily Scrum.
Conclusione
Gli user experience designer possono assumere compiti completi in un team Scrum e contribuire significativamente al successo del prodotto. Il prerequisito per questo è che gli UX designer giochino un doppio ruolo come partner degli sviluppatori nel processo Scrum. Da un lato, il loro compito è quello di guardare avanti e di portare avanti uno sviluppo del prodotto orientato all'utente per mezzo di ricerche, test utente e creazione di prototipi. D'altra parte, dovrebbero essere sempre disponibili per le richieste degli sviluppatori riguardo alle user stories attualmente elaborate, convalidare le user stories già implementate e, se necessario, testarle sul gruppo target. Allo stesso tempo, tutte le persone coinvolte dovrebbero essere consapevoli che non c'è fondamentalmente una soluzione finale nello sviluppo agile del software. Con il rilascio di un prodotto software, lo sviluppo e il design dell'esperienza utente non è finito. In linea di principio, una nuova partita inizia già in questo momento.