APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 ·...

66
PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio 2018 - Pierluigi Grillo, Fabiana Vernero

Transcript of APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 ·...

Page 1: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD

16 maggio 2018 - Pierluigi Grillo, Fabiana Vernero

Page 2: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

MOBILE APP DESIGN

Page 3: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

COSA SONO LE APP? - 1

➤ Le app sono piccoli

programmi, generalmente

focalizzati su un obiettivo

specifico, che si possono

installare sui dispositivi

mobili, accanto alle app “di

sistema”.

➤ I fattori che hanno favorito il proliferare delle app sono:

➤ Touchscreen

➤ App store orientato al consumatore

3

Page 4: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

COSA SONO I DISPOSITIVI MOBILI?

➤ I dispositivi mobili si distinguono per:

➤ Caratteristiche fisiche

➤ Uso di sistemi operativi “post-PC”.

✦ Le possibilità di interazione superano quelle del modello WIMP (window – icon – menu – pointing device).

4

Page 5: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

DIFFUSIONE DEI S.O. PER SMARTPHONE

76%

20%

3%

1% 0% 0%

Quota di mercato nel mondo aprile 2018

Android

iOS

Unknown

Windows

Series 40

Samsung

75%

23%

2% 0%

0% 0%

Quota di mercato in Italia aprile 2018

Android

iOS

Windows

Samsung

Unknown

BlackBerry OS

5

http://gs.statcounter.com/os-market-share/mobile/worldwide

Page 6: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPI DI APP - 1

➤ Indipendentemente dal sistema operativo su cui si appoggiano, le app possono essere classificate in tre grandi famiglie:

➤ Native

✦ Sviluppate con strumenti e linguaggi definiti dalla specifica piattaforma

➤ Web-based (comprendono anche le PWA, Progressive Web Applications)

✦ Sviluppate con gli strumenti e i linguaggi del Web, sono eseguite nel browser.

➤ Ibride

✦ App web-based incapsulate i9n un contenitore nativo.

6

Contenuti tratti da: Tecnologie Web – Diego Magro ©

Page 7: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPI DI APP - 2

7

Contenuti tratti da: Tecnologie Web – Diego Magro ©

App nativa (2014) Web app (2014)

browser

Page 8: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

APP NATIVE

VANTAGGI ➤ Fedeltà al look&feel della piattaforma

(migliore UX).

➤ Accesso alle risorse hardware del dispositivo e ai dati dell'utente gestiti dalla piattaforma (messaggi, calendario, contatti, ecc.).

➤ Possibilità di utilizzo offline.

➤ Migliori performance.

➤ Maggiore visibilità e notifiche per gli aggiornamenti grazie alla pubblicazione sull'app store.

SVANTAGGI

➤ Sono specifiche per una piattaforma.

➤ Richiedono specifiche competenze e

strumenti di sviluppo ad hoc.

➤ Richiedono maggiori tempi e costi di sviluppo.

➤ La pubblicazione sull'app store è vincolante in

termini di tempo e di costo

➤ Alcuni utenti possono ignorare gli

aggiornamenti resi disponibili nell'app store.

Contenuti tratti da: Tecnologie Web – Diego Magro ©

Page 9: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

WEB APP

VANTAGGI

➤ Sono cross-platform (write once run anywhere)

➤ Permettono di utilizzare gli stessi strumenti e competenze necessari per lo sviluppo su Web. Esistono molti framework e librerie.

➤ Possono essere utilizzate anche attraverso i browser desktop e possono essere indicizzate nei motori di ricerca.

➤ Non sono vincolate a nessun app store e non richiedono installazione.

➤ Sono automaticamente aggiornate.

SVANTAGGI

➤ Performance peggiori.

