Sviluppo di un'applicazione Android per i servizi studenti



Documenti analoghi
UNIVERSITÀ DEGLI STUDI DI NAPOLI PARTHENOPE FACOLTÀ DI SCIENZE E TECNOLOGIE Corso di Laurea In Informatica

Guida Compilazione Piani di Studio on-line

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

Università Politecnica delle Marche. Progetto Didattico

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

SOLUZIONE Web.Orders online

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Alfa Layer S.r.l. Via Caboto, Torino ALFA PORTAL

STUDIUM.UniCT Tutorial per gli studenti

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

Attività federale di marketing

Il modello veneto di Bilancio Sociale Avis

UN APP FLESSIBILE E INTUITIVA PER GESTIRE I TUOI AFFARI IN TUTTA COMODITÀ

GUIDA ALLA COMPILAZIONE DEL PIANO DI STUDI ON-LINE

CREA IL CATALOGO DEI TUOI PRODOTTI SU IPAD E IPHONE CON UN APP. ANZI, CON UPP!

GUIDA UTENTE PRIMA NOTA SEMPLICE

Guida alla registrazione on-line di un DataLogger

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

Regolamento Approvato dal Consiglio di Amministrazione del CSI-Piemonte il 16 luglio 2007

Sito web per la presentazione e l accesso ai servizi di Ruven integrato con la piattaforma B2B del pacchetto software ERP Stratega.NET.

INGEGNERIA DEL SOFTWARE

WebGis - Piano Comprensoriale di Protezione Civile

SOMMARIO... 3 INTRODUZIONE...

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente

Il Sistema Nazionale di Autovalutazione

Pagina Personale Docente. Guida Utente. Progetto DISCITE

Il sistema C.R.M. / E.R.M.

UN MODELLO DI QUALITÀ PER I SITI WEB

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

Applicazioni web centrati sui dati (Data-centric web applications)

GUIDA PER IL DOCENTE ALL UTILIZZO DELL APPLICATIVO ONLINE E PORTFOLIO

Siti web centrati sui dati (Data-centric web applications)

QRcode immobiliare QRpass al servizio del settore immobiliare

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

GESGOLF SMS ONLINE. Manuale per l utente

MANUALE UTENTE. P.I.S.A. Progetto Informatico Sindaci Asl

PROCEDURA APERTA PER L AFFIDAMENTO DELLA REALIZZAZIONE DI UN APP PER LA PRENOTAZIONE DELLE PRESTAZIONI SANITARIE E SERVIZI CONNESSI.

Software per Helpdesk

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

Reti di Telecomunicazione Lezione 6

Come leggere ed interpretare la letteratura scientifica e fornire al pubblico informazioni appropriate sui farmaci

Gestione dei documenti e delle registrazioni Rev. 00 del

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Lezione 1 Introduzione

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

Manuale Utente Albo Pretorio GA

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

ESERCITAZIONE Semplice creazione di un sito Internet

Il database management system Access

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

COME AVERE SUCCESSO SUL WEB?

COMUNICAZIONE UTENTI SISTEMI-PROFIS INSTALLAZIONE GE.RI.CO e PARAMETRI2015

Generazione Automatica di Asserzioni da Modelli di Specifica

Lo scenario: la definizione di Internet

Utilizzo della APP IrriframeVoice. Versione 1.0 maggio 2015

Registratori di Cassa

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

Manuale LiveBox WEB ADMIN.

IL LAVORO CHE TI CERCA

REALIZZAZIONE DI UN LABORATORIO REMOTO PER ESPERIENZE DI ROBOTICA EDUCATIVA: LATO CLIENT

Capitolo 4 Pianificazione e Sviluppo di Web Part

Faber System è certificata WAM School

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

NOVITÀ SITI COMMERCIALISTA

Università degli Studi di Messina

marketing highlights Google Analytics A cura di: dott. Fabio Pinello

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I

La prima piattaforma per chi insegna e per chi impara l italiano

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata.

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto

RICEZIONE AUTOMATICA DEI CERTIFICATI DI MALATTIA 1.1. MALATTIE GESTIONE IMPORT AUTOMATICO 1.2. ATTIVAZIONE DELLA RICEZIONE DEL FILE CON L INPS

IL SUO NOME SEMPRE IN PRIMO PIANO Aderendo ad uno dei nostri prodotti/servizi il suo nome sarà sempre in evidenza e nelle prime posizioni;

ACQUISTI DI BENI E SERVIZI IN MEPA E CONSIP

esales Forza Ordini per Abbigliamento

4.5 CONTROLLO DEI DOCUMENTI E DEI DATI

