UNITA 3 Gruppo Architetture 31 maggio 2010

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UNITA 3 Gruppo Architetture 31 maggio 2010"

Transcript

1 IT Lab 2.0 Laboratorio di Ricerca Partnership CRISP-LISPA Relazione sull attività di ricerca del laboratorio IT Lab 2.0 UNITA 3 Gruppo Architetture 31 maggio 2010 CRISP Centro di ricerca interuniversitario per i servizi di pubblica utilità LISPA Lombardia Informatica S.p.A. società di servizi a capitale pubblico IT Lab 2.0 Viale dell Innovazione, 10 Edificio U Milano Tel.: (+39) Fax: (+39)

2 1. Introduzione Il tema di lavoro sviluppato in questi mesi ha avuto come obiettivo quello di studiare nuove tecnologie che potessero portare alla creazione di architetture software utili per trattare grandi quantità di dati in modo efficace dal punto di vista degli utenti finali. In questo momento, nel nostro dominio applicativo di riferimento, ovvero il mercato del lavoro, la modalità di fruizione dell informazione è rappresentata essenzialmente da report, materiale cartaceo dettagliato e navigabile fisicamente da parte di utenti esperti, e dal web, utilizzando dei personal computer. Con l avvento di WEB 2.0 possiamo assistere a due fenomeni: 1. Il primo è rappresentato dal ruolo centrale che la rete Internet, e nello specifico il web, sta rivestendo; 2. Il secondo è il proliferare di nuovi device portatili che offrono un insieme cospicuo di funzionalità (tra cui la possibilità di accedere ad internet), come gli smartphone o i netbook. L idea è cercare di capire se questi terminali, le tecnologie e le metafore di interazione più diffuse e accettate possano essere utili per presentare in modo efficace le informazioni, almeno di tipo sintetico, in modo da allargarne il bacino d utenza con l obiettivo finale di aumentare il grado di accettazione e fruizione del sistema, dove con sistema si intende un sistema software utilizzabile in remoto o in locale, interrogabile per reperire informazioni, senza specificare altre caratteristiche Il dubbio: internet al centro? Figura 1- Internet al centro Nel corso degli anni i paradigmi architetturali sono mutati soprattutto in relazione al tasso costo/prestazioni dei componenti fondamentali di un architettura software, ovvero potenza di calcolo, memoria e rete. In questo momento è la rete a essere maggiormente conveniente e gli sforzi della comunità informatica stanno portando ad un uso sempre maggiore della rete, portandola al centro delle moderne architetture software. 2

3 Figura 2 - Evoluzione paradigmi architetturali Si potrebbe addirittura ipotizzare che si stia arrivando ad un sovrautilizzo della rete, anche per funzioni semplici che potrebbero essere decentralizzate su device locali. La decentralizzazione di funzionalità su device locali, ed in particolare su device mobili, è supportata dalle seguenti motivazioni a carattere tecnologico: Potenza dispositivi mobili: sia la potenza di calcolo che la memoria interna di netbook e smartphone è sufficiente a svolgere funzioni tipiche di un personal computer. Approccio utenti: alcune comunità di utenti hanno sviluppato un senso di fiducia verso la tecnologia mobile. Riservatezza e privatezza: non tutte le informazioni o i dati posseduti possono essere o vogliono essere condivisi. Alcune informazioni potrebbero essere lasciate in locale, per scelta o per necessità (per esempio per problemi riguardanti la sicurezza). Criticità e costo della rete: ci possono essere funzionalità per cui l utilizzo della rete risulti superfluo oppure una connessione permanente rappresenti un costo superfluo. Affidabilità della rete: ci possono essere funzionalità per cui il livello di affidabilità della rete non è sufficiente. Inoltre in campo IT è sempre maggiore l attenzione all utilizzo di applicazioni web-based fuori linea. Un esempio è lo sviluppo di HTML 5 [1], nuovo standard per la costruzione di pagine web, e non solo, sviluppato dal W3C. Le novità introdotte da HTML 5 rispetto a HTML 4 sono finalizzate soprattutto a migliorare il disaccoppiamento tra struttura, definita dal markup, caratteristiche di resa (tipo di carattere, colori, eccetera), definite dalle direttive di stile, e contenuti di una pagina web, definiti dal testo vero e proprio. Un punto fondamentale di HTML 5 prevede il supporto per la memorizzazione locale di grosse quantità di dati scaricate dal browser, per consentire l'utilizzo di applicazioni basate su web (come per esempio le caselle di posta di Google o altri servizi analoghi) anche in assenza di collegamento a Internet. Infine è importante l utilizzo che fanno gli utenti dei propri dati. Gli utenti sono sempre più abituati a possedere i propri dati e a fare delle copie locali sui propri device. Un esempio di questa modalità di utilizzo è l Apple ipod [2], in cui gli utenti fanno delle copie locali dei propri file musicali, residenti su pc. Fondamentale è anche l uso delle cosidette Applicazioni, semplici software scaricabili sul dispositivo locale e di facilissima installazione. Gli utenti sono sempre più abituati al concetto di digital delivery, ovvero della possibilità di accedere via web a store online e acquistare musica, video, game e applicazioni, per utilizzare il tutto fuori linea. Il successo di questa metodologia di utilizzo è visibile attraverso portali come l App store di Apple e l Android Market di Google, in continua espansione e con circa applicazioni scaricabili. 3

4 Queste applicazioni vengono installate dinamicamente sul dispositivo locale e permettono la manipolazione di dati locali Decentramento per tipo di utente Un'altra modalità di decentramento è quello che mette il focus dell architettura sull utente. Si può ipotizzare che ci siano casi d uso in cui la visione totale dell informazioni non solo è inutile, ma è addirittura dannosa. Per esempio, un dirigente che ha bisogno di analizzare determinati indici, non vorrà navigare pagine e pagine di report prima di arrivare all informazione di cui ha bisogno. Per questo motivo sarebbe utile un contesto soggettivo delle informazioni, ovvero un sottoinsieme di informazioni indirizzato specificatamente ad un target di utenti, ovvero un contesto in cui le informazioni globali sono parziali, filtrate e sintetizzate. Con questa modalità l utente potrebbe avere le informazioni di cui ha bisogno in minor tempo, aumentando la soddisfazione di utilizzo del sistema. Queste informazioni possono essere scaricate sul proprio device, come delle copie locali su cui l utente può lavorare fuori linea, nei tempi che ritiene più utili. Per far questo è fondamentale il concetto di ruolo, ovvero la suddivisione della comunità utilizzatrice in base ai propri interessi primari. Logicamente l utilizzo di copie locali delle informazioni introduce il problema della sincronizzazione delle informazioni. Ovvero i contesti locali dovranno essere allineati rispetto ai dati globali. Le modalità con cui questo allineamento verrà svolto sono allo studio. Nel nostro dominio applicativo di riferimento (il mercato del lavoro) sembra abbastanza chiaro che le tempistiche di sincronizzazione possono essere relativamente lente, poiché non c è bisogno di un aggiornamento real-time delle informazioni. In ogni caso il sistema deve garantire la visione di uno stato consistente delle informazioni, sia si scelga una modalità di aggiornamento in tempo reale o sia che la modalità di aggiornamento sia non in tempo reale. L obiettivo è di fornire a ciascun utente le informazioni di cui ha effettivamente bisogno nella forma che renda tali informazioni più accessibili e corrette Soluzione ipotizzata Per mettere in atto il decentramento architetturale la soluzione ipotizzata è la costruzione di contesti soggettivi, partendo dalle informazioni globali contenute nel Data Warehouse di riferimento, a cui l utilizzatore accederà attraverso delle interfacce utente. Una schematizzazione della soluzione ideata è rappresentata in figura 3. Partendo da informazioni globali, per esempio contenute in un Data Warehouse, si creano dei contesti soggettivi a cui gli utenti finali possono accedere attraverso delle specifiche interfacce. 4

