Analisi di fattibilità e delle problematiche in tema di Application Building per terze parti su Android. Il significato di chiave privata e firma digitale per le applicazioni Android.
Le scelte progettuali per realizzare sistemi per la creazione assistita di webservice per la realizzione di applicazioni mobile.
Sorgente e tesi dispnonibili su: https://github.com/peppo1616/Mywebview
Ideare un app e farla fruttare: quanti modi? Quale scegliere?Diego La Monica
Chi ha scritto “2001: Odissea nello spazio” una volta disse che: “Le nuove idee passano attraverso tre fasi: Non può essere fatto. Probabilmente si può fare, ma non ne vale la pena. Ho sempre detto che si trattava di una buona idea!” Ai giorni nostri, qualsiasi Idea può diventare un’App ed essere pubblicata negli store. E le fasi da percorrere sono 4: ideazione, progettazione, sviluppo e pubblicazione. E se volessimo anche guadagnarci dall’idea? Come un uccellino che saltella da un ramo all’altro, analizzeremo tutti gli aspetti che ci porteranno a determinare quale potrà essere la possibile fonte di guadagno alle spalle della nostra app.
Ideare un app e farla fruttare: quanti modi? Quale scegliere?Diego La Monica
Chi ha scritto “2001: Odissea nello spazio” una volta disse che: “Le nuove idee passano attraverso tre fasi: Non può essere fatto. Probabilmente si può fare, ma non ne vale la pena. Ho sempre detto che si trattava di una buona idea!” Ai giorni nostri, qualsiasi Idea può diventare un’App ed essere pubblicata negli store. E le fasi da percorrere sono 4: ideazione, progettazione, sviluppo e pubblicazione. E se volessimo anche guadagnarci dall’idea? Come un uccellino che saltella da un ramo all’altro, analizzeremo tutti gli aspetti che ci porteranno a determinare quale potrà essere la possibile fonte di guadagno alle spalle della nostra app.
Come è possibile ricavare da un insieme di requisiti del business i requisiti determinanti per la comprensione della quota parte «informatica» di un problema?
Come è possibile ricavare da un insieme di requisiti del business una stima affidabile del costo dello sviluppo?
Steps to develop apps for mobile that access internet realted contents.
It simply explores basic concepts of developmnet. Written in italian.
---
Espone i passi necessari a sviluppare un app mobile in grado di accedere a contenuti su web. Espone i concetti basilari del processo di sviluppo.
UserPie è una web-app che implementa 5 differenti tool per la valutazione della user experience e dell'usabilità da remoto. La presentazione mostra l'idea e il modello di business, lo stato attuale del progetto e la roadmap. Attualmente, UserPie cerca nuovi soci-partner e/o collaboratori per ulteriori sviluppi.
In questa presentazione analizzo le principali obiezioni fatte dalle PMI quando viene loro proposto di adottare soluzioni Open Source, i "comportamenti a rischio" che possono far fallire i progetti di migrazione all'Open Source e generare sfiducia verso di esse, ma anche quali sono i vantaggi per le imprese che riescono ad adottare con successo soluzioni Open Source.
Specifica dei requisiti.
Riprogettazione dell’interfaccia dell’applicazione ufficiale di Atm, “ATMobile”, con relativi test di usabilità.
L’obiettivo principale è quello di migliorare l’interazione uomo-applicazione in modo da renderne più intuitivo l’utilizzo e facilitare la ricerca delle informazioni
“Applicazioni mobile con Powerapps - Soluzioni low code su cloud “.
Power Apps è una piattaforma cloud che fornisce strumenti di sviluppo, servizi e connettori per creare applicazioni personalizzate. In questa slide approfondiremo meglio tutti gli aspetti e le sue caratteristiche.
meetHub! di Social Hub Genova - Come creare una App di Successo - Michele Fe...Social Hub Genova
meetHub! di Social Hub Genova - Come creare una App di Successo - Michele Ferraro
I segreti delle App di successo, raggiungere nuovi clienti e far crescere il business. Michele Ferraro co-founder di Dot Next, società che progetta e realizza siti web, e-commerce e prodotti multimediali, ci racconta la sua esperienza su “Come creare una App di Successo”!
Usare un’app mobile per il lavoro? Un’app può essere uno strumento utile per la propria attività, ma ne abbiamo veramente bisogno? L’accesso ai contenuti digitali è cambiato rapidamente negli ultimi anni e oggi gli utenti preferiscono lo smartphone al desktop, ma non sempre l’app è la scelta migliore.
Vediamo insieme come si sviluppa un’applicazione, quali sono gli ambiti in cui un’app può davvero aiutare il proprio business e quanto può costare la creazione di un’app mobile.
Open source e cloud per il non profit - settembre 2016 -Claudio Tancini
Molte realtà NonProfit subiscono un forte gap nell’utilizzo delle tecnologie informatiche. La combinazione Open Source Software e Infrastrutture in Cloud permette il recupero con maggiore velocità e minor rischio economico, la sessione ne condivide i vantaggi e i punti di attenzione.
Come è possibile ricavare da un insieme di requisiti del business i requisiti determinanti per la comprensione della quota parte «informatica» di un problema?
Come è possibile ricavare da un insieme di requisiti del business una stima affidabile del costo dello sviluppo?
Steps to develop apps for mobile that access internet realted contents.
It simply explores basic concepts of developmnet. Written in italian.
---
Espone i passi necessari a sviluppare un app mobile in grado di accedere a contenuti su web. Espone i concetti basilari del processo di sviluppo.
UserPie è una web-app che implementa 5 differenti tool per la valutazione della user experience e dell'usabilità da remoto. La presentazione mostra l'idea e il modello di business, lo stato attuale del progetto e la roadmap. Attualmente, UserPie cerca nuovi soci-partner e/o collaboratori per ulteriori sviluppi.
In questa presentazione analizzo le principali obiezioni fatte dalle PMI quando viene loro proposto di adottare soluzioni Open Source, i "comportamenti a rischio" che possono far fallire i progetti di migrazione all'Open Source e generare sfiducia verso di esse, ma anche quali sono i vantaggi per le imprese che riescono ad adottare con successo soluzioni Open Source.
Specifica dei requisiti.
Riprogettazione dell’interfaccia dell’applicazione ufficiale di Atm, “ATMobile”, con relativi test di usabilità.
L’obiettivo principale è quello di migliorare l’interazione uomo-applicazione in modo da renderne più intuitivo l’utilizzo e facilitare la ricerca delle informazioni
“Applicazioni mobile con Powerapps - Soluzioni low code su cloud “.
Power Apps è una piattaforma cloud che fornisce strumenti di sviluppo, servizi e connettori per creare applicazioni personalizzate. In questa slide approfondiremo meglio tutti gli aspetti e le sue caratteristiche.
meetHub! di Social Hub Genova - Come creare una App di Successo - Michele Fe...Social Hub Genova
meetHub! di Social Hub Genova - Come creare una App di Successo - Michele Ferraro
I segreti delle App di successo, raggiungere nuovi clienti e far crescere il business. Michele Ferraro co-founder di Dot Next, società che progetta e realizza siti web, e-commerce e prodotti multimediali, ci racconta la sua esperienza su “Come creare una App di Successo”!
Usare un’app mobile per il lavoro? Un’app può essere uno strumento utile per la propria attività, ma ne abbiamo veramente bisogno? L’accesso ai contenuti digitali è cambiato rapidamente negli ultimi anni e oggi gli utenti preferiscono lo smartphone al desktop, ma non sempre l’app è la scelta migliore.
Vediamo insieme come si sviluppa un’applicazione, quali sono gli ambiti in cui un’app può davvero aiutare il proprio business e quanto può costare la creazione di un’app mobile.
Open source e cloud per il non profit - settembre 2016 -Claudio Tancini
Molte realtà NonProfit subiscono un forte gap nell’utilizzo delle tecnologie informatiche. La combinazione Open Source Software e Infrastrutture in Cloud permette il recupero con maggiore velocità e minor rischio economico, la sessione ne condivide i vantaggi e i punti di attenzione.
Generazione automatica diagrammi di rete con template pptx
Market e Tools: Utility per la personalizzazione di applicazioni Android
1. Market e Tools: Utility
per la personalizzazione
di applicazioni Android
Presentata da: Andrea Pola
Relatore: Vittorio Ghini
2. Introduzione
• A chi si rivolge questa tesi?
Agli sviluppatori che devono realizzare applicazioni
mobile per terzi
• Di cosa parla?
Costruire codice modulare utile per rilasciare uno
stesso progetto a diversi clienti
Realizzare un sistema online che permetta
direttamente al cliente di costruire una
applicazione mobile
3. Obiettivi della tesi
Ottenere un’analisi completa per Android
Analizzare lo stato dell’arte
Mostrare le scelte discutibili adottate dai
sistemi commerciali
Realizzare un webservice di demo per Android
Mostrare che il tema è tutt’ora in evoluzione
4. Personalizzazione di applicazioni
• E’ una tecnica che permette il riutilizzo di un
progetto base, attraverso l’uso di codice modulare,
per realizzare applicazioni per diversi clienti con
necessità simili
• Come?
– Attraverso l’uso di un applicazione base che
rappresenti le necessità comuni ai clienti
– Attraverso un file di configurazione che
rappresenti i dati caratteristici del cliente: ad
esempio, brand, dati fiscali…
5. Personalizzazione di applicazioni:
• Come fornire questo servizio?
– Una soluzione potente è tramite webservice
• Vantaggi:
– per il cliente: autonomia, velocità ,diminuzione dei costi
– per lo sviluppatore: diminuzione dei costi di produzione,
soddisfare molti clienti rapidamente, riuso di progetti
• Cosa permette di fare?
– Permette a diversi tipi di commercianti di fornire piccoli
servizi e semplici applicazioni in maniera autonoma sul
market, ad esempio Android
6. Webservice: Schema di funzionamento
Il cliente customizzatore inserisce i dati in input e compone la propria
applicazione attraverso i moduli disponibili
Il webservice genera l’applicazione personalizzata e la rilascia attraverso
l’interfaccia di output
Tale applicazione è disponibile al cliente che può cosi rappresentare la
propria azienda sul market.
7. Problemi da affrontare
• Tecnici:
– … compilazione live,compilazioni concorrenti: affrontati in
modo completo nella tesi
• Progettuali: Paternità dell’applicazione creata.
– In Android, per il rilascio sul market è necessario firmare
l’app con un chiave privata reale. A chi è legata questa
chiave?
– Normalmente queste firme legano il proprietario
all’applicazione
– Si prospettano due scelte: o allo sviluppatore oppure al
cliente.
8. Scelte progettuali possibili
1. Rilascio dell’applicazione con una chiave generata per conto del cliente
2. Rilascio dell’applicazione con una chiave caricata dal cliente stesso
3. Rilascio dell’applicazione non firmata e di un tool per la firma assistita
4. Rilascio dell'applicazione firmata dal proprietario del Web Service
Scelta Vantaggi Svantaggi
1 Semplice Gestione di dati e chiavi private di terzi
2 Semplice Gestioni di chiavi private di terzi
3 Formale Soluzione non immediata per il cliente
4 Trasparente Potenziali problemi di responsabilità
1,2 Non rispettano la definizione di chiave privata. 4 ha potenziali problemi di
responsabilità. Google Stesso sottolinea che la chiave privata deve essere mantenuta
in un posto sicuro…. Ma analizziamo nel dettaglio..
9. Scelte progettuali possibili: analisi
• Le scelte progettuali 1 e 2 non rispettano il principio di chiave
privata. L’utente sta fornendo la chiave al webservice (terzi):
– In caso di furto, malintenzionati potrebbero generare certificati o app
a nome dei clienti!
• La scelta 4 invece appare semplice ma nasconde un problema:
– Il cliente costruisce un’applicazione che realizza le stesse funzionalità
di un’altra già pubblicata violando copyright
– Adottando la scelta 4, l’applicazione è firmata dal proprietario del
webservice.
– In caso di denuncia, che responsabilità ha il firmatario?
• Pare essere la scelta progettuale n. 3 la preferita
10. Stato dell’arte: scelte adottate dai
sistemi commerciali
Servizio Scelta progettuale
Mit App Inventor 2
AppsBuilder 4
• Nessuno dei sistemi commerciali adotta la scelta 3.
• Eppure AppsBuilder ha raggiunto un grande successo
a livello internazionale …
• E’ chiaro dallo stato dell’arte come sia ancora
informale l’uso delle firme in ambiente Android e
come la scelta progettuale migliore sia da valutare in
funzione del’usabilità da parte dell’utente
11. Demo
Caso d’uso:
•Utente A ha un'azienda web
e vuole pubblicare un suo
servizio web mobile sul
market Android a costo
ridotto senza riscrivere
l'applicazione in modo nativo.
• Si reca sul Web Service,
inserisce l'url del suo servizio
web e il nome
dell'applicazione.
• A questo punto il sistema
Personalizza l'applicazione
Base (Webview in questo
caso) e Utente A ottiene
senza sforzo un modo per
essere nel market Android
senza nuovi costi.
12. Funzionamento
Punti critici :
Sono elencati i punti critici, per
la sicurezza dei dati e del
sistema. Che necessitano di
attenzione durante lo sviluppo.
1. comunicazione verso shell
2. deposito in directory
temporanea
3. Reperimento della
applicazione per il
download
Lettura schema: dall’alto al basso
13. Conclusione
• In questa tesi si sono date le basi tecniche e
concettuali per la personalizzazione di
applicazioni Android, arrivando allo sviluppo di un
semplice esempio di webservice.
• Si sono mostrate le scelte progettuali discutibili
adottate in commercio. Mostrando che il
concetto di firma anche se obbligatorio non è
ancora del tutto formalizzato nella piattaforma
Android: lo stesso market per ora non effettua
controlli fra firma dell’applicazione e account di
pubblicazione.