MANUALE DELLA QUALITÀ Pag. 1 di 6

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Database. Si ringrazia Marco Bertini per le slides

Concetti di base di ingegneria del software

MODULO 5 Appunti ACCESS - Basi di dati

U N I V E R S I T À D E G L I S T U D I D I S A L E R N O

SOMMARIO Gruppo 4 - All right reserved 1

Software Servizi Web UOGA

Nota Tecnica UBIQUITY 5 TN0019. Il documento descrive le novità introdotte con la versione 5 della piattaforma software ASEM Ubiquity.

Informativa sulla privacy

LA PROGETTAZIONE DI UN NUOVO STRUMENTO PER IL WEB

Dropbox di classe. É un servizio internet fornito gratuitamente (funzioni base).

L IT a supporto della condivisione della conoscenza

DATA BASE ON LINE (BANCA DATI MODULI SPERIMENTALI)

Come creare il test di Yasso tramite l applicazione Training Center

03. Il Modello Gestionale per Processi

LINEE GUIDA PER L EROGAZIONE DELLA FORMAZIONE INTERNA

Transcript:

UNIVERSITÀ DEGLI STUDI DI NAPOLI PARTHENOPE FACOLTÀ DI SCIENZE E TECNOLOGIE Corso di Laurea In Informatica (PERCORSO GENERALE) Elaborato di Laurea Sviluppo di un'applicazione Android per i servizi studenti Relatore Chiar.mo Prof. Raffaele MONTELLA Candidato Rosario PELLECCHIA Matr. LI/827 Anno Accademico 2011-2012

Abbiamo la testa rotonda per pensare in tutte le direzioni. Francis Picabia - (1922)

Ringraziamenti Questa pagina è per me importante. Non avrei potuto realizzare questo desiderio da solo. Voglio innanzitutto ringraziare il Prof. Raffaele Montella che, con la sua competenza, genialità, allegria, presenza fisica e virtuale (da Chicago), mi ha accompagnato in questo lavoro di tesi. Ringrazio il Prof. Giulio Giunta, persona, la cui gentilezza, unita alla sua professionalità, mi è sempre stata di esempio e di sostegno nei momenti difficili e i docenti che, con la loro preparazione e umanità, non mi hanno fatto mai pentire della scelta fatta in un età in cui bisogna conciliare il lavoro con lo studio. Ringrazio il mio amico di studi Giuseppe e la mia amica di traduzioni Milena. Durante questo percorso ho avuto la fortuna di poter contare su amici fidati che mi sono stati vicino, soprattutto nel periodo più faticoso, alla fine, coloro che mi hanno aiutato nei momenti difficili di studi e non: Angelica, Paolo, Paolo, Paolo (ognuno di loro sa a chi mi riferisco), Alba, Claudio ed Enzo. L elenco è lungo, soprattutto con una bellissima famiglia numerosa come la mia che ha sempre creduto in me e mi ha sostenuto. A loro, che tanto amo, e senza la quale tutto ciò non sarebbe stato possibile, dedico questo mio ennesimo lavoro, il più bello, ai miei genitori Vittorio e Concetta, i miei fratelli Antonio, Fulvio, Ciro, Salvatore e la mia sorellina Gemma. Grazie di cuore. ii

ABSTRACT L obiettivo di questo elaborato di Laurea è la creazione di un applicazione dedicata al servizio studenti dell Università Parthenope di Napoli. Il lavoro è iniziato con un analisi delle esigenze relative ai servizi universitari ed in particolare si è approfondita la crescente necessità di avere servizi che si inseriscano in un più ampio ambito legato alle smart cities. Successivamente, si è effettuata una ricerca ed analisi delle applicazioni attualmente proposte da altre Università, sia nazionali che internazionali, raccogliendo un primo campione di possibili servizi da offrire all utenza dell Università Parthenope. Si sono analizzate le tecnologie utilizzate e le motivazioni che portano alla loro scelta. In particolare, si è descritta la tecnologia web service REST (REpresentational State Transfer) nei concetti fondamentali e i suoi vincoli nonché delle relative implicazioni architetturali. E stato scelto JSON (JavaScript Object Notation) come formato di rappresentazione dei dati scambiati fra le API adoperate e l applicazione. Si sono quindi illustrate le specifiche delle API realizzate dall Università Parthenope che hanno composto l ossatura dello sviluppo dell applicazione. La realizzazione di questi servizi è stata resa possibile dall uso del Framework FRAPI di cui si sono descritte le specifiche funzionali. Si è partecipato alla messa a punto delle API interagendo con i rispettivi autori. L applicativo è stato realizzato, secondo una scelta opportunamente documentata, su piattaforma ANDROID di cui si sono descritte le iii