5 Figura 3 - Soluzione ipotizzata Abbiamo ipotizzato due architetture per mettere in atto il decentramento architetturale. La prima, rappresentata in figura 4 è maggiormente basata sulla scalabilità e sull utilizzo della rete. In questo caso è la rete ad adattarsi alle esigenze dell utilizzatore, quindi il componente che crea il contesto soggettivo risiede nella rete. La seconda, rappresentata in figura 5 è basata maggiormente sulle nuove possibilità offerte dai device mobili. In questo caso è l applicativo nel device mobile che soddisfa le esigenze dell utenza. Figura 4 - Architettura 1 Figura 5 - Architettura 2 Per arrivare a questo tipo di soluzioni si è deciso di studiare tecnologie che potessero portarci a risultati concreti in tempi ragionevoli. Nello specifico si è scelto di analizzare il paradigma denominato Cloud Computing, per quanto riguarda il potenziale offerto dalla rete e il sistema operativo Android, per quanto riguarda il mondo mobile. 5

6 2. Cloud Computing Non esiste una definizione standard di Cloud Computing. Con il termine Cloud Computing [3] si intende un insieme di tecnologie informatiche che permettono l utilizzo di risorse, sia hardware che software, distribuite in remoto. La vera caratteristica fondamentale del Cloud Computing è fornire all utilizzatore le risorse distribuite, come se fossero disponibili da sistemi standard, in locale. L implementazione viene volutamente non definita in modo dettagliato, infatti essa viene costituita da un insieme eterogeneo e distribuito di risorse, che l utilizzatore non conosce, l utente finale ha una visione black-box del sistema. Può quindi essere visto come un modello che semplifica l utilizzo delle tecnologie informatiche. L obiettivo è fornire all utilizzatore un set di risorse elastiche, estremamente scalabili e potenzialmente illimitate attraverso internet. Un insieme di risorse informatiche offerte come servizio. Le maggiori aziende del settore (Amazon, Yahoo, Google, Oracle/Sun, SAS e molte altre) hanno investito, o stanno investendo, in modo massiccio in questo settore. Questo è indice di quanto il mercato possa nei prossimi anni seguire questa scelta trasformando, sotto molti aspetti, il paradigma di utilizzo della rete A cosa serve? Paghi solo quello che usi, questo slogan sintetizza uno dei maggiori vantaggi del Cloud Computing. Le organizzazioni possono pagare unicamente per quello che usano, attraverso canoni mensili o annuali. In tal modo viene ridotto il costo per le infrastrutture in locale, sia esso costo di capitale che costo di gestione ad essa associati. Teoricamente si libera personale per l azienda, chi doveva occuparsi della gestione delle risorse aziendali, avrà più tempo per creare valore effettivo per l organizzazione ed infine in questo modo le organizzazioni possono essere più flessibili, ovvero hanno la possibilità di adattarsi con rapidità alle richieste di mercato. 6

7 2.2. Tipologie di Servizi Possiamo distinguere tre tipologie fondamentali [4] di Cloud Computing: Software as a Service (SaaS); Platform as a Service (Paas); Infrastructure as a Service (IaaS); Software as a Service (SaaS): Le applicazioni vengono viste come un servizio. Le applicazioni vengono eseguite in remoto, spesso attraverso un server web. Ci sono già parecchi esempi per questa tipologia di servizio, come GMail, Google Docs, icloud (un desktop remoto) o gli innumerevoli prodotti per la collaborazione online. Platform as a Service (Paas): In questo caso viene offerto all utente un ambiente di runtime per le sue applicazioni. Il consumatore ha il controllo solo sulle sue applicazioni e non ha il controllo dell ambiente su cui esse girano. Infrastructure as a Service (IaaS): Utilizzo di risorse hardware, con software associato, in remoto. Fondamentalmente vengono offerti potenza elaborativa, memoria, connettività. E in questa tipologia di servizio che si sposa maggiormente lo slogan paghi quello che usi. Il consumatore paga solo per le risorse utilizzate e non per l intera infrastruttura. L idea è lo sfruttamento di risorse IT come si è sempre utilizzato l energia elettrica o il gas negli appartamenti. Per ogni tipologia di servizio si possono trovare prodotti commerciali già maturi e pronti per essere utilizzati. Per quanto riguarda la tipologia SaaS abbiamo già elencato alcuni esempi esplicativi. Figura 6 -Collocazione aziende rispetto alla tipologia di servizio offerto 2.3. Cloud Computing: Prodotti Si fornisce una rassegna indicativa e sicuramente non esaustiva, dei principali prodotti nel campo IT Google App Engine Google App Engine [5] è la proposta PaaS di Google, Inc. Per accedere al servizio è sufficiente un account per far girare le proprie applicazioni sulle infrastrutture di Google. App Engine offre due ambienti di 7

8 runtime, una per applicazioni Java e l altra per applicazioni Python, ed offre un datastore per memorizzare i dati. L utilizzo della piattaforma, se si usano solo le funzionalità di base, è gratuito. In seguito se ne si ha necessità è possibile acquistare risorse computazionali, di memoria e di banda, in funzione delle proprie esigenze IBM e il Cloud Computing IBM è molto attiva nel campo del Cloud Computing [6]. Partendo dall assunzione che mediamente un azienda dedica fino al 50% della sua infrastruttura tecnologica alle attività di sviluppo e di test e, tipicamente, più del 90% di tale infrastruttura rimane inutilizzata, IBM dichiara che l utilizzo del Cloud Computing è utile per lo sviluppo e per il test e può contribuire a ridurre i costi, migliorare la qualità del software e accelerare il time to market IBM Smart Business Development & Test Tramite questo servizio IBM mette a disposizione alcuni dei suoi prodotti di test e sviluppo della serie Rational. Tutti questi prodotti sono offerti tramite il provisioning di macchine virtuali basate su linux (Suse o Red Hat). Tramite un interfaccia web si può accedere al portale IBM da cui si gestiscono le richieste di provisioning e le immagini create Microsoft Windows Azure Microsoft Windows Azure [7] è la piattaforma Cloud di Microsoft, che risiede nei suoi datacenter. E simile alla proposta Google App Engine, ma è focalizzata all offerta dei prodotti Microsoft (Office Live, Exchange Online, SharePoint Online e Dynamics CRM Online) come servizio in rete. Windows Azure è il kernel della piattoforma che implementa un sistema operativo che offre servizi per lo sviluppo, per l hosting e la gestione delle applicazioni che vi gireranno. Stretta è l integrazione con Visual Studio, resa disponibile attraverso uno specifico SDK aggiunto all ambiente di sviluppo. Si potranno costruire Web Application e Web Service che verranno pubblicati direttamente tramite il proprio account sull infrastruttura di Windows Azure e tramite l apposita interfaccia web si potranno configurare le risorse di elaborazione che si vogliono assegnare all applicazione Amazon Elastic Compute Cloud (EC2) EC2 [8] è la proposta IaaS di Amazon. E l attuale punto di riferimento del settore ed offre la possibilità di utilizzare la maggioranza delle soluzioni software esistenti, come: Red Hat Enterprise Linux, Windows Server 2003/2008, Oracle Enterprise Linux, IBM DB2, Microsoft SQL Standard 2005 Oracle Database 11g; 8

