Progettare applicazioni per iPhone

I due concetti chiave su cui apple consiglia di focalizzarsi e su cui anch’io ho potuto avere riscontri positivi sono:

  • concentratevi solo sulle funzionalità rilevanti in mobilità, saranno quelle di maggior valore per l’utente
  • “done right” cercate di mantenere una qualità del prodotto alta in quanto i controlli qualità sono molto severi e la competizione sulla qualità in uso è rilevante

Detti questi concetti generali l’approccio che si suggerisce di usare è composto da quattro fasi in cui studiare e formalizzare alcuni aspetti del prodotto.

Think
Definite la proposta del vostro prodotto con un application definition statement che corrisponde ad una frase che dice cosa fa l’applicazione (key task) per chi (purpose), ad esempio: “permette di caricare le proprie fotografie per utenti flickr che hanno l’iphone”.

Questo esercizio che sembra molto “semplice” in realtà richiede spesso grandi riflessioni in quanto corrisponde un po’ alla missione che si da un’azienda e dunque dovrebbe essere la linea guida principale del prodotto (che deriverà poi nel pitch elevator).

Model
È la fase in cui bisogna definire nei dettagli la propria soluzione ed in genere si approccia facendo un brainstorming generale sul funzionamento e tanti, tanti sketches che ne spieghino in maniera semplice il funzionamento ideale che gli si vuole dare. In questa fase si tralascia il voler essere coerenti e/o precisi l’importante è capire cosa si vorrà realizzare.

A seguito del brainstorming l’ideale è definire e raffinare un feature set limitandosi a quelle funzionalità che hanno senso in mobilità e distinguendole tra critiche e non critiche (questo darà la priorità nella progettazione e sviluppo).

Al termine di questa fase è importante andare ad indagare qual’è il modello mentale dei propri utenti con le classiche tecniche (interviste, field study, usability test, …) in modo da capire quali sono gli oggetti/metafore che gli utenti si aspetta, i task che effettuerebbe, i ruoli dell’utente e del sistema e soprattutto le relazioni tra questi elementi.

Realize
La fase di realizzazione è quella più corposa ed è composta da forti attività di interaction design e sviluppo. L’approccio suggerito da apple è quello di lavorare con metodologie agili e mantenendo uno stretto contatto tra IDX e DEV.

Dal punto di vista progettuale su iPhone il primo step da effettuare è quello di capire come posizionare il proprio prodotto per capire che esperienza d’uso offrire. Il suggerimento qui è quello di capire come posizionarla su un diagramma di due assi seria/divertente produttiva/intrattenimento. Il relativo posizionamento ci dirà se la nostra applicazione dovrà avere un’esperienza d’uso immersiva o trasparente, con una gerarchia profonda o no, ecc…

Una volta ottenuto il posizionamento si riprendono in mano le funzionalità e il modello mentale degli utenti e si suggerisce di partire facendo paper design e wall sketches cercando di lavorare con modalità rapide nello sviluppare i potenziali infiniti meccanismi di interazione… verificare testando e ricominciare :)

Alla fine si formalizza tutto in wireframes funzionali.

Finalize
La fase di finalizzazione finale è intesa da apple quella che copre i fattori estetici ed emozionali dell’applicazione che spaziano dall’aspetto grafico, alle icone, alle animazioni, ecc sempre usando una buona dose di buon senso nell’applicarli (attenzione a non perdere la comprensibilità e l’efficienza dell’interfaccia).

Questo approccio secondo apple dovrebbe garantire una sufficiente qualità dell’applicazione e superare tutti i loro controlli di qualità. In termini di numeri e di time to market ci sono un paio di case-study di riferimento (evernote, things, tap tap tap, ecc..) che danno delle indicazioni di massima sui tempi e costi di progetto. In genere un prodotto di buona qualità per iphone viene sviluppato da team che vanno da 3 a 5 persone in 3/4 mesi di lavoro con una ripartizione del lavoro che si bilancia in 50/75% UX e in 25/50% sviluppo software.