caratteristiche architetturali e le principali funzionalità messe a disposizione del programmatore. La progettazione ha seguito una serie di analisi e ricerche compiute al fine di rendere il risultato del lavoro svolto il più possibile affidabile e rispondente alle esigenze dell utenza cui è rivolto. Questo elaborato di tesi è sinteticamente divisibile in due componenti fondamentali: il primo, formato dall analisi, la progettazione e l implementazione dell applicazione, è la parte introduttiva del documento, mentre la descrizione funzionale ed il confronto con analoghi prodotti software ne costituisce la seconda parte. In conclusione, sono stati proposti degli scenari di sviluppo futuri e possibili ampliamenti del lavoro svolto. Il contributo innovativo di questo lavoro di tesi consiste nell aver sviluppato l applicazione secondo i più avanzati canoni di quello che è definito il WEB 3.0 ovvero l internet delle cose intelligenti. Potremmo in definitiva considerarla una tesi 3.0. Infine, trattandosi di un applicazione reale e non di un mero esercizio didattico, si è utilizzata la piattaforma sociale http://students.uniparthenope.it, per la realizzazione in un programma di beta-testing dell applicazione. iv

Indice 1. Introduzione... 1 1.1 Smart Cities... 3 2. Stato dell'arte... 9 3. Tecnologie utilizzate... 17 3.1 Il paradigma REST... 18 3.1.1 Storia... 18 3.1.2 Concetto... 18 3.1.3 Costraints (restrizioni)... 21 3.2 Il formato JSON... 24 3.3 Le API RESTful... 27 3.3.1 API Uniparthenope... 29 3.4 Il framework FRAPI... 62 3.5 Il sistema operativo ANDROID... 66 4. Progettazione... 79 4.1 Diagramma delle componenti... 88 4.2 Scenari: diagrammi di sequenza... 89 4.3 Diagramma dell architettura utilizzata... 92 5. Implementazione... 95 5.1 AndroidManifest... 96 v

5.2 Componenti implementate... 97 5.3 Activitiy: esempio d uso delle APIs Parthenope... 107 6. Dimostrazione e valutazione... 115 6.1 Storyboard scenari... 123 7. Conclusioni e sviluppi futuri... 128 Bibliografia... 130 vi

Indice delle figure Figura 1 - Caratteristiche e componenti di una Smart City... 5 Figura 2 Esempio flusso dati dal sito web a un'app Android... 6 Figura 3 - Portale sviluppatori della città di Chicago... 7 Figura 4 - Console SODA per il testing delle API... 8 Figura 5 - Screenshot app della Università Bocconi... 10 Figura 6 - Screenshot app dell Università "Sapienza"... 11 Figura 7 - Screenshot applicativo Università di Foggia... 12 Figura 8 - Screenshot app University of Chicago... 13 Figura 9 - Schema valutazione metrica applicazioni... 16 Figura 10 - Schema Api rest ed engine... 19 Figura 11 - Tipica architettura REST da un punto di vista WEB... 20 Figura 12 - Accesso dati via HTTP (approccio REST)... 21 Figura 13 Scema richieste REST tra Client e Server... 28 Figura 14 - Interfaccia di amministrazione di FRAPI... 63 Figura 15 - Interfaccia per il testing delle API realizzate con FRAPI... 64 Figura 16 - FRAPI schema Load Balancer e cache... 65 Figura 17 - Architettura di Android... 67 Figura 18 - Ambiente Software di Android... 68 Figura 19 Esecuzione di un Applicazione Java in Android... 68 Figura 20 - Android Activities Stack... 69 Figura 21 - Schema Activity - Content Provider... 70 Figura 22 - Ciclo di vita delle Activity in Android... 76 Figura 23 - Diagramma delle componenti con evidenziate le API UniParthenope... 88 Figura 24 Scenario A: utilizzo dei servizi studenti... 89 Figura 25 - Scenario B: uso Visualizzazione News Scienze e Tecnologie... 90 Figura 26 - Scenario C: visualizzazione degli orari di arrivo Bus... 91 Figura 27 - Diagramma UML Activity MenuUtente... 99