9 IBM WebSphere Portal Server; Jboss Enterprise Application Platform, IBM smash, Oracle WebLogic Server e IBM WebSphere Application Server e molte altre. Amazon offre capacità di calcolo variabile facilitando lo sviluppatore in termini di scalabilità e strumenti per costruire in maniera semplice e veloce le proprie applicazioni. L interfaccia è un semplice servizio web che consente di ottenere e configurare con il minimo sforzo la capacità di cui il singolo cliente necessita fornendo il controllo completo sulle risorse di calcolo. Il pagamento del servizio viene calcolato in funzione del reale utilizzo di risorse da parte dell utente Tipologia di deployment del Cloud Computing Le varie tipologie di servizi presentate possono essere offerte costruendo cloud di due tipi, cloud private o cloud pubbliche [9]. In letteratura si parla anche di un terzo tipo di cloud, l ibrido. Public Cloud: il più diffuso, il fornitore offre servizi tramite internet ad un consumatore esterno. Il fornitore si occupa dell infrastruttura, della gestione, della manutenzione mentre il consumatore utilizza le risorse in modo trasparente, senza preoccuparsi di altro. E ovvio che il consumatore non si occupi della gestione ma questa stessa facilitazione può essere un problema per quanto riguarda la sicurezza. Private Cloud: In questo caso il fornitore e il consumatore dei servizi fanno parte della stessa organizzazione, logicamente viene sfruttato in grandi organizzazioni. In questo caso si hanno i vantaggi del Public Cloud ma la gestione e manutenzione dell infrastruttura è interna all organizzazione. Il vantaggio è che avendo un totale accesso si riescono a gestire in modo personalizzato gli aspetti di sicurezza, (infatti non si sarà esposti verso l "esterno"), di configurazione, (in quanto si ha pieno accesso all infrastruttura) e non si è soggetti a limitazioni di banda. Hybrid Cloud: Teoricamente dovrebbe avere i vantaggi delle Public e Private Cloud eliminando i contro. Si crea una nuvola che è un mix di servizi publici e privati, lo svantaggio è che creare una struttura di questo tipo può essere molto complesso Conclusioni Da un punto di vista puramente tecnologico, il Cloud Computing non rappresenta una novità, ma piuttosto una combinazione di più tecnologie, ormai mature, per poter offrire una infrastruttura IT scalabile, elastica e on-demand attraverso Internet. Questa nuova modalità di fruizione dell infrastruttura IT offre vantaggi sia economici, permettendo di passare parte dei costi di capitale associati all IT in costi operativi, sia di gestione. Quindi i principali vantaggi sono: Agilità intesa come sviluppo rapido di infrastrutture IT senza dover fare provisioning; Costo basato sull effettivo uso delle risorse; Scalabilità basato sul provisioning dinamico; Personale esterno all azienda per gestire l infrastruttura; Diminuzione dei costi di infrastruttura. Mentre i principali dubbi sono : 9

10 Bisogno 24H/24H di connessione internet (in Italia può essere un problema, soprattutto se messe in relazione ai device mobile); Applicazioni remote non performanti come le applicazioni in locale; Personale esterno all azienda per gestire l infrastruttura; I principali dubbi riguardano la sicurezza dei dati. Gartner Group individua i seguenti sette problemi: Individuazione dell utente privilegiato; Garanzie sull affidabilità del provider: chi certifica i provider che offrono i servizi in rete? Data location: dove sono realmente i dati? Data segregation: chi accede ai dati? Recovery: chi assicura la consistenza dei dati in caso di disastro? Investigative support: come posso garantire che il livello di servizio garantito sia mantenuto? Disponibilità a lungo termine: chi assicura la disponibilità dei miei dati in caso di cambio di proprietà del provider? 3. Mondo Mobile: Introduzione Nel mondo Mobile e in particolare dei sistemi operativi per smartphone, possiamo trovare cinque grandi competitors: 1. iphone OS: sistema operativo che equipaggia lo smartphone iphone di casa Apple, sistema completamente chiuso. 2. Symbian OS: sviluppato da Symbian Foundation, sotto il controllo di Nokia, è in fase di ristrutturazione, verrà utilizzato solo per smartphone di fascia bassa. 3. Windows 7 Mobile: sistema operativo per smartphone, sviluppato da Microsoft. 4. Nokia MeeGo: sviluppato da Nokia, non ha una grande diffusione, sarà il sistema operativo degli smartphone di fascia alta della casa finlandese. 5. Android: sistema Open Source con larga diffusione. 6. BlackBerry OS sviluppato da RIM, sistema non Open Source. La nuova versione, la 6.0, verrà commercializzata a Luglio Osservando il mercato, Android ci è parso il prodotto più maturo, insieme a iphone OS. Android inoltre ha il pregio di essere completamente Open Source. In questo momento Android è il secondo sistema operativo per smartphone per diffusione, in continua crescita, dietro a BlackBerry OS, in continua regressione Android Si è scelto di studiare la piattaforma Android [19] perché non solo utilizza tecnologie Open Source ma il suo stesso codice è disponibile sotto licenza Apache 2.0 [20]. Include in modo nativo un sistema operativo, un middleware e delle applicazioni di base. Per sviluppare applicazioni per Android si utilizza il linguaggio Java, questo rende possibile, se si conosce il linguaggio Java, iniziare a sviluppare per Android in tempi brevi, poiché non c è bisogno di studiare un nuovo linguaggio di programmazione. I creatori di Android forniscono un Developer Tools per ogni sistema operativo e per quasi tutti gli IDE in circolazione, preferendo nelle loro specifiche, Eclipse. Nello specifico, vengono utilizzate le API di Java Standard Edition, che viene convertito in modo automatico in un linguaggio orientato al massimo sfruttamento delle risorse del sistema su cui Android risiede. Android offre allo sviluppatore pieno accesso all hardware del dispositivo e al software di base, con una politica orientata al riutilizzo di componenti. 10

11 Figura 7 - Logo di Android Android è una piattaforma Open Source per dispositivi mobili, basata sul sistema operativo Linux e sviluppata dall'open Handset Alliance 1. L obiettivo dell'open Handset Alliance è sviluppare "standard aperti" per dispositivi mobili. Nello stesso giorno dell'annuncio della formazione dell'open Handset Alliance il 5 novembre 2007, l'oha ha anche presentato Android. In particolare la piattaforma è basata sul kernel Linux, usa il database SQLite, la libreria dedicata SGL per la grafica bidimensionale e supporta lo standard OpenGL ES 1.0 per la grafica tridimensionale. Le applicazioni vengono eseguite tramite la Dalvik Virtual Machine, una Java Virtual Machine adattata per l'uso su dispositivi mobili. Android è provvisto di una serie di applicazioni preinstallate: un browser, basato su WebKit, una rubrica e un calendario e molte altre. Figura 8 - Interfaccia di Android L' Open Handset Alliance (abbreviato OHA) è un accordo di differenti compagnie con Google come capofila, ASUS, HTC, Intel, Motorola, Qualcomm, T-Mobile, e NVIDIA. 11

12 3.2. L architettura di Android Nel seguente schema sono rappresentati i principali moduli di Android [21]. Ogni sezione dello schema sarà descritta con maggior dettaglio. Figura 9 - Architettura di Android Applications Tutte le applicazioni di alto livello di Android sono scritte completamente in Java. Android integra nel sistema operativo le applicazioni per compiere le telefonate, una rubrica, un browser web Application Framework Android offre allo sviluppatore di applicazioni pieno accesso all hardware del dispositivo, informazioni sulla posizione di accesso, la possibilità di eseguire servizi in background e molte altre feature. Inoltre gli sviluppatori hanno pieno accesso alle API utilizzate per le applicazioni di base. L Application framework è stato progettato per semplificare il riutilizzo dei componenti; qualsiasi applicazione può pubblicare le proprie capacità (i propri servizi) e qualsiasi altra applicazione può avvalersi di tali capacità (logicamente sottostando a vincoli di sicurezza imposte dall applicazione). Alla base di tutte le applicazioni è fornito un insieme di servizi e sistemi, tra cui: Un ricco ed estensibile set di Views che possono essere utilizzate per creare applicazioni includendo liste, griglie, box di testo, bottoni e anche un web browser embedded. I Content Providers che consentono alle applicazioni l accesso ai dati (i.e. rubrica). Un Resource Manager che fornisce l accesso alle risorse di tipo non-code, come la grafica e i file per il layout. Un Notification Manager che consente a tutte le applicazioni di visualizzare avvisi nella status bar. Un Activity Manager che gestisce il ciclo di vita delle applicazioni e provvede una navigazione comune Libraries 12

