Icem: Un’ Applicazione Per L’Iphone
Total Page:16
File Type:pdf, Size:1020Kb
massimo cocco icem: un’ applicazione per l’iphone tesi di laurea Relatore: Prof. Paolo Baldan Università degli Studi di Padova Facoltà di Informatica Dipartimento di Scienze Matematiche Naturali MM FF NN Febbraio 2011 I’m never giving in On with the show - Queen - The Show Must Go On - Dedicato a mio nonno. INDICE 1 introduzione 1 1.1 ”Tutto cambia. Di nuovo” 1 1.2 Introduzione al progetto 2 1.2.1 Corporate Energy Mangement Application 2 1.2.2 L’azienda Autoware e iCEM 3 1.2.3 Settori sviluppati dallo studente 5 2 analisi del progetto 7 2.1 Studio di fattibilità 8 3 use case 9 3.1 Use case: Area filter 9 3.2 Use Case: Area risultati 10 3.3 Use case: Area Events 11 3.4 Use case: Dettagli Eventi 12 3.5 Ciclo di vita 13 4 il linguaggio object c 15 4.1 La struttura del linguaggio 15 5 strumenti utilizzati 19 5.1 Xcode 19 5.2 Xcode IDE 19 5.3 Interface Builder 20 5.3.1 Esempio di utilizzo di Interface Builder: Hello World 20 5.4 SQLite & SQLite Database Browser 21 6 progettazione e sviluppo dell’ icem 25 6.1 Connessione iPhone - Server 25 6.2 Database 26 6.3 Sezioni Allarmi ed Eventi 27 6.4 Tab Bar 27 6.5 Sezione Events 29 6.5.1 Area Events 29 6.5.2 Details Events 31 6.5.3 Meters of Events 32 6.6 Sezione Alarms 32 6.6.1 Area Filter 33 6.6.2 Area Set Alarm Order 36 6.6.3 Area Risultati 37 6.6.4 Area Dettagli 38 7 piano di qualifica 41 7.1 Tecniche di verifica 41 7.1.1 Analisi statica 41 7.2 Tecniche di validazione 41 v 7.2.1 Analisi dinamica 41 7.2.2 Test di unità 42 7.2.3 Test di sistema 42 8 conclusioni 43 9 glossario 45 Bibliografia 49 Lista delle Figure 51 vi 1 INTRODUZIONE 1.1 ”tutto cambia. di nuovo” Con queste parole al MacWorld, Steve Jobs, cofondatore dell’Apple Inc., annuncia il nuovo modello di iPhone, chiamato iPhone4, suc- cessore del 3GS, riprendendo la frase ”Tutto cambia” usata per la presentazione del primo modello del melafonino. Presentato nel 2007, l’iPhone è diventato in soli 3 anni il dispositivo più venduto nella storia dei palmari con più di 20 milioni di dispositivi acquistati. Il telefonino, riduttivo chiamarlo così, ha da subito cambia- to e rinnovato il concetto di smartphones introducendo una serie di innovazioni tecnologiche straordinarie. Il dispositivo è composto da: un display da 3.5 pollici multitouch con una risoluzione vicina all’HD, solamente tre tasti fisici per le funzioni di regolazione volume e home ed una fotocamera posta posteriormente (nell’ultimo modello ve ne è una anche anteriormente per le videochiamate). Figura 1: Il nuovo iPhone4 presentato a Giugno 2010 Oltre a tutto questo, il telefonino incorpora un accelerometro, un dispositivo GPS oltre ad uno Wi-Fi e Bluetooth ed altoparlanti e la funzione di riproduttore di foto, video e musica. In definitiva l’iPho- ne incorpora le funzioni di un iPod con quelle di un palmare. “La rivoluzionaria interfaccia grafica”, continua ancora Steve Jobs nel suo keynote di presentazione [1], “è il risultato di anni di ricerca, sviluppo ed interazione tra hardware e software. [..] Utilizzeremo il miglior dispositivo di puntamento al mondo, le dita”. L’hard disk del primo iPhone aveva una capacità di 4 GB (2007), ora la capacità minima che si può avere è di 8 GB fino ad un massimo di 32 GB; lo spazio interno 1 2 introduzione lo si può riempire oltre che con contenuti multimediali, da applicazio- ne programmate solo per iPhone e che si possono acquistare presso l’AppStore. Figura 2: Il logo dell’SDK di Apple SDK ed XCode Apple ha messo a disposizione l’SDK dell’iPhone, strumento di svi- luppo disponibile solo per Mac, che viene utilizzato dal programma di programmazione XCode, già disponibile nel DVD di installazione di Leopard (sistema operativo di MacOSx). Questa piattaforma ha a di- sposizione un simulatore di iPhone che permette al programmatore di poter verificare il corretto funzionamento della sua applicazione, come se lo avesse installato sul dispositivo vero e proprio. Usando il mouse e la tastiera, è possibile simulare il tocco (touch) oppure la funzione di ingrandimento/rimpicciolimento della schermata (multitouch). Sinossi della tesi La tesi descrive l’esperienza che ho fatto presso una ditta del vi- centino e la creazione di un applicazione per iPhone, successivamen- te inviata all’Apple per metterla in vendita. Nei prossimi capitoli, il lettore verrà a conoscenza dell’analisi dei requisiti studiati ad inizio lavoro (Capitolo 2), degli strumenti utilizzati, come XCode e l’SDK dell’iPhone oltre a programmi di gestione di database (Capitolo 5), della progettazione (Capitolo 6), per concludere con una valutazione complessiva dell’applicazione. Nel prossimo paragrafo invece verrà presentata la ditta ed il progetto affidatomi: iCEM, applicazione per il campo industriale. 1.2 introduzione al progetto 1.2.1 Corporate Energy Mangement Application iCEM è la versiona portatile dell’applicazione Wonderware Corpora- te Energy Mangement Application, CEM. L’applicazione consente alle aziende di implementare in modo semplice e veloce un programma di Energy Management per raggiungere gli obiettivi di sostenibilità energetica. Essa inoltre consente agli utenti di monitorare i consumi energetici, identificare e segnalare al personale addetto le relative inef- 1.2 introduzione al progetto 3 ficienze. E’ in grado di rilevare le informazioni direttamente dai meters (contatori) presenti in rete, attraverso diversi protocolli di comunicazio- ne (anche proprietari) e di ricevere informazioni. Grazie all’applicazio- ne Wonderware, le aziende possono creare una vasta gamma di web report relativi ai consumi energetici sulla base di periodi temporali, re- parti, centri di costo ed eventi operativi. Inoltre si ha l’opportunità di essere forniti di visualizzazioni in tempo reale dei consumi energetici, avendo così un quadro complessivo del livello di utilizzo dell’energia. 1.2.2 L’azienda Autoware e iCEM Lo stage, iniziato il 22/4/2010 e finito il 14/6/2010, si è tenuto pres- so l’azienda Autoware di Vicenza che fornisce soluzioni all’avanguar- dia per la gestione e l’automazione della produzione, per il controllo e la supervisione di impianti e processi, per la verifica della qualità attraverso innovative applicazioni di visione artificiale. Figura 3: Schermata di avvio di iCEM Nel Settembre del 2009, l’ Autoware è stata nominata “Endorsed Nasce l’idea System Integrator” da parte di Wonderware. Gli Endorsed System dell’iCEM Integrator costituiscono una cerchia estremamente ristretta di società, ad oggi 17 nel mondo (7 negli USA, 1 in Canada, 3 in America latina e altri 5 in Europa) che collaborano con Wonderware nell’affrontare i progetti più critici e nel supportare le nuove tecnologie ed i nuovi 4 introduzione prodotti. Da un’indagine eseguita da dipendenti Wonderware e dai feedback rilasciati sull’applicazione CEM, è risultato che sarebbe stato molto conveniente avere sempre a disposizione ed a portata di mano, i dati dell’impianto preso in considerazione. iCEM Prendendo accordi con Wonderware, l’azienda si è proposta di idea- re un programma mobile da affiancare all’acquisto del CEM: iCEM. Per avere maggiore visibilità e proporre un prodotto all’avanguardia in fatto di funzioni e tecnologie è stata scelta come piattaforma di appli- cazione l’iPhone e, quindi, anche l’iPod Touch ,in quanto dispongono dello stesso sistema operativo. Come si vedrà più dettagliatamente nel capitolo Strumenti utilizzati, la scelta di programmare sull’ambiente di sviluppo offerto da Apple ha permesso l’utilizzo dell’SDK prodotto dalla casa di Cupertino. Questo pacchetto, usato insieme agli strumenti offerti delle macchine Mac con Leopard 10.6 e successivi, contiene un insieme di funzionalità molto potenti e permette la creazione di interfacce grafiche tanto accattivanti quanto facili e divertenti nel loro utilizzo. Panoramica iCEM racchiude tutte le funzionalità del CEM; grazie ad un’interfac- dell’applicazione cia facile ed intuitiva, l’utente, collegandosi a web report creati, può accedere a: • Gerarchie possibilità di navigare attraverso le gerarchie configurate nel- lapplicativo CEM e visualizzazione in tempo reale dei valori dei meter dislocati nell’ impianto. • Eventi visualizzazione in tempo reale dei costi di produzioni legati allenergia. Si può monitorare lo stato degli eventi gestiti dal- lapplicazione CEM, il loro costo, la durata ed il valore dei loro attributi. • Favoriti tutti i meter più importanti a portata di dito. Lutente può aggiungere i meter in una lista di favoriti che possono essere visualizzati semplicemente scorrendo la pagina con un dito. • Allarmi tutti gli allarmi generati dallapplicazione Wonderware CEM anche quando iCEM non è in esecuzione grazie alle notifiche push. Per consultare i dati, a livello software, viene collegato l’iPhone ai report web dell’industria o fabbrica munita del CEM, si accede al da- tabase interno e, mediante interrogazioni mirate, si visualizzeranno i risultati ottenuti attraverso filtri di ricerca impostati dall’utente. Nei successivi capitoli verranno affrontati i seguenti argomenti: • analisi dei requisiti studiati ad inizio stage • ciclo di vita adottato • strumenti utilizzati 1.2 introduzione al progetto 5 Verrà dedicato un capitolo alla conoscenza del linguaggio di program- mazione usato dall’SDK dell’iPhone: l’Object-C. Per una più soddisfacente spiegazione degli strumenti utilizzati e del linguaggio di programmazione adottato, si rimanda il lettore ai capitoli successivi. 1.2.3 Settori sviluppati dallo studente Lo sviluppo dell’applicazione iCEM è iniziata nel Marzo del 2009 da un altro stagista dell’azienda che aveva gia implementato la sezione inerente alle Gerarchie e Favoriti. Io ho sviluppato la parte logica e grafica degli Allarmi ed Eventi; tutti i successivi capitoli, dall’analisi dei requisiti alla progettazione in dettaglio, si riferiranno solamente a quelle sezioni dell’applicazione.