Figura 28 - Diagramma UML Activity NewsActivityMenu... 100 Figura 29 - Diagramma UML Activity MapsActivity... 101 Figura 30 - Diagramma UML Activity DirectoryActivity... 102 Figura 31 - Diagramma UML Activity TransitActivity... 103 Figura 32 - Diagramma UML Activity LibraryActivity... 104 Figura 33 - Diagramma UML Activity EmergencyActivity... 104 Figura 34 - Diagramma UML Activity ServicesMenu... 106 Figura 35 - Diagramma UML Activity ParthenopeActivity... 107 Figura 36 - Layout Menu Utente... 116 Figura 37 - Layout Maps... 116 Figura 38 - Layout News... 117 Figura 39 - Layout Transit... 118 Figura 40 - Layout Directory... 118 Figura 41 - Layout Library... 119 Figura 42 - Layout Video... 119 Figura 43 - Layout Emergency... 120 Figura 44 - Layout Sito Web... 120 Figura 45 - Layout Weather... 121 Figura 46 - Layout Setup... 121 Figura 47 - Layout Services... 122 Figura 48 - Schema valutazione metrica applicazioni... 127 viii

Capitolo 1 Introduzione Il sistema universitario italiano è certamente di grandi dimensioni ed è molto cresciuto negli ultimi decenni: bastano alcuni dati per renderlo evidente. Nel 2009/2010 le Università, statali e non statali, sono 95 (comprese le 6 Scuole Superiori ad ordinamento speciale), con entrate che nell anno 2009 per le sole università statali sono state pari a 13.200 milioni di euro. Il numero dei Comuni dove è presente una sede di almeno un Corso di studio, di primo o secondo livello, è all inizio dell anno accademico 2010/2011 pari a 222. Il numero dei Corsi di studio attivi nel 2009/2010 (lauree di primo e secondo livello e a ciclo unico) era di 5.493 e i corsi d insegnamento attivati nel 2008/2009 erano 159.000. [1] Il sistema universitario nazionale è chiaramente, in quest epoca di globalizzazione, in concorrenza con il sistema internazionale e il confronto tra i diversi paesi deve tener conto delle differenti realtà e delle caratteristiche del sistema formativo. Analizzando le classifiche internazionali prodotte da QS World University Ranking [2] e Times Higher Education [3], che fanno riferimento a 500 Top universities, tenendo conto di vari indicatori che misurano la qualità dei processi formativi e della ricerca, è messo in evidenza che nessuna università italiana è nelle posizioni di rilievo (la prima è Bologna che occupa la 176-esima posizione). 1

Introduzione Tuttavia, è interessante notare che nelle prime 500 università del mondo quindici sono italiane e rappresentano, complessivamente, il 41,8% del sistema universitario nazionale in termini di studenti e oltre il 46,5% in termini di docenti. Ciò significa, verosimilmente, che il nostro sistema assicura una buona qualità media più che riuscire a far emergere effettive punte di eccellenza. D altra parte, gli studenti rappresentano la categoria primaria di stakeholder del sistema formativo universitario, essendo al tempo stesso utilizzatori diretti e compartecipi del processo di formazione. È, quindi, a loro che si devono, in primo luogo, dirigere le attenzioni del sistema, mettendo a disposizione servizi che favoriscano il diritto allo studio, il diritto a fare scelte congrue con l offerta formativa esistente e con la possibilità di lavorare a studi conclusi e il diritto ad apprendere quanto serve per realizzarsi nel lavoro e nella società civile. A tale scopo le informazioni contenute nei siti web degli Atenei sono, in genere, trasparenti e chiare e sono facilmente accessibili. I servizi agli studenti sono dunque il modo in cui il sistema universitario e le singole strutture formative intervengono al fine di soddisfare i diritti degli studenti. Sono il modo in cui il sistema, nel suo complesso, interpreta la propria funzione formativa a corredo di quella didattica in senso stretto. Al fine di favorire un miglior uso dei servizi Universitari si rende necessaria la possibilità di accedere alle informazioni anche attraverso i dispositivi mobili che, al giorno d oggi, rivestono un ruolo sempre più importante, tanto nelle aziende quando nella nostra vita privata, permettendoci di compiere operazioni e svolgere dei compiti che, fino a qualche anno fa, erano eseguibili solo attraverso un normale PC. Dal punto di vista dell informatico sviluppatore di software, le applicazioni devono essere realizzate non solo funzionanti nel senso stretto del termine, ma, anche e soprattutto, funzionali e usabili in maniera multimodale ovvero tramite interfacce desktop, mobili e d intrattenimento. In particolare negli ultimi anni gli Smartphone stanno conquistando quote sempre maggiori del mercato della telefonia mobile, raddoppiando quasi fra il 2004 e 2