Come si può osservare il peso verso il design è molto sproporzionato in confronto agli altri prodotti software però questo è il mondo apple ;)

  1. Pur non avendo ancora nessun tipo di esperienza nella progettazione e sviluppo di software per l’iPhone sinceramente credevo che ci volesse meno tempo.

    5 risorse per 3/4 mesi è tanta roba!

    A quanto pare le statistiche della Apple non hanno preso in considerazione il mio iPhone dove di applicazioni aggiuntive che utilizzano la connessione ce ne sono molte di più di 2 :-)

  2. Calcola che sono case-history basati su un approccio progettuale sano e ponderato con cui cercano di fare prodotti che siano realmente in grado di competere su masse molto grandi, quella è la media, per l’applicazione di myspace parlavano di tempi ancora più lunghi

  3. Dipende sempre un po’ dall’entità dell’applicazione. Il discorso è del tutto analogo a quello su PC: si possono fare anche applicazioni in poco tempo, ma la qualità sarà bassa. Come succede passano anche il vaglio di Apple, ma poi l’efficacia raramente è elevata (a parte boutade commerciali).

    L’Interaction Design sui dispositivi mobili è ancora più critico perché in mobilità si ha meno tempo e meno tolleranza rispetto all’essere seduti davanti ad un PC: se non funziona in pochi secondi, l’applicazione è inefficace, anche se magari la funzionalità esiste.

    Mentre sviluppavo su iPhone per WideTag/OpenSpime mi sono accorto della differenza citata: in pochissimo tempo avevo realizzato una applicazione che “funzionava”, ma da qui a renderla “comoda” ci è voluto un notevole lavoro in più (e ancora c’è da raffinare ulteriormente).

    Discorso a parte ovviamente è per i giochi, ma cmq è una tendenza che va evidenziata. :)

  4. Concordo pienamente Fol, il punto è che il vaglio di apple è spesso molto stretto quindi è frequente che un’applicazione venga rifiutata (pare più del 90%)

  5. Pingback: Sketchin - There is life inside experience design » Progettare per iPhone: cercare la rilevanza in mobilità

  6. ottimo blog

  7. Ottimo post decisamente interessante per i (tanti) programmatori iPhone. Mi permetterei di aggiungere qualcosa: conoscere davvero a fondo le potenzialità e le particolarità del dispositivo. Spesso le applicazioni per iPhone sono versioni adattate di software per altri dispositivi. Spesso è un peccato, perché non si tiene conto di caratteristiche decisamente interessanti come il GPS del modello 3G, il multitouch o l’input vocale. Sono poche le applicazioni in grado di valorizzare intelligentemente (e in modo davvero utile) queste caratteristiche.

  8. Simone il tuo commento è oggettivamente vero per l’iPhone come per tutti i device mobili

  9. pierpaolo

    buona sera a tutti voi, mi chiamo pierpaolo, lavoro per apple service, sono un sistemista ed il mio pane di ogni giorno è osx server e le integrazioni…integrazione dell’ iphone compresa nelle realtà aziendali. Il dispositivo si comporta bene e il software che ultimamente è reperibile è deisamente di qualità superiore se paragonato a diversi mesi fa. Con un po’ di pazienza credo vedremo il nascere di applicativi davvero interessanti anche in virtù di successori dell’ iphone :-))

  10. Pingback: Come vedersi rifiutata un applicazione sull’apple store | Luca Mascaro dot info

  11. Pingback: Progettare applicazioni per iPhone - UXmagazine

  12. Pingback: Riflessioni sul design per iPad | Luca Mascaro dot info

  13. Pingback: Riflessioni sul design per iPad | Mikazuchi / Fashion Lifestyle

  14. Lo sviluppo è rapido
    Il problema sono le policy di Apple