#Design

Progettare un’app: problemi fantastici e dove trovarli

Luca Maraschio
Nov · 6 min. di lettura

Di solito, quando un cliente si rivolge a te con la volontà di progettare un’app, c'è sempre un certo entusiasmo iniziale. Tantissimi buoni propositi, idee interessanti e tanta voglia di mettersi subito al lavoro per creare un prodotto digitale il più possibile funzionale, funzionante ed esteticamente piacevole.

Arriva però il momento in cui bisogna iniziare a lavorarci concretamente, studiando la struttura del flusso di lavoro e ragionando sulla progettazione vera e propria. Questa è la fase in cui si cominciano a intravedere le potenziali problematiche che potremmo trovarci di fronte lungo il tortuoso percorso della progettazione di un'app.

Vediamo allora quali sono alcune delle sfide che si possono incontrare e alcune possibili soluzioni che possono permetterci di evitare un potenziale disastro digitale.

Gif persona prende pop-corn

#1 User flow (in)completo

Per progettare un’app - o un qualsiasi prodotto digitale - bisogna tenere a mente alcune premesse basilari:

  •  Deve assolvere a una funzione primaria;

  •  Deve avere determinate funzioni secondarie;

  •  Deve funzionare (bene).

Beh, detta così sembra tutto molto semplice e lineare, no? No!

Persone che applaudono

L'errore che spesso si tende a fare è quello di concentrarsi troppo sul cercare di soddisfare questi requisiti, tralasciando importanti dettagli lungo la strada, come i possibili percorsi alternativi dell'utente, probabili ostacoli di varia natura lungo lo user flow o altro.

Il concetto è che, in qualità di agenzia o di professionisti del settore, abbiamo l'obbligo di prendere in considerazione tutti i modi in cui un utente può perdersi durante la navigazione e risolverli a monte. Con strategia, pianificazione e progettazione consapevole.

Questo però diventa difficile nel momento in cui la nostra applicazione prevede una struttura decisamente complessa o intricata.  Dunque, com'è possibile prevedere tutto ciò che può andare storto?

Soluzione: wireframe e prototipi

Niente di nuovo quindi. In effetti può sembrare banale ma iniziare la nostra progettazione creando wireframe e prototipi può veramente salvare l'intero progetto. Questa soluzione ha diversi vantaggi per noi designer, ma anche per i programmatori che dovranno sviluppare l'app e per il cliente. Poter osservare tutte le pagine o le fasi della nostra applicazione, anche se semplificate, permette di capire se lo user flow dell'utente funziona o meno, è possibile individuare una CTA mancante o sbagliata e accorgersi di eventuali gap prima che sia troppo tardi.

esempio wireframe

In breve, ricorrere all'uso di wireframe e prototipi permette di:

  • Accorgersi di eventuali dimenticanze e problemi di UX;

  • pensare allo user flow in modo concreto fin da subito;

  • avere una base solida su cui progettare la UI definitiva;

  • dare ai programmatori uno strumento per poter stimare le tempistiche di sviluppo;

  • rendere conscio il cliente del flusso di navigazione di un utente in tempi relativamente brevi, senza dover aspettare il design definitivo;

  • evitare di perdere molto più tempo per risolvere questi problemi successivamente a cose fatte.

#2 Wireframe e prototipi non bastano

Essenzialità e stilizzazione sono i punti forti dei wireframe: testi segnaposto e rettangoli grigi in sostituzione alle immagini ci permettono di essere snelli nei tempi di esecuzione. 

Questo però può essere anche un punto debole.

Molte applicazioni, per necessità o per scelta, hanno animazioni particolari o funzioni che non possono essere ridotte alle caratteristiche di un semplice wireframe. Inoltre, non hanno la possibilità di mantenere gli stati degli elementi. Per esempio: come cambierà il layout della pagina quando l'utente effettua il Login? Come apparirà il pulsante "carrello" quando si aggiungeranno dei prodotti?

Soluzione A: note e commenti sul wireframe/prototipo

Sembrerà banale ma commentare direttamente su una determinata pagina o elemento del wireframe può evitare mille problemi successivi. È possibile interpellare gli sviluppatori per capire la fattibilità di una certa funzione, chiedere al Project Manager se quel determinato elemento lo vuole in un modo piuttosto che un altro e, cosa più importante, permette di tenere una traccia nel tempo di tutte le richieste fatte, evitando di perdere pezzi per strada in progetti particolarmente lunghi.

Screen Figma - commenti

Soluzione B: video esplicativi

Per particolari animazioni, effetti o transizioni, se pensiamo che siano fondamentali per qualche motivo, può tornare molto utile creare un vero e proprio video in cui si mostra esattamente come dovrà essere quell'animazione. Questo ci permettere di chiedere conferma al cliente dell'effetto finale ma, soprattutto, di fornire ai programmatori una reference visiva dettagliata e precisa, evitando fraintendimenti o problemi di varia natura.

gif animazione su smartphone

#3 Conoscenza condivisa e coerenza

Quando si lavora in team composti da più persone, non ci si può aspettare che tutti entrino nella testa del designer e capiscano o sappiano come dovrà essere fatta una determinata cosa, se non specificata. Inoltre, spesso c'è il rischio che, nell'aggiungere nuove funzioni a distanza di tempo, si vadano a creare nuovi elementi non coerenti con quelli precedenti, contribuendo alla creazione di un'accozzaglia di elementi non proprio armonici e funzionali tra loro.

Soluzione: Design System e/o libreria di componenti

Avere a disposizione uno strumento che definisca in modo preciso e mirato tutta la UI di un progetto, specificando stati, dimensioni, colori e tutto ciò che può essere predeterminato, permette di lavorare tutti in modo allineato senza il rischio di uscire dalle rotaie che, in questo modo, sono ben tracciate e delimitate. Se volete approfondire il tema del Design System potete trovare alcuni spunti interessanti in questo articolo.

esempio libreria di componenti

#4 Sovraffollamento di features

Uno dei rischi maggiori quando si progetta una UX è quello di sovraccaricarla di features, nel tentativo di rispondere a tutti i possibili bisogni dell'utente.

"Progettare una UX rischia di ridursi al semplice spuntare una lista di requisiti, aggiungendo una funzionalità dopo l'altra senza considerare cosa è più importante per l'utente"

- Magnus Revang | Research Director di Gartner

Spesso ci si trova a voler aggiungere una funzione, poi un'altra e poi un'altra ancora, perché pensiamo che l'utente che ha più possibilità sia automaticamente più soddisfatto. 

Non c'è pensiero più sbagliato. 

L'utente va guidato e il nostro obiettivo è quello di semplificargli la vita e non di complicargliela facendolo perdere in un labirinto di pulsanti e funzioni, facendolo scappare a gambe levate. Mai come in questo caso l'inflazionatissima espressione "less is more" risulta azzeccata.

schermata live chat

Soluzione: dire di no

Molte volte si corre il rischio di trovarsi nella posizione di assecondare il cliente che ci chiede di aggiungere centinaia di cose o funzioni che ritiene fondamentali per l'utente finale ma che, in realtà, rischierebbero di inficiare l'efficacia e l'usabilità dell'applicazione.

Possiamo dire che in questi casi possiamo lasciare da parte il pensiero secondo cui il cliente ha sempre ragione.