Introduzione il 2005 (più di 12 milioni di apparecchi venduti nell'ultimo anno). Nel secondo trimestre 2011 si è verificata in Europa una maggiore vendita di Smartphone rispetto ai normali telefonini, arrivando a 21,8 milioni di unità vendute (i telefonini tradizionali arrivano a 20,4 milioni). [4] Nel mondo, attualmente, gli Smartphone rappresentano il 30% del mercato. [5] Le previsioni della IDC (International Data Corporation) vedono nel 2015 al primo posto, con uno share del 43.8 %, Android con una crescita di 4.9 punti percentuale; ed è per questo motivo che gli sforzi legati alla creazione di applicazioni per il mobile sono concentrati su questa piattaforma. 1.1 Smart Cities Lo sviluppo di applicazioni su mobile per gli studenti universitari s inserisce nel più ampio concetto di Smart Cities. Il concetto di Smart Cities sta guadagnando sempre più importanza; il fine è di rendere disponibili tutti i servizi attraverso l ICT ai cittadini, alle società private e alle autorità che sono parte del sistema di una città. Anche se la maggior parte delle città vogliono essere Smart non esiste una definizione condivisa di cosa questo significhi: esserlo in termini tecnologici, di sviluppo od amministrativi. Una Smart City è più di una città digitale. La Smart City è quella che è capace di legare il capitale fisico (infrastrutture) con quello sociale (umano e culturale) e capace di sviluppare servizi migliori, integrati, condivisi e innovativi. Deve quindi integrare tecnologia, informazione e visione politica in un programma coerente di miglioramenti urbani e dei servizi. E un errore pensare che per creare Smart Cities sia necessario un maggior investimento nell IT: ciò di cui le città e i cittadini hanno bisogno, è, invece, di utilizzare al meglio l IT con l obiettivo di integrare, con migliori risultati, la 3

Introduzione distribuzione delle informazioni sia a livello locale sia nazionale e/o internazionale. Il concetto di Smart Cities può anche essere usato in modi differenti: per descrivere un gruppo di organizzazioni innovative all interno di una regione; la presenza di rami dell industria molto presente nell ICT; l effettivo livello d istruzione degli abitanti di una determinata città; l uso di moderne tecnologie in un contesto urbano, etc. Una definizione chiara rimane comunque elusiva. Una Smart Cities si può definire attraverso sei caratteristiche che la rappresentano: [5] Smart Economy, Smart People, Smart Governance, Smart Mobility, Smart Environment and Smart Living. Questi sei concetti descrivono specifici fattori che possono essere importanti nel definire una Smart City; vedi rappresentazione in Figura 1. L idea di Smart City consiste nell aumento della qualità della vita dei cittadini e dei turisti. Questo scopo può essere raggiunto attraverso un aumento dell efficienza del governo e dello sviluppo delle applicazioni enviroment friendly, di un aumento della mobilità, provvedendo servizi sanitari migliori, stimolando valore economico, etc. Le applicazioni e le esigenze di una Smart City sono raggruppate in cinque caratteristiche: [6] 1) implicazioni economiche, sociali e di privacy; 2) sviluppo dell e-government; 3) salute e sussistenza; 4) sistema di trasporti intelligenti; 5) efficienza energetica ed ambiente. 4

Introduzione Figura 1 - Caratteristiche e componenti di una Smart City Tutti questi ambiti aumentano nuove sfide nel campo della sicurezza e della privacy poiché l utente si aspetta, implicitamente, che i sistemi di accesso a queste informazioni siano sicuri e preservino la privacy. Lo sviluppo di un e-government efficiente ed effettivo deve essere, naturalmente, un prerequisito. La chiave delle Smart Cities è quindi l accordo tra cittadini e società sulla privacy dei dati e la loro condivisione. In aggiunta a quanto detto c è la necessità che le Smart Cities siano integrate in infrastrutture nazionali, regionali e internazionali. Ad esempio la mobilità in aree urbane è sempre un problema rilevante: la congestione del traffico, il consumo di energia, etc. Tutti questi problemi possono essere alleviati, ad esempio, sfruttando sistemi di trasporto intelligenti (ITS) attraverso informazioni dettagliate sulla mobilità in tempo reale. In conclusione per raggiungere lo scopo delle Smart Cities bisogna sviluppare un certo numero di tecnologie nell ambito della comunicazione digitale wireless e cablata nonché un crescente numero di applicativi multipiattaforma per la fruizione delle informazioni in tempo reale relativamente agli ambiti sopra citati. 5