13 Android include un set di librerie scritte in C/C++ usate dai vari componenti di Android. Queste capacità sono esposte ai livelli superiori attraverso il livello Application Framework. Le librerie offerte sono divise in base ai servizi offerti, come: Media Libraries che servono per gestire i formati audio e video più comuni, e anche i formati per le immagini. (i.e. MPEG4, H.264, MP3, JPEG). Surface Manager che serve per gestire l accesso al display sia in ambito 2D che 3D. LibWebCore ovvero un moderno web browser engine che gestisce sia il browser di Android sia i browser embedded delle varie applicazioni. SQLite ovvero un relational database engine utilizzabile da tutte le applicazioni Android Runtime Android include una serie di librerie che forniscono la maggior parte delle funzionalità che si possono trovare nelle librerie core del linguaggio di programmazione Java. Di default tutte le applicazioni di Android girano su un singolo processo Linux che gira sulla propria istanza di Dalvik Virtual Machine. Dalvik è un evoluzione della Java Virtual Machine ed è stata scritta in modo da ottimizzare l esecuzione in parallelo di più macchine virtuali. La VM Dalvik esegue i file nel formato Dalvik Executable (.dex) un formato dove è stata potenziata la gestione dell occupazione minima della memoria. La VM è basata sui registri ed esegue le classi compilate in linguaggio Java dopo che queste classi sono state convertite nel formato.dex attraverso il tool dx, incluso in Android. VM Dalvik si basa sul kernel linux per le funzionalità di base come il threading e la gestione della memoria di basso livello Linux Kernel Android per i servizi di base (ovvero gestione della memoria, gestione dei processi, stack di rete, gestione dei driver) utilizza la versione 2.6 di Linux. Il kernel funge anche da strato di astrazione tra hardware e il resto dei livelli software che lo precedono. 13

14 3.3. Struttura di un applicazione per Android Tutto il codice contenuto nel package contraddistinto dall estensione.apk viene considerato un applicazione. Ci sono quattro componenti che costituiscono un'applicazione Android[22]: Activities Intent Receiver Services Content Providers Non tutte le applicazioni hanno bisogno di tutti e quattro i componenti per funzionare, ma le applicazioni vengono scritte con una qualche combinazione di questi. Una volta deciso quali componenti servono per l'applicazione, questi devono essere elencati in un file chiamato AndroidManifest.xml. Si tratta di un file XML in cui si dichiara quali sono i componenti dell applicazione e quali sono le loro funzionalità e i requisiti Activities Le Activities sono le più comuni tra i quattro componenti che costituiscono le applicazioni Android. Un'Activity è normalmente una singola schermata dell applicazione. Ogni Activity è implementata come una classe singola che estende la classe di base Activity. La classe creata presenterà un'interfaccia utente composta di Views e risponderà agli eventi. La maggior parte delle applicazioni sono composte da schermate multiple, per esempio, un'applicazione per la scrittura di messaggi può avere una schermata che mostra una lista di contatti a cui inviare i messaggi, una seconda schermata in cui scrivere effettivamente il messaggio, e altre schermate per rivedere i vecchi messaggi o cambiare le impostazioni. Ognuna di queste schermate viene implementata come un'activity. Ci si può spostare tra le schermate avviando una nuova Activity. In alcuni casi un'activity può restituire un valore all'activity precedente, per esempio un'activity che permette all'utente di scegliere una foto restituirà la foto a chi l ha invocata. Quando si apre una nuova schermata, quella precedente si ferma e viene archiviata in un'apposita sezione. L'utente può navigare indietro attraverso le schermate precedenti nell'history stack. Le schermate possono anche essere tolte dall'history stack, quando è inappropriato che rimangano memorizzate. Android mantiene history stack per ogni applicazione lanciata dallo schermo principale Intent Receivers Un Intent Receiver viene utilizzato quando si ha bisogno che del codice di un applicazione venga eseguito in reazione ad un evento esterno, per esempio, quando suona il telefono o è disponibile la rete dati o quando scocca la mezzanotte. Gli Intent Receivers non mostrano un'interfaccia utente, anche se possono usare il NotificationManager per avvisare l'utente se è accaduto qualcosa di interessante. Le applicazioni non devono essere per forza in esecuzione perché vengano richiamate dagli Intent Receivers; sarà il sistema ad avviare l'applicazione quando si innesca un Intent Services Il componente Service non dispone di un interfaccia utente ed esso viene eseguito in background per un periodo indefinito di tempo. Un esempio è un media player che esegue delle canzoni da una lista. In un'applicazione tipo media player, ci sono probabilmente una o più Activity che permettono all'utente di scegliere le canzoni e iniziare ad ascoltarle. Tuttavia, la riproduzione della musica non dovrebbe essere gestita da un'activity, perché l'utente si aspetterà di continuare a sentire le canzoni anche quando naviga 14

15 su un'altra schermata. In questo caso, l'activity media player può avviare un Service, in modo che venga eseguito in background e la musica continui. Il sistema manterrà il Service in esecuzione fino a quando non si decide di terminarlo. Una volta connesso ad un service, ci si può comunicare attraverso un'interfaccia esposta dal service stesso Content Providers Le applicazioni possono immagazzinare i loro dati in file, in un database SQLite, o in qualsiasi altro meccanismo che abbia senso. Un Content Provider è utile per far si che i dati dell'applicazione vengano condivisi con altre applicazioni. Le altre applicazioni che vogliono utilizzare i dati di un applicazione specifica utilizzeranno l oggetto Content Resolver per contattare il Content Provider che gestisce l acceso a tali dati Intent ed Intent Filters I componenti di un applicazione sono attivati attraverso dei messaggi chiamati Intent. Questi servono a far comunicare i componenti in una stessa applicazione o in applicazioni diverse. L Intent è un oggetto Intent che è fondamentalmente una struttura dati contenente una descrizione astratta di un operazione che deve essere eseguita. Logicamente ci sono meccanismi diversi per spedire Intent ad ogni tipo di componente. Android cerca il componente che può rispondere all Intent, istanziandolo, se necessario Intent Objects Un oggetto Intent è un bundle di informazioni. Queste sono informazioni di interesse del componente che riceve l Intent (ovvero l azione da intraprendere e i dati su cui lavorare) e le informazioni utili al sistema Android (come la categoria di componente). Principalmente un Intent contiene: Component Name: il nome del componente che si vuole gestisca l evento (facoltativo). Action: una stringa che rappresenta l azione da effettuare. Ci sono delle azioni prestabilite, altre si possono creare da zero. Data: l URI della locazione dei dati su cui si vuole lavorare. Category: informazioni addizionali che riguardano la specifica della tipologia di componente che deve gestire l intent. 15