➤ Necessitano sempre della connessione di rete attiva (a meno che l'app non si sfruttino le offline API di HTML5).

➤ Non hanno accesso alle risorse hardware del dispositivo né ai dati dell'utente gestiti dalla piattaforma.

➤ Non rispettano automaticamente il look&feel della piattaforma.

➤ Minore visibilità (non sono pubblicate sull'app store).

Contenuti tratti da: Tecnologie Web – Diego Magro ©

Page 10: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PROGRESSIVE WEB APPLICATIONS (PWA)

➤ Sono state introdotte nel 2015 da Google.

➤ Si tratta di web app che sfruttano le caratteristiche dei browser moderni per

offrire un’esperienza d’uso simile a quella delle app native, ad esempio

permettendo l’utilizzo offline, l’aggiornamento dei dati in background, la

ricezione di notifiche push, l’accesso ad alcune risorse hardware. Come le

web app, anche le PWA non sono vincolate a nessun app store.

10

Page 11: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

APP IBRIDE - 1

11

Contenuti tratti da: Tecnologie Web – Diego Magro ©

Page 12: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

APP IBRIDE - 2

➤ Le applicazioni ibride sono applicazioni web-based incapsulate all'interno di un contenitore nativo:

➤ E’ possibile accedere alle risorse della piattaforma.

➤ Lo sviluppo è cross-platform native partendo da un unico codice web-based.

➤ Le app possono essere pubblicate nell'app store di riferimento.

➤ E’ possibile l’utilizzo anche in modalità offline.

➤ Le performance sono comparabili alle app web-based.

12

Contenuti tratti da: Tecnologie Web – Diego Magro ©

Page 13: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PER FARE UN’APP… CI VUOLE METODO

➤ Lo user centred design (UCD) è una metodologia di

progettazione iterativa che mette in primo piano i bisogni

dell’utente.

➤ I prodotti sono costantemente sottoposti a valutazione.

➤ L’esito delle valutazioni può portare a ripetere i passi di

progettazione e sviluppo.

13

Copyright 2009 Usabilla.com

Page 14: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

USER CENTRED DESIGN - 2

➤ Nello UCD ci sono alcune “regole” che è bene ricordare per

non sbagliare:

➤ Il progettista non è l’utente

14

Un prodotto che “ha senso” e funziona bene per il

progettista, non necessariamente funzionerà

altrettanto bene per l’utente.

Page 15: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

USER CENTRED DESIGN - 3

➤ Evitare la “proliferazione

strisciante delle funzioni”

Aggiungere troppe funzionalità non fondamentali ad un

prodotto può renderlo troppo complicato da usare.

➤ Evitare “l’adorazione di falsi

idoli”

Rendere molto complesso un prodotto (ad esempio con

molte funzionalià, un’interfaccia non standard e con

funzionalità nascoste, …) può farlo sembrare “sofisticato” e

di qualità, ma lo renderà anche difficile da usare

15

➤ .

Queste sono le due “tentazioni mortali del progettista”

[D. Norman, La caffettiera del masochista]

Page 16: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PER FARE UN’APP… CI VOGLIONO LE GIUSTE PROFESSIONALITÀ

16

UX Researcher

UX Researcher

Interaction Designer

UI Designer

iOS Developer

Android Developer

Backend Developer

UX Researcher Tester

Web Developer

Page 17: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

INTERACTION DESIGN

➤ L’interaction design è l’attività di progettazione dell’interazione tra una persona (l’utente) e un prodotto. Si occupa di definire:

➤ In che modo l’utente dovrebbe utilizzare il prodotto per raggiungere un certo obiettivo.

Si tratta di definire un flusso di compiti, azioni ed eventi.

➤ Quali elementi occorra fornire all’utente affinché possa agire nel modo previsto.

Si tratta di offrire una serie di “indizi” e “inviti all’uso” che guidino in modo appropriato le azioni

dell’utente.

17

https://bit.ly/2wlfMiz

Page 18: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

INTERFACCIA UTENTE - 1

➤ Si chiama interfaccia utente (user interface, UI) ciò che

permette ad una persona (l’utente) di interagire con un certo

prodotto, digitale o meno. Un’interfaccia comprende:

➤ Comandi: elementi attraverso cui l’utente comunica le sue

intenzioni al prodotto.

➤ Display: elementi attraverso cui il prodotto manifesta il

proprio stato all’utente.

18

Page 19: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

INTERFACCIA UTENTE - 2

19

display

comandi

Ma anche…

comandi

display

Page 20: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

INTERFACE DESIGN

➤ L’interface design è l’attività di progettazione delle interfacce.

Si occupa di definire:

➤ L’aspetto generale delle interfacce, la disposizione e le

relazioni gerarchiche tra i diversi elementi che le

compongono.

➤ Gli aspetti strettamente visivi/sensoriali (visual interface

design) come font, color, elementi grafici.

➤ Una buona interfaccia supporta il flusso di interazione

progettato con l’attività di interaction design.

20

Page 21: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

UN CONFRONTO

INTERACTION DESIGN

➤ Definisce gli elementi dell’interfaccia (comandi e display) e il modo in cui gli utenti li utilizzano.

➤ Ha l’obiettivo di comprendere ed influenzare il comportamento dell’utente.

➤ Si basa su principi e conoscenze che evolvono lentamente.

INTERFACE DESIGN

➤ Determina l’aspetto degli elementi dell’interfaccia.

➤ Si basa su principi e conoscenze in continua evoluzione e soggetti a mode.

Page 22: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ Il prodotto del lavoro

dell’interaction designer è una

serie di rappresentazioni del

flusso di interazione e degli

elementi che caratterizzano

un’interfaccia.

INTERACTION DESIGNER ALL’OPERA

22 By Lindsey Smith (WMF) [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons

Page 23: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ Cos’è?

➤ Uno sketch è un disegno a mano libera eseguito

rapidamente.

✦ E’ uno strumento di lavoro, non un prodotto finito.

✦ Non deve essere “bello” o verosimile, ma efficace.

SKETCHING: IL SUPERPOTERE DELL’INTERACTION DESIGNER

23

Page 24: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ Nel processo di design:

➤ Annotare e sviluppare idee;

➤ Confrontare idee;

➤ Confrontarsi con altri progettisti;

➤ Lavorare in gruppo su un’idea;

➤ Spiegare un’idea ad altri membri del team;

➤ Test con l’utente

➤ Perché è utile?

➤ Veloce

➤ Economico

➤ Non necessita di strumenti sofisticati

➤ Alla portata di tutti

➤ Stimola la collaborazione

SKETCHING: IL SUPERPOTERE DELL’INTERACTION DESIGNER

Bill Verplank

Page 25: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ Si chiama User Experience (UX) l’insieme di interazioni che una persona (l’utente) ha con un prodotto, un servizio, un’organizzazione.

➤ Le interazioni si possono riferire tanto al mondo digitale, quanto a quello fisico.

➤ Per progettare una user experience soddisfacente, occorre considerare lo stile di vita dell’utente e il contesto in cui questi fruirà di un certo prodotto/servizio.

USER EXPERIENCE - 1

25

Fonte: http://www.ninjamarketing.it/2017/06/27/glossario-della-user-experience/

Page 26: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ “I thought human interface

and usability were too

narrow. I wanted to cover all

aspects of the person’s

experience with the system,

including industrial design

graphics, the interface, the

physical interaction, and the

manual.”

USER EXPERIENCE - 2

Donald Norman

Page 27: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

UN CONFRONTO

USER EXPERIENCE

➤ Considera in modo ampio tutte le occasioni di “contatto” tra utente e prodotto.

➤ Si occupa di capire chi siano gli utenti e quali siano i loro bisogni.

➤ Si basa su costanti valutazioni.

INTERACTION DESIGN

➤ Ha l’obiettivo di progettare

l’interazione tra utente e prodotto,

concentrandosi sui momenti di

interazione diretta.

Page 28: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ Non esiste una user

experience oggettivamente

buona o cattiva.

➤ Creare una buona user

experience significa

considerare diversi fattori:

➤ Utilità

➤ Usabilità

➤ Apprendibilità

➤ Estetica

➤ Emozioni

VALUTARE LA USER EXPERIENCE

Page 29: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PER RIEPILOGARE

29

Chi sono gli utenti?

Di cosa hanno bisogno?

Quali sono i loro obiettivi?

Come dovrebbe funzionare un

prodotto per permettere agli utenti

di raggiungere i loro obiettivi?

Che aspetto dovrebbe avere

l’interfaccia perché sia facile e

piacevole da utilizzare nel modo

previsto?

UX Researcher Interaction Designer UI Designer

Page 30: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

CONTESTI D’USO - 1

STATIONARY

Non è necessario

(ma è possibile) che

i dispositivi siano

portatili.

SEATED

L’utente ha

entrambe le mani

libere per interagire

col device e può

dedicare tutta la

sua attenzione

all’interfaccia.

STANDING

L’utente regge il

device con una

mano e ci lavora

con l’altra.

MOVING

L’utente regge e

utilizza il device con

la stessa mano

(deve averne una

libera).

Page 31: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

CONTESTI D’USO - 2

PORTABILITA’ ATTENZIONEe GESTIONE APPRENDIBILITA’

alcuni primaria due mani,

stabile tecnologica

alcuni primaria due mani,

stabile metaforica

due secondaria due mani,

instabile

metaforica

uno minima una mano,

sbilanciato idiomatica

Il contesto “moving” presenta il maggior numero di vincoli,

ma un device mobile con un’interfaccia adatta può essere usato

in tutti i contesti.

Page 32: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

INTERAZIONI PROBLEMATICHE - 1

➤ Tra le principali criticità nell’interazione con i dispositivi mobili

ci sono:

32

L’inserimento di

ampie porzioni di

testo.

L’uso di intefacce

che richiedono

precisione nell’input.

A fronte di un’ampia

offerta di app diverse,

per la maggior parte

gratuite, l’attenzione

dell’utente è limitata.

Page 33: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PROGETTARE PER PIÙ PIATTAFORME

➤ Si inizia progettando un’app “generica”:

➤ Tutta l’attenzione è sui contenuti e sul

modo in cui sono connessi tra loro.

➤ Successivamente si adatta il progetto ad

ogni piattaforma, scegliendo i modelli di

interazione che meglio valorizzano i

contenuti e che sono più familiari agli

utenti.

Page 34: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PROGETTARE PER UNA PIATTAFORMA SPECIFICA

➤ E’ buona norma consultare le linee guida ufficiali per la

piattaforma a cui ci si rivolge.

34

https://goo.gl/x4bvBu

https://goo.gl/Kbv3wW

Page 35: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ Un’ottima strategia per scegliere i

modelli di interazione più appropriati

(e imparare qualcosa sui propri

utenti) consiste nell’analizzare le

applicazioni che hanno obiettivi

simili o si rivolgono allo stesso tipo

di utenti.

➤ Per una panoramica generale, è

utile analizzare le applicazioni più

scaricate per la propria piattaforma

di riferimento.

PROGETTARE “CON IL RAMPINO”

"Imparai sempre a leggere col rampino,

tirando al mio proposito ciò ch'io ritrovava di buono,

notandolo nel mio zibaldone e servendomene a suo tempo“

[Giambattista Marino]

Page 36: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

➤ La maggior parte delle app utilizza uno o più metodi di navigazione standard, in combinazione o in punti diversi.

➤ I metodi di navigazione riguardano le relazioni e i passaggi tra le viste che compongono un’app.

➤ Una vista è una “finestra” o una “schermata”.

➤ I metodi di navigazione stabiliscono se e in che modo, a seguito di un evento o di un’azione dell’utente, l’app debba aggiornare le informazioni presenti nella vista corrente oppure trasferire l’utente ad una vista diversa.

SCHEMI DI NAVIGAZIONE STANDARD

36

Page 37: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

SCHEMI DI NAVIGAZIONE STANDARD

Page 38: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

APP E CLOUD COMPUTING

Page 39: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

APP BACKEND

➤ App non è solo UX/UI

➤ Scambio dati/memorizzazione db/

integrazione altri servizi/sicurezza/…

Page 40: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

CARATTERISTICHE DI UN BACKEND

➤ Essere ospitato da un hosting e raggiungibile pubblicamente

➤ Gestire database con i dati

➤ Implementare un protocollo di comunicazione con l’app

➤ Gestire sicurezza

➤ Essere in grado di “scalare”

➤ Offrire un’interfaccia di amministrazione

Page 41: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

COS’È IL CLOUD?

➤ Insieme di tecnologie che

consentono l’accesso a

risorse software e hardware

➤ Accesso alle risorse tramite

server remoto

➤ Richiesta una connessione

internet

➤ Servizio offerto da un

provider, spesso in

abbonamento

Page 42: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

COS’È IL CLOUD?

➤ Risorse software/hardware:

✦ Configurabili

✦ “Tagliate su misura” per l’utilizzo richiesto

✦ Gestibili esternamente

Page 43: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

RISORSE DEL CLOUD COMPUTING

➤ Esempi:

✦ CPU

✦ Storage

✦ Reti

✦ Applicazioni

✦ Servizi

Page 44: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

PERCHÉ IL CLOUD?

➤ Abbassamento dei costi

➤ Abbassamento dei rischi

➤ Accesso ai servizi in ogni momento e in ogni luogo

➤ Servizi offerti on-demand

➤ Pay-per-use

Page 45: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

ABBASSAMENTO DEI COSTI

➤ Upgrade e downgrade delle risorse in tempo reale e in base

alle esigenze del momento

➤ Infrastrutture IT crescono con il business

dell’azienda

➤ No costi di personale esperto per

installazione/configurazione/manutenzione

➤ Time-to-market per l’implementazione IT

nuova e ottimizzata ridotto

Page 46: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

RISCHI RIDOTTI

➤ Sicurezza è un problema dell’hosting provider

➤ Assume ruolo centrale e adotta le misure necessarie a

garantirla

➤ Gestire solo gli aspetti di sicurezza dello

specifico applicativo

Page 47: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

ANCHE SVANTAGGI

➤ Aggiornamenti automatici

✦ rimozione di funzionalità deprecate

✦ nuova opzione che “rompe” la sicurezza del servizio

✦ nuova interfaccia

Page 48: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

ANCHE SVANTAGGI

➤ Costi vantaggiosi per piccole implementazioni,

per grandi aziende non è sempre così

➤ Termini di servizio e

condizioni offerte poco chiare

➤ Privacy e proprietà dei dati, perdita di controllo

➤ Problemi di connettività

Page 49: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPOLOGIE DI CLOUD

➤ In base alla sicurezza ci sono tre forme di cloud

✦ Public

✦ Private

✦ Hybrid

✦ Community

Page 50: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPOLOGIE DI CLOUD: PUBLIC

➤ Tipicamente modello pay-as-you-go

➤ Ambiente multi-tenant

➤ Self-managed

➤ Servizi e infrastrutture sono fornite attraverso Internet

➤ Efficienza di condivisione delle risorse

➤ Vulnerabile

Page 51: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPOLOGIE DI CLOUD: PRIVATE

➤ Servizi e infrastrutture mantenute in una rete privata e

dedicata

➤ Livello di sicurezza e controllo alto

➤ Costo elevato di acquisto e mantenimento del software e

infrastrutture

➤ Alta personalizzazione

Page 52: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPOLOGIE DI CLOUD: HYBRID

➤ Utilizzo di public cloud e private cloud per gestione delle

risorse

➤ Gestione di multipli cloud come un’unica entità

➤ Problemi:

✦ comunicazione tra cloud

✦ sicurezza

Page 53: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPOLOGIE DI CLOUD: COMMUNITY

➤ È un hybrid/private cloud ma condiviso tra diverse

organizzazioni

➤ Tipicamente host esterno, ma un’organizzazione potrebbe

occuparsi dell’host

➤ Stesse caratteristiche di un hybrid

Page 54: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPI DI SERVIZI

➤ Software as a Service (SaaS:

servizio che fornisce

un’applicazione software che

essere utilizzata su richiesta

➤ Platform as a Service (PaaS):

servizio che fornisce una

piattaforma e un ambiente per

permettere lo sviluppo di

applicazioni e servizi attraverso

internet

➤ Infrastructure as a Service (IaaS):

fornisce hardware virtualizzato

Page 55: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

TIPI DI SERVIZI

Page 56: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

CLASSIFICAZIONE CLOUD PROVIDER

SaaS PaaS IaaS

Cloud Computing enablers

Page 57: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

AMAZON WEB SERVICES

➤ Piattaforma offerta da amazon.com

➤ Comprende servizi PaaS e IaaS

➤ Tutti i servizi gestibili da console web

Page 58: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

AMAZON DATA CENTERS

Page 59: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio
Page 60: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

AMAZON MACHINE LEARNING

➤ Machine Learning e Artificial Intelligence

per tutti e per diverse applicazioni

➤ Modelli e algoritmi senza troppe operazioni

di messa a punto

➤ Architetture veloci e scalabili

Page 61: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

AMAZON DEVICE FARM

➤ Problema sviluppo app: varietà di dispositivi

➤ Testing continuo

➤ Trovare problemi specifici

Page 62: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

GOOGLE

Page 63: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

GOOGLE DATA CENTERS

Page 64: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

GOOGLE APP ENGINE

➤ Piattaforma di cloud computing per servizi di tipo PaaS

➤ Fornisce una serie di strumenti per realizzare applicazioni web

✦ Supporto di diversi linguaggi

✦ Altamente scalabile

✦ Fully managed

✦ Espandibile con altri servizi cloud

Page 65: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

GOOGLE APPS

➤ Fornisce servizi tipo SaaS

➤ Insieme di web application consumer e business (free e a

pagamento)

✦ Google Apps (free)

✦ Google Apps for business

✦ Google Apps for education

✦ Google Apps for government

✦ Google Apps for nonprofit

Page 66: APP E Cloud computing - DiUniTogoy/materiale/1718/VerneroGrillo1718.pdf · 2018-05-17 · PROGETTARE APP MOBILE PER GLI UTENTI NELLE NUVOLE: UX DESIGN E ARCHITETTURE CLOUD 16 maggio

DOMANDE?