Introduzione In questo contesto di servizi offerti si inserisce la formazione universitaria che costituisce una delle prerogative della Smart City e che quindi deve ben integrarsi nella totalità dei servizi offerti all utenza con particolare riferimento alla Smart Governance a cui il sistema universitario cittadino afferisce. Un applicazione Europea del concetto di Smart City è la città di Edimburgo che in tutta la sua area è servita da un efficiente servizio di trasporto. La city of Edinburgh Council (CEC) [7] ha lavorato con l azienda locale (Lothian Buses) e un fornitore di sistemi (INEO Sytrans) per fornire informazioni in tempo reale al fine di soddisfare le esigenze dei passeggeri, inizialmente attraverso informazioni sulle fermate autobus attraverso un sito WEB. [8] In seguito, questo servizio è stato esteso agli utenti di Smartphone. Figura 2 Esempio flusso dati dal sito web a un'app Android Uno schema dell elaborazione del flusso dati dell applicazione è riportato in Figura 2. Si evidenzia l uso di un server intermedio per la trasformazione dei dati da fornire all utente Android. Altri servizi come, ad esempio, il servizio biblioteca e le notizie del dipartimento servizi e informazioni della città di Edimburgo hanno ampliato l offerta ai cittadini. Il lavoro di sviluppatori di app ha permesso quindi di rendere fruibili le informazioni agli utenti dei dispositivi mobili rendendoli parte di un ampio social media. Altro esempio di città all avanguardia, con l offerta di servizi per gli sviluppatori di software, è la citta di Chicago. Il portale ufficiale [9] fornisce una 6

Introduzione serie di open API standard che permettono l accesso ai dati della propria piattaforma stimolando lo sviluppo di applicazioni originali da parte degli utenti. Figura 3 - Portale sviluppatori della città di Chicago Il portale è inoltre arricchito di una console che permette la prova delle API. Quest utilissimo strumento permette la verifica sia delle API interne al portale sia di qualunque altra fonte di cui si ha l URI. Il sistema utilizzato è il SODA (Socrata Open Data Api console) [10], piattaforma Open Source che 7

Introduzione permette di sperimentare le chiamate API utilizzando una semplice sintassi che prevede l inserendo dei propri parametri. Figura 4 - Console SODA per il testing delle API In definitiva la creazione di una Smart University si realizza rendendo la governance universitaria aperta al territorio attraverso la facile fruibilità delle sue informazioni. Tutto ciò s integra perfettamente con le prerogative di una Smart Cities. 8

Capitolo 2 Stato dell'arte Come evidenziato, il nuovo scenario competitivo delle Università italiane impone un processo di cambiamento che passa per l adozione di un approccio imprenditoriale al fine di servire meglio i propri clienti (studenti). I servizi offerti sono la base di una competizione al fine di avere soluzioni per migliorare la propria performance. Le università italiane sono però in competizione anche con quelle Europee e Internazionali. In questo quadro di riferimento s innesta l applicazione realizzata il cui scopo è di aumentare, il già ampio, elenco di servizi offerti dall Università Parthenope di Napoli. L analisi delle funzionalità utilizzabili in un applicativo per i servizi universitari è partita con lo studio dei servizi offerti da altre università sia nazionali sia internazionali. Da una ricerca effettuata è risultato esiguo (cinque) il numero di università nazionali che tra i propri servizi offrono un applicativo su piattaforma mobile di consultazione delle informazioni. Si è quindi cercato di estrapolare un campione significativo di Università sia pubbliche che private del nord, centro e sud Italia con in aggiunta una nota università straniera. 9

Stato dell'arte La scelta è stata fatta attraverso la visione delle app disponibili su Google Play [11] (ex market di Google) ed è ricaduta sull Università Bocconi di Milano per il nord Italia, La Sapienza di Roma per il centro Italia e sull Università di Foggia per il sud, mentre per l estero si è analizzata l applicazione mobile dell Università di Chicago. Analizziamo quindi le applicazioni prese in esame con l elenco delle loro funzionalità ponendo attenzione anche all aspetto grafico, l usabilità e la versione Android per cui sono disponibili: Università Bocconi di Milano: Figura 5 - Screenshot app della Università Bocconi L applicazione prevede una gestione eventi, insegnamenti, video, feed e links. Varie le funzionalità tra cui: loggarsi con le proprie credenziali; modificare le impostazioni; accedere al profilo utente; ricevere messaggi; accedere alla webmail d'ateneo; visualizzare eventi sottoscritti; iscriversi alle prove d esame (studenti). L aspetto grafico è essenziale ma efficace rendendo i menù d immediata consultazione; buona la personalizzazione delle pagine con la presenza costante del logo dell ateneo. La versione Android su cui è disponibile è Android SDK 2.2 o superiori (API level 8) e l ultimo aggiornamento del software è del 24 maggio 2012. 10