16 Intent Resolution Ci sono 2 tipi di Intent: 1. Intent epliciti: il componente che deve soddisfare l Intent è definito a priori (soprattutto utilizzate come application internal messages). 2. Intent impliciti: il componente che deve soddisfare l Intent non è definito a priori (utilizzati per usufruire dei componenti delle altre applicazioni). Nel primo caso Android spedisce direttamente l Intent al componente specificato. Nel secondo caso, Android, deve trovare il migliore componente che può soddisfare l Intent. Questo avviene confrontando gli Intent con gli Intent Filters di ogni componente. Nel caso un componente non avesse filtri può comunque ricevere Intent espliciti Intent Filters Gli Intent Filters sono le capacità dei componenti di un applicazione. Ogni componente dichiara cosa sa gestire. Un Intent Filters è un istanza della classe Intent Filter. Tuttavia Android deve conoscere le capacità prima di avviare il componente ed è per questo motivo che gli Intent Filters devono essere esplicitati nel file AndroidManifest.xml, che viene descritto in seguito Android Manifest File Nella root directory di ogni applicazione deve esserci il file AndroidManifest.xml. Questo contiene informazioni necessarie ad Android prima che le applicazioni siano in esecuzione. Il Manifest inoltre contiene le seguenti informazioni: Nome univoco dell applicazione; Descrive i componenti dell applicazione, elenca i nomi delle classi che implementano i componenti e le loro capacità (gli Intent Filters); Dichiara i permessi per accedere alle varie parti dell applicazione; Dichiara il livello minimo di API di Android che l applicazione richiede; Dichiara le librerie che devono essere linkate al progetto. 4. Sviluppi futuri Identificato Android come tecnologia interessante su cui focalizzare la sperimentazione, il seguito del lavoro porterà alla sperimentazione di varie modalità di visualizzazione, su terminali mobili, di report definiti dagli altri gruppi del ITLab 2.0. In particolare, l'attenzione si concentrerà su come l'utente naviga nei report, in modo da capire in che misura l uso di metafore e tecnologie evolute possa aumentare l efficacia della fruizione. Inoltre verrà ampliato lo stato dell arte delle tecnologie riguardanti il mondo mobile. 16

17 Bibliografia 1. HTML5, pagina ufficiale del W3C Wikipedia - ipod Above the Clouds: a Berkeley view of Cloud Computing M. Armbrust Why Cloud Computing will never be free Dave Durkee of Enki ACMqueque Google App Engine, sito ufficiale IBM Cloud Computing Introducing Windows Azure D. Chappell Amazon EC2, sito ufficiale The NIST definition of Cloud Computing T.Grance, P.Mell Cloud Computing and Grid Computing 360 degrees Compared I. Foster Can you deliver secure cloud computing services? Securing the Cloud: Designing Security for a New Age FierceCIO eflorida.com Software Development in the cloud N.Gulrajani, D. Bowler Securing the Cloud: A review of Cloud Computing, Security Implications and Best Practices Wmware White papers 14. Understanding Cloud Computing PhD Computing Cloud computing: utility computing over the internet Taneli Korri Helsinki University of Technology 16. Automated Control in Cloud Computing: Challenges and opportunities H. Lim, S. Babu, J. Chase, S. Parekh Duke Univerisity 17. An essential Guide to possibilities and Risk of Cloud computing M.Spinola Application Architecture for Cloud Computing J.Barr, T. von Eicken, E.Troan 19. What is Android? Google Code - Google Apache Software Foundation Apache Software Foundation Android. Guida per lo sviluppatore M. Carli Apogeo Android Developer

C Cloud computing Cloud storage. Prof. Maurizio Naldi

C Cloud computing Cloud storage. Prof. Maurizio Naldi C Cloud computing Cloud storage Prof. Maurizio Naldi Cos è il Cloud Computing? Con cloud computing si indica un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio, di memorizzare/

Dettagli

Tecniche di progettazione e sviluppo di applicazioni mobile

Tecniche di progettazione e sviluppo di applicazioni mobile Slide del corso FSE Tecniche di progettazione e sviluppo di applicazioni mobile svolto presso AREA Science Park Padriciano - Trieste - Italy diegozabot@yahoo.it Android Introduzione diegozabot@yahoo.it

Dettagli

Scuola Professionale e Filologica Geom. F.Borgogna Vercelli

Scuola Professionale e Filologica Geom. F.Borgogna Vercelli Scuola Professionale e Filologica Geom. F.Borgogna Vercelli Corsi ANDROID 2013/2014 Benvenuti nel mondo dinamico dello sviluppo di applicazioni per smartphone e tablet Android Corsi ANDROID 2013/2014 L

Dettagli

Gartner Group definisce il Cloud

Gartner Group definisce il Cloud Cloud Computing Gartner Group definisce il Cloud o Cloud Computing is a style of computing in which elastic and scalable information technology - enabled capabilities are delivered as a Service. Gartner

Dettagli

Cloud Computing....una scelta migliore. ICT Information & Communication Technology

Cloud Computing....una scelta migliore. ICT Information & Communication Technology Cloud Computing...una scelta migliore Communication Technology Che cos è il cloud computing Tutti parlano del cloud. Ma cosa si intende con questo termine? Le applicazioni aziendali stanno passando al

Dettagli

Sommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g

Sommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g Sommario Oracle Database 10g (laboratorio) Dr. Daniele Barone Dr. Simone Grega 1 2 Oracle Database 10g Offre alte qualità del servizio: Performance; Scalabilità; Sicurezza; Affidabilità. Gestione autonoma

Dettagli

Cloud Computing: alcuni punti fermi per non smarrirsi fra le nuvole

Cloud Computing: alcuni punti fermi per non smarrirsi fra le nuvole Cloud Computing: alcuni punti fermi per non smarrirsi fra le nuvole Stefano Mainetti stefano.mainetti@polimi.it L ICT come Commodity L emergere del Cloud Computing e i nuovi modelli di delivery Trend n.

Dettagli

Il cloud per la tua azienda.

Il cloud per la tua azienda. Il cloud per la tua azienda. Questo è Microsoft Cloud Ogni azienda è unica. Dalla sanità alla vendita al dettaglio, alla produzione o alla finanza, non esistono due aziende che operano nello stesso modo.

Dettagli

SERVER E VIRTUALIZZAZIONE. Windows Server 2012. Guida alle edizioni

SERVER E VIRTUALIZZAZIONE. Windows Server 2012. Guida alle edizioni SERVER E VIRTUALIZZAZIONE Windows Server 2012 Guida alle edizioni 1 1 Informazioni sul copyright 2012 Microsoft Corporation. Tutti i diritti sono riservati. Il presente documento viene fornito così come

Dettagli

Attività federale di marketing

Attività federale di marketing Attività federale di marketing Gestione e certificazione delle sponsorizzazioni Il Feedback Web Nel piano di sviluppo della propria attività di marketing, la FIS ha adottato il sistema Feedback Web realizzato

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Introduzione al Cloud Computing

Introduzione al Cloud Computing Risparmiare ed innovare attraverso le nuove soluzioni ICT e Cloud Introduzione al Cloud Computing Leopoldo Onorato Onorato Informatica Srl Mantova, 15/05/2014 1 Sommario degli argomenti Definizione di

Dettagli

Comprendere il Cloud Computing. Maggio, 2013