Stato dell'arte L applicazione è stata sviluppata dal Cineca (consorzio, senza scopo di lucro formato da cinquantaquattro Università italiane, due Enti Nazionali di Ricerca e dal Ministero dell'università e della Ricerca). Università La sapienza di Roma: Figura 6 - Screenshot app dell Università "Sapienza" Le funzionalità di quest applicativo sono quattro e relative, principalmente, alla gestione degli esami: Profilo, che visualizza le informazioni anagrafiche, i dati personali e l'ultima dichiarazione Isee; Esami, visualizza gli esami sostenuti, suddivisi in tutti"; "certificati"; "non certificati"; Esami prenotati, visualizza le prenotazioni già effettuate con la possibilità di cancellare la prenotazione; Ricerca, visualizza la ricerca degli appelli attivi e fornisce la possibilità di prenotare l esame. L aspetto grafico è ben curato a vantaggio di una buona usabilità; discreta la personalizzazione. La versione Android su cui è disponibile è Android SDK 2.1 o superiore (API level 7) e l ultimo aggiornamento del software è del 22 maggio 2012. L applicazione è stata sviluppata da due studenti della stessa università in collaborazione con Infosapienza (Centro di progettazione di sistemi informativi dell Università La Sapienza ). 11

Stato dell'arte Università di Foggia: Figura 7 - Screenshot applicativo Università di Foggia L applicazione consente agli studenti di visualizzare il proprio piano di studi con i relativi voti e di eseguire prenotazioni degli esami. Visionando i commenti degli utenti, risulta, in realtà, che la funzionalità di prenotazione non è utilizzabile. L aspetto grafico è essenziale e povero di personalizzazioni. La versione Android su cui è disponibile è Android SDK 2.2 o superiore (API level 8) e l ultimo aggiornamento del software è del 12 novembre 2011. L applicazione è stata sviluppata da un gruppo di studenti della stessa università in collaborazione con il Dipartimento di Scienze Economiche dell Ateneo. University of Chicago Illinois (U.S.): Le funzionalità di questa applicazione sono molteplici. Essa si distingue, dalle altre analizzate, per la completezza dell informazione offerta e per la cura dell aspetto grafico che la rende fruibile e d immediato utilizzo. 12

Stato dell'arte Figura 8 - Screenshot app University of Chicago Unica vera mancanza è l assenza di una funzionalità riguardante la visualizzazione del proprio piano di studi e di tutte le altre funzionalità per la gestione degli esami. Le funzionalità sono: News per la consultazione delle news universitarie; Maps per la visualizzazione delle sedi del campus universitario; Directory per la rubrica del personale dell università; Events per l accesso ad un calendario degli eventi universitari; Videos per la visione, attraverso youtube, dei video; Transit per la visualizzazione del locale sistema di trasporto per il collegamento con l università; Library per la consultazione della biblioteca universitaria; Images per la visualizzazione di una galleria di immagini; Emergency per la chiamata rapida a numeri di emergenza; Website per il collegamento al sito dell università e Tours che visualizza un tour degli edifici universitari con una descrizione testuale ed audio. L aspetto grafico è particolarmente curato, la navigabilità dei menu efficace e di conseguenza l applicazione ha un ottima usabilità. La versione Android su cui è disponibile è Android SDK 2.0 o superiore (API level 6) e l ultimo aggiornamento del software è del 12 settembre 2011. L applicazione è stata sviluppata dall UCHICAGO MOBILE CENTER [12], dipartimento della Chicago University che si occupa dello sviluppo di applicazioni su dispositivi mobili e della promozione di applicazioni realizzate dagli studenti; i quali possono inviare i propri lavori che, una volta approvati, vengono pubblicati in un apposita area di download. 13

Stato dell'arte Riportiamo quindi un quadro riassuntivo delle funzionalità delle varie applicazioni analizzate con una metrica di valutazione pesata. La metrica usata non poteva rientrare tra quelle standard di valutazione del software (complessità ciclomatica, punti funzione, copertura di codice, numero di classi e interfacce, etc) perché tutte utilizzano delle stime basate sul codice sorgente che, naturalmente, non si ha a disposizione. Altra metrica poteva essere la valutazione pubblicata su GooglePlay, ma l applicazione della Parthenope non è ancora pubblicata. Si è quindi utilizzata una metrica che, di ogni funzionalità dell applicazione, valuta la qualità della funzionalità stessa partendo dal valore zero per la funzionalità inesistente fino a cinque per la funzionalità ottima. La valutazione tiene presente della velocità di ottenimento del risultato, del layout e della completezza della funzionalità. 14

Stato dell'arte Tabella 1 - Comparazione funzionalità applicazioni per servizi universitari Università SDK Gestione esami Mappa News Eventi Rubrica Atri Servizi Università Bocconi Milano 2.2 5 0 5 0 0 5 Guida On Line Agenda Links Università La Sapienza Roma 2.1 5 0 0 0 0 0 Università di Foggia 2.2 2 0 0 0 0 0 Chicago University 2.0 0 5 5 4 3 5 Biblioteca Video Trasporti Immagini Emergenza Tour Sito WEB È evidente la ricchezza delle funzionalità offerte dall Università di Chicago che, tuttavia, non ha alcuna funzionalità riguardante la gestione degli esami studenti. 15

Stato dell'arte Il grafico seguente sintetizza le valutazioni ottenute: 25 20 15 Atri Servizi Rubrica 10 5 Eventi News Mappa 0 Università Bocconi Milano Università La Sapienza Roma Università di Foggia Chicago University Gestione esami Figura 9 - Schema valutazione metrica applicazioni 16

Capitolo 3 Tecnologie utilizzate In questo capitolo saranno descritte le tecnologie utilizzate per la realizzazione della nostra applicazione. L architettura di base è stata implementata in modo RESTful, architettura che sarà descritta nelle caratteristiche e prerogative. Tale architettura è ormai considerata uno standard nella realizzazione di Web Service. I servizi utilizzati sono quelli UniParthenope e rispettano pienamente gli standard REST. La trasmissione dello stato di rappresentazione delle risorse avviene attraverso l uso del formato JSON. La scelta di tale formato, alternativo all XML, è determinata dalla sua semplicità di utilizzo ed efficacia nella descrizione di ogni tipo di risorsa. La realizzazione dei servizi (API) UniParthenope sono stati realizzati attraverso il Framework FRAPI, un Framework Open Source PHP-based che rispetta anch esso le direttive REST. Per lo sviluppo dell applicativo, destinato ai terminali mobili, si è imposta la scelta di Android per la quantità di mercato acquisita, sempre in crescente aumento, e per la versatilità di sviluppo. Queste scelte hanno determinato la realizzazione di un applicativo facilmente riutilizzabile in altre categorie di dispositivi come i tablet o i mini-pc e soprattutto integrabile con i sempre più numerosi componenti messi a disposizione dei developer Android. 17

Tecnologie utilizzate 3.1 Il paradigma REST L architettura alla base del lavoro realizzato è REST (Representational State Transfer), acronimo di trasferimento dello stato rappresentativo. REST è uno stile architetturale software per i sistemi distribuiti d ipermedia come il World Wide Web. REST ha visto la sua nascita grazie al lavoro di dottorato di R.Filding. Filding è, tra l altro, uno dei principali autori dell HHTP. [13] Un applicazione che rispetta completamente le restrizioni REST è generalmente indicata come RESTFul. 3.1.1 Storia Lo stile architettonico REST fu sviluppato in parallelo con l HTTP basandosi su di un progetto esistente. La larga implementazione di un sistema conforme allo stile architetturale di REST è il WWW. REST semplifica la caratterizzazione architetturale del WEB rispettando le macro-interazioni delle quattro componenti del WEB, ovvero i server di origine, i gatway, i proxy ed i client, senza però imporre limiti ai singoli elementi. In definitiva, l architettura REST regola il corretto comportamento dei partecipanti. 3.1.2 Concetto L'idea è di usare una comunicazione tra macchine basata su richieste HTTP anziché utilizzare meccanismi come CORBA, RPC (Remote Procedure Calls) o i Web Services (SOAP, WSDL,..) rendendo il sistema architetturale più leggero. 18

Tecnologie utilizzate Figura 10 - Schema Api rest ed engine In molti casi, il World Wide Web, basato sull' HTTP, può essere visto come un' architettura basata sulla tecnologia REST. Le applicazioni basate su REST, dette anche RESTful, usano richieste HTTP per inviare dati (creare e/o aggiornare), leggere dati (eseguire query), e cancellare dati. Quindi REST usa richieste HTTP per tutti e quattro le operazioni di CRUD (Create/Read/Update/Delete). Nonostante la sua semplicità, REST è completo, non c'è nulla che si possa fare tramite un Web Service che non sia realizzabile mediante un'architettura RESTful. Nel dettaglio lo stile architetturale di REST consiste di un lato client e un lato server: i client inviano le richieste ai server; i server elaborano le richieste e restituiscono le risposte appropriate. Richieste e risposte si basano sul trasferimento di rappresentazioni di risorse. 19