Comprendere il Cloud Computing. Maggio, 2013 Comprendere il Cloud Computing Maggio, 2013 1 Cos è il Cloud Computing Il cloud computing è un modello per consentire un comodo accesso alla rete ad un insieme condiviso di computer e risorse IT (ad esempio,

Dettagli

Il Web Server e il protocollo HTTP

Il Web Server e il protocollo HTTP Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,

Dettagli

È evidente dunque l'abbattimento dei costi che le soluzioni ASP permettono in quanto:

È evidente dunque l'abbattimento dei costi che le soluzioni ASP permettono in quanto: Sitea Easy Events Il software gestionale per organizzare eventi fieristici Sitea Information Technology presenta Sitea Easy Events, il software gestionale studiato per ottimizzare il processo di organizzazione

Dettagli

Hardware delle reti LAN

Hardware delle reti LAN Hardware delle reti LAN Le reti LAN utilizzano una struttura basata su cavi e concentratori che permette il trasferimento di informazioni. In un ottica di questo tipo, i computer che prendono parte allo

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Che cos'è il cloud computing? e cosa può fare per la mia azienda

Che cos'è il cloud computing? e cosa può fare per la mia azienda Che cos'è il Cloud Computing? Negli ambienti tecnologici non si parla d'altro e in ambito aziendale in molti si pongono la stessa domanda: Che cos'è il cloud computing? e cosa può fare per la mia azienda

Dettagli

Titolare del trattamento dei dati innanzi descritto è tsnpalombara.it

Titolare del trattamento dei dati innanzi descritto è tsnpalombara.it Decreto Legislativo 196/2003 Codice in materia di protezione dei dati personali COOKIE POLICY La presente informativa è resa anche ai sensi dell art. 13 del D.Lgs 196/03 Codice in materia di protezione

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti 20120300 INDICE 1. Introduzione... 3 2. Consultazione... 4 2.1 Consultazione Server Fidati... 4 2.2 Consultazione Servizi Client... 5 2.3 Consultazione Stato richieste... 5 3. Amministrazione... 6 3.1

Dettagli

IL CLOUD COMPUTING DALLE PMI ALLE ENTERPRISE. Salvatore Giannetto Presidente Salvix S.r.l

IL CLOUD COMPUTING DALLE PMI ALLE ENTERPRISE. Salvatore Giannetto Presidente Salvix S.r.l IL CLOUD COMPUTING Salvatore Giannetto Presidente Salvix S.r.l Agenda. - Introduzione generale : il cloud computing Presentazione e definizione del cloud computing, che cos è il cloud computing, cosa serve

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Piano Nazionale di Formazione degli Insegnanti sulle Tecnologie dell'informazione e della Comunicazione. Percorso Formativo C1.

Piano Nazionale di Formazione degli Insegnanti sulle Tecnologie dell'informazione e della Comunicazione. Percorso Formativo C1. Piano Nazionale di Formazione degli Insegnanti sulle Tecnologie dell'informazione e della Comunicazione Percorso Formativo C1 Modulo 2 Computer hardware 1 OBIETTIVI Identificare, descrivere, installare

Dettagli

LE RETI: STRUMENTO AZIENDALE

LE RETI: STRUMENTO AZIENDALE LE RETI: STRUMENTO AZIENDALE INDICE -Introduzione -La rete e i principali tipi di rete -La rete delle reti: Internet -Evoluzione tecnologica di internet: cloud computing -Vantaggi della cloud all interno

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Creare una Rete Locale Lezione n. 1

Creare una Rete Locale Lezione n. 1 Le Reti Locali Introduzione Le Reti Locali indicate anche come LAN (Local Area Network), sono il punto d appoggio su cui si fonda la collaborazione nel lavoro in qualunque realtà, sia essa un azienda,

Dettagli

IT Cloud Service. Semplice - accessibile - sicuro - economico

IT Cloud Service. Semplice - accessibile - sicuro - economico IT Cloud Service Semplice - accessibile - sicuro - economico IT Cloud Service - Cos è IT Cloud Service è una soluzione flessibile per la sincronizzazione dei file e la loro condivisione. Sia che si utilizzi

Dettagli

CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA

CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA 2ª PARTE NEL CAPITOLO PRECEDENTE NOTA METODOLOGICA LA PAROLA AI CIO I MIGLIORI HYPERVISOR AFFIDARSI AI VENDOR INVESTIRE PER IL CLOUD APPLICAZIONI

Dettagli

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

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Dettagli

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

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Soluzioni software per L archiviazione elettronica dei documenti Perché scegliere Q Archiviazione Elettronica dei Documenti? Tale applicativo si pone come obbiettivo

Dettagli

hi-com software realizzato da Hi-Think

hi-com software realizzato da Hi-Think software realizzato da Hi-Think Pag 1 introduzione Hi-com è il programma di Hi-Think che soddisfa l'esigenza di chi, lavorando in ufficio o fuori ufficio, deve avere o scambiare con la propria azienda

Dettagli

Domande e risposte su Avira ProActiv Community

Domande e risposte su Avira ProActiv Community Domande e risposte su Avira ProActiv Community Avira AntiVir versione 10 sfrutta un innovativa tecnologia protettiva cloud-based, denominata ProActiv, che identifica e blocca i nuovi virus non appena questi

Dettagli

Servizio Monitoraggio Energia via Web. CEAM CWS32-H01 Professional Web Platform

Servizio Monitoraggio Energia via Web. CEAM CWS32-H01 Professional Web Platform Servizio Monitoraggio Energia via Web CEAM CWS32-H01 Professional Web Platform Cosa è CWS32-H01 Piattaforma Tecnologica Web Modulare Multifunzionale per il Monitoraggio, Telecontrollo Gestione Manutenzione,

Dettagli

Iniziamo ad utilizzare LiveBox ITALIANO. http://www.liveboxcloud.com

Iniziamo ad utilizzare LiveBox ITALIANO. http://www.liveboxcloud.com 2015 Iniziamo ad utilizzare LiveBox ITALIANO http://www.liveboxcloud.com Iniziamo ad utilizzare LiveBox LiveBox è un software di private cloud che permette di memorizzare, condividere e modificare i documenti

Dettagli

1 2 Fase di autenticazione utente

1 2 Fase di autenticazione utente DInG my Dates di Andrea Dignani DinG my Dates è una applicazione di tipo Reminder, ovvero una app in grado di segnalare in un determinato istante di tempo all' utente un certo avvenimento/evento accaduto

Dettagli

POLICY COOKIE Gentile visitatore,

POLICY COOKIE Gentile visitatore, POLICY COOKIE Gentile visitatore, GGS S.r.l. quale titolare del trattamento dei dati, desidera fornirle alcune informazioni sui cookies gestiti accedendo all indirizzo www.noly.it nel rispetto della Direttiva

Dettagli

Allegato. Servizio Hosting Virtual DataCenter di Regione Lombardia. per l ENTE UCL Asta del Serio

Allegato. Servizio Hosting Virtual DataCenter di Regione Lombardia. per l ENTE UCL Asta del Serio Allegato Servizio Hosting Virtual DataCenter di Regione Lombardia per l ENTE UCL Asta del Serio Contesto Il percorso condotto da Regione Lombardia (RL) per la razionalizzazione dei CED degli ENTI si inserisce

Dettagli

WNoD: Virtualizzazione, Grid e Cloud nel Calcolo Scientifico per l INFN

WNoD: Virtualizzazione, Grid e Cloud nel Calcolo Scientifico per l INFN WNoD: Virtualizzazione, Grid e Cloud nel Calcolo Scientifico per l INFN D. Salomoni Davide.Salomoni@cnaf.infn.it INFN-CNAF CdC CNAF, 16/11/2009 D. Salomoni (INFN-CNAF) WNoD: Virtualizzazione, Grid e Cloud

Dettagli

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING Febbraio Inserto di Missione Impresa dedicato allo sviluppo pratico di progetti finalizzati ad aumentare la competitività delle imprese. COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING COS E UN

Dettagli

SEWEB PRIVATE CLOUD SERVICE SISTEMA CLOUD AZIENDALE

SEWEB PRIVATE CLOUD SERVICE SISTEMA CLOUD AZIENDALE SEWEB PRIVATE CLOUD SERVICE SISTEMA CLOUD AZIENDALE Sommario TIPOLOGIE DI CLOUD... 4 PRIVATE CLOUD... 4 COMMUNITY CLOUD... 4 PUBLIC CLOUD... 4 HYBRID CLOUD... 4 CARATTERISTICHE DEL SERVIZIO OFFERTO...

Dettagli

Iniziamo ad utilizzare LiveBox ITALIANO. http://www.liveboxcloud.com

Iniziamo ad utilizzare LiveBox ITALIANO. http://www.liveboxcloud.com 2014 Iniziamo ad utilizzare LiveBox ITALIANO http://www.liveboxcloud.com LiveBox Srl non rilascia dichiarazioni o garanzie in merito al contenuto o uso di questa documentazione e declina qualsiasi garanzia

Dettagli

Application Server per sviluppare applicazioni Java Enterprise

Application Server per sviluppare applicazioni Java Enterprise Application Server per sviluppare applicazioni Java Enterprise Con il termine Application Server si fa riferimento ad un contenitore, composto da diversi moduli, che offre alle applicazioni Web un ambiente

Dettagli

Sistemi Operativi. Conclusioni e nuove frontiere

Sistemi Operativi. Conclusioni e nuove frontiere Sistemi Operativi (modulo di Informatica II) Conclusioni e nuove frontiere Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Definizione di sistema operativo Evoluzione futura

Dettagli

Visual basic base Lezione 01. L'ambiente di sviluppo

Visual basic base Lezione 01. L'ambiente di sviluppo L'ambiente di sviluppo L'ambiente di sviluppo Visual basic è un linguaggio di programmazione Microsoft. In questo corso prenderemo in considerazione, l'ultima versione. net di questo linguaggio. Microsoft

Dettagli

Finalità della soluzione... 3. Schema generale e modalità d integrazione... 4. Gestione centralizzata in TeamPortal... 6

Finalità della soluzione... 3. Schema generale e modalità d integrazione... 4. Gestione centralizzata in TeamPortal... 6 Finalità della soluzione... 3 Schema generale e modalità d integrazione... 4 Gestione centralizzata in TeamPortal... 6 Dati gestiti dall Anagrafica Unica... 8 Gestione anagrafica... 9 Storicizzazione...

Dettagli

Collegamento remoto vending machines by do-dots

Collegamento remoto vending machines by do-dots Collegamento remoto vending machines by do-dots Ultimo aggiornamento 23 marzo 2011 rev1 - Stesura iniziale 18/10/2010 rev2 - Approfondimenti 12/11/2010 rev3 Riduzione dei contenuti per una lettura generica

Dettagli

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

Case History Sistema di streaming in intranet aziendale Cliente: Armani. www.ingeniumlogic.com

Case History Sistema di streaming in intranet aziendale Cliente: Armani. www.ingeniumlogic.com Case History Sistema di streaming in intranet aziendale Cliente: Armani www.ingeniumlogic.com 1 Richiesta del cliente 1.1 Intranet Il limite principale dell architettura adottata fino adesso risiede nella

Dettagli

Interstudio L INGEGNERE NELLE NUVOLE. App, WEB App e Cloud. ing. Sauro Agostini. Architectural & Engineering Software. venerdì 11 ottobre 13

Interstudio L INGEGNERE NELLE NUVOLE. App, WEB App e Cloud. ing. Sauro Agostini. Architectural & Engineering Software. venerdì 11 ottobre 13 Architectural & Engineering Software L INGEGNERE NELLE NUVOLE App, WEB App e Cloud ing. Sauro Agostini Mitterand 1981 Reagan Battaglin Alice IBM PC 5150 Alonso C ERA UNA VOLTA IL DOS Non è una rivoluzione,

Dettagli

SOLUZIONE Web.Orders online

SOLUZIONE Web.Orders online SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo

Dettagli

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Dettagli

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Dettagli

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...

Dettagli

La posta elettronica in cloud

La posta elettronica in cloud La posta elettronica in cloud www.kinetica.it Cosa significa avere la posta elettronica in cloud? I tuoi archivi di posta non sono residenti su un computer o un server della tua rete, ma su un server di

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Il software per gli esami ICON può essere eseguito su qualunque computer dotato di Java Virtual Machine aggiornata.

Dettagli

Costo Complessivo della Proprietà CRM (TCO, Total-Cost-of-Ownership)

Costo Complessivo della Proprietà CRM (TCO, Total-Cost-of-Ownership) Costo Complessivo della Proprietà CRM (TCO, Total-Cost-of-Ownership) Fonte: CRM Outsiders sponsorizzato da SugarCRM Inc. Autore: Chris Bucholtz 1 SOLUZIONI CRM incluse nell'analisi: Microsoft Dynamics

Dettagli

Creazione di una Azure Web App

Creazione di una Azure Web App Creazione di una Azure Web App Introduzione Oggi le aziende hanno sempre più la necessità di avere uno strumento per interagire con i propri clienti. La presenza sul web dell azienda diventa sempre di

Dettagli

Corso di Amministrazione di Reti A.A. 2002/2003

Corso di Amministrazione di Reti A.A. 2002/2003 Struttura di Active Directory Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm

Dettagli

Ottimizzare l IT. Interesse verso il cloud. Cloud computing. Ottimizzare l'it 16/04/2010. Assyrus Srl 1. Cloud Computing

Ottimizzare l IT. Interesse verso il cloud. Cloud computing. Ottimizzare l'it 16/04/2010. Assyrus Srl 1. Cloud Computing Ottimizzare l IT Cloud Computing Interesse verso il cloud 16/04/2010 Ottimizzare l'it 2 Cloud computing Cloud computing insieme di tecnologie informatiche che permettono l'utilizzo di risorse (storage,

Dettagli

Vodafone Device Manager. La soluzione Vodafone per gestire Smartphone e Tablet aziendali in modo semplice e sicuro

Vodafone Device Manager. La soluzione Vodafone per gestire Smartphone e Tablet aziendali in modo semplice e sicuro La soluzione Vodafone per gestire Smartphone e Tablet aziendali in modo semplice e sicuro In un mondo in cui sempre più dipendenti usano smartphone e tablet per accedere ai dati aziendali, è fondamentale

Dettagli

w w w. n e w s o f t s r l. i t Soluzione Proposta

w w w. n e w s o f t s r l. i t Soluzione Proposta w w w. n e w s o f t s r l. i t Soluzione Proposta Sommario 1. PREMESSA...3 2. NSPAY...4 2.1 FUNZIONI NSPAY... 5 2.1.1 Gestione degli addebiti... 5 2.1.2 Inibizione di un uso fraudolento... 5 2.1.3 Gestione

Dettagli

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

COOKIE POLICY DEL SITO

COOKIE POLICY DEL SITO COOKIE POLICY DEL SITO PREMESSA Questa pagina costituisce una sezione dell'informativa privacy estesa consultabile sul sito e descrive nello specifico l'utilizzo dei cookie effettuato dal titolare. INFORMAZIONI

Dettagli

Installazione e caratteristiche generali 1

Installazione e caratteristiche generali 1 Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato

Dettagli

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE 1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma

Dettagli

LA MIGRAZIONE IN SEMPLICI STEP. Il moving di una macchina Linux sul Cloud Server Seeweb

LA MIGRAZIONE IN SEMPLICI STEP. Il moving di una macchina Linux sul Cloud Server Seeweb LA MIGRAZIONE IN SEMPLICI STEP Il moving di una macchina Linux sul Cloud Server Seeweb La migrazione in semplici step [ 1 ] Indice 1. Perché cambiare provider 2. La migrazione in pillole 3. Come cambiare

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli

Proposta UNIF Progetto: Portale delle fonti di energia rinnovabile. Obiettivi

Proposta UNIF Progetto: Portale delle fonti di energia rinnovabile. Obiettivi Proposta UNIF Progetto: Portale delle fonti di energia rinnovabile Pag.1 Obiettivi Il progetto, Portale delle fonti di energia rinnovabile, ha l obiettivo di facilitare lo scambio di informazioni e notizie

Dettagli

Docebo: la tua piattaforma E-Learning Google Ready.

Docebo: la tua piattaforma E-Learning Google Ready. Docebo: la tua piattaforma E-Learning Google Ready. Potenzia la tua suite Google Apps con Piattaforma FAD e Tutorial gratuiti Docebo! Docebo aiuta le aziende nella transizione da altre suite d ufficio

Dettagli

Circolo Canottieri Napoli

Circolo Canottieri Napoli Circolo Canottieri Napoli presentazione progetto Rev. 0 del 27 dicembre 2012 Cliente: Circolo Canottieri Napoli Realizzazione Sito Web Definizione del progetto Il cliente ha la necessità di creare il nuovo

Dettagli

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

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

Provincia di Rimini Servizio Infrastrutture Territoriali e Tecnologiche Ufficio Sistemi Informativi. Scambio dati digitali Cittadini Provincia

Provincia di Rimini Servizio Infrastrutture Territoriali e Tecnologiche Ufficio Sistemi Informativi. Scambio dati digitali Cittadini Provincia Servizio Infrastrutture Territoriali e Tecnologiche Scambio dati digitali Cittadini Provincia Ruggero Ruggeri Silvia Sarti Maggio 2012 Progetto Interscambio Dati Introduzione Obiettivo del seguente progetto

Dettagli

1. Il Client Skype for Business

1. Il Client Skype for Business 1. Il Client Skype for Business 2. Configurare una Periferica Audio 3. Personalizzare una Periferica Audio 4. Gestire gli Stati di Presenza 5. Tabella Stati di Presenza 6. Iniziare una Chiamata 7. Iniziare

Dettagli

La platea dopo la lettura del titolo del mio intervento

La platea dopo la lettura del titolo del mio intervento La platea dopo la lettura del titolo del mio intervento 2 In realtà..il presupposto è semplice. 3 Cloud computing è un nuovo modo di fornire risorse,, non una nuova tecnologia! P.S. in realtà un modo neanche

Dettagli

itime Chiaramente inclusa la stampa del cartellino presenze come previsto dalle normative

itime Chiaramente inclusa la stampa del cartellino presenze come previsto dalle normative itime itime Il software di rilevazione presenze itime rappresenta lo strumento ideale per l automatizzazione della gestione del personale. L ampia presenza dei parametri facilita l operatore nel controllo

Dettagli

Sistemi Mobili e Wireless Android Primi passi

Sistemi Mobili e Wireless Android Primi passi Sistemi Mobili e Wireless Android Primi passi Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Ambiente di sviluppo L'ambiente

Dettagli

ESERCITAZIONE Semplice creazione di un sito Internet

ESERCITAZIONE Semplice creazione di un sito Internet ESERCITAZIONE Semplice creazione di un sito Internet Sistemi e Tecnologie Informatiche - Prof. Gregorio Cosentino 1 Internet Una rete globale che connette milioni di computer in tutto il mondo, anarchica

Dettagli

La ricerca delle informazioni nei siti web di Ateneo con Google Search Appliance Progetto, implementazione e sviluppi

La ricerca delle informazioni nei siti web di Ateneo con Google Search Appliance Progetto, implementazione e sviluppi La ricerca delle informazioni nei siti web di Ateneo con Google Search Appliance Progetto, implementazione e sviluppi Il progetto del sistema di ricerca delle informazioni L'esigenza del sistema di ricerca

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

Come Creare un sito web gratis

Come Creare un sito web gratis Come Creare un sito web gratis Obiettivi del corso Creare un sito web da zero a professionista Senza avere competenze tecniche Senza essere un informatico Senza sapere nessun linguaggio di programmazione

Dettagli

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

Nota Tecnica UBIQUITY 5 TN0019. Il documento descrive le novità introdotte con la versione 5 della piattaforma software ASEM Ubiquity. UBIQUITY 5 Introduzione Il documento descrive le novità introdotte con la versione 5 della piattaforma software ASEM Ubiquity. Versione Descrizione Data 1 Prima emissione 20/01/2015 Disclaimer Le informazioni

Dettagli

ICARO Terminal Server per Aprile

ICARO Terminal Server per Aprile ICARO Terminal Server per Aprile Icaro è un software aggiuntivo per Aprile (gestionale per centri estetici e parrucchieri) con funzionalità di terminal server: gira sullo stesso pc dove è installato il

Dettagli

Stefano Mainetti Fondazione Politecnico di Milano

Stefano Mainetti Fondazione Politecnico di Milano Quale Roadmap per il Cloud Computing? Stefano Mainetti Fondazione Politecnico di Milano stefano.mainetti@fondazione.polimi.it La definizione classica del Cloud Computing 4 modelli di deployment Cloud private

Dettagli

lem logic enterprise manager

lem logic enterprise manager logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle

Dettagli

La Soluzione per CdA e Top Management. La soluzione è Secure Board by Boole Server

La Soluzione per CdA e Top Management. La soluzione è Secure Board by Boole Server La Soluzione per Fusioni e acquisizioni, changing management, pianificazione e sviluppo del business, la documentazione correlata ai consigli di amministrazione, il corretto utilizzo dei documenti riservati

Dettagli

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE

Dettagli

Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale

Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale Network Monitoring & Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale Nicholas Pocher Poker SpA - Settimo Torinese, Novembre 2013 1 Indice Il Network Monitoring:

Dettagli

CONTENT MANAGEMENT SYSTEM

CONTENT MANAGEMENT SYSTEM CONTENT MANAGEMENT SYSTEM P-2 PARLARE IN MULTICANALE Creare un portale complesso e ricco di informazioni continuamente aggiornate, disponibile su più canali (web, mobile, iphone, ipad) richiede competenze

Dettagli

Cloud Computing e Mobility:

Cloud Computing e Mobility: S.A.F. SCUOLA DI ALTA FORMAZIONE LUIGI MARTINO Cloud Computing e Mobility: Lo studio professionale agile e sicuro Davide Grassano Membro della Commissione Informatica 4 dicembre 2013 - Milano Agenda 1

Dettagli

Università Politecnica delle Marche. Progetto Didattico

Università Politecnica delle Marche. Progetto Didattico Università Politecnica delle Marche Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica e dell Automazione Sede di Ancona Anno Accademico 2011-2012 Corso di Tecnologie WEB Docente prof. Alessandro

Dettagli

Virtualization. Strutturare per semplificare la gestione. ICT Information & Communication Technology

Virtualization. Strutturare per semplificare la gestione. ICT Information & Communication Technology Virtualization Strutturare per semplificare la gestione Communication Technology Ottimizzare e consolidare Le organizzazioni tipicamente si sviluppano in maniera non strutturata e ciò può comportare la

Dettagli

Sistemi per la produzione, gestione e conservazione di contenuti digitali CMS. L12 - Comunicazione e archiviazione digitale A.A 2015-2016.

Sistemi per la produzione, gestione e conservazione di contenuti digitali CMS. L12 - Comunicazione e archiviazione digitale A.A 2015-2016. Sistemi per la produzione, gestione e conservazione di contenuti digitali L12 - Comunicazione e archiviazione digitale A.A 2015-2016 Carlo Savoretti carlo.savoretti@unimc.it Produzione Contenuti prodotti

Dettagli

Il modello di ottimizzazione SAM

Il modello di ottimizzazione SAM Il modello di ottimizzazione control, optimize, grow Il modello di ottimizzazione Il modello di ottimizzazione è allineato con il modello di ottimizzazione dell infrastruttura e fornisce un framework per

Dettagli

WorkFLow (Gestione del flusso pratiche)

WorkFLow (Gestione del flusso pratiche) WorkFLow (Gestione del flusso pratiche) Il workflow è l'automazione di una parte o dell'intero processo aziendale dove documenti, informazioni e compiti vengono passati da un partecipante ad un altro al

Dettagli

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

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

Agent, porte, connettività e reti... 3. L agent di Kaseya utilizza la porta 5721 per comunicare con il server, ma che tipo di porta è?...

Agent, porte, connettività e reti... 3. L agent di Kaseya utilizza la porta 5721 per comunicare con il server, ma che tipo di porta è?... Kaseya Domande e Risposte Agent, porte, connettività e reti... 3 L agent di Kaseya utilizza la porta 5721 per comunicare con il server, ma che tipo di porta è?...3 Quanta memoria occupa l agent di Kaseya?...3

Dettagli

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

UN APP FLESSIBILE E INTUITIVA PER GESTIRE I TUOI AFFARI IN TUTTA COMODITÀ UN APP FLESSIBILE E INTUITIVA PER GESTIRE I TUOI AFFARI IN TUTTA COMODITÀ APP Mobile MIGLIORA LA QUALITÀ DEL RAPPORTO CON I CLIENTI, SCEGLI LA TECNOLOGIA DEL MOBILE CRM INTEGRABILE AL TUO GESTIONALE AZIENDALE

Dettagli