UNITA 3 Gruppo Architetture 31 maggio 2010
|
|
- Rita Bertoni
- 8 anni fa
- Visualizzazioni
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 Cos è il Cloud Computing? Con cloud computing si indica un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio, di memorizzare/
DettagliTecniche 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
DettagliScuola 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
DettagliGartner 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
DettagliCloud 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
DettagliSommario. 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
DettagliCloud 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.
DettagliIl 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.
DettagliSERVER 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
DettagliAttività 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
DettagliApproccio 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
DettagliIntroduzione 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
DettagliComprendere 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,
DettagliIl 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:
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
DettagliHardware 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
DettagliArchitetture Applicative
Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture
DettagliChe 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
DettagliTitolare 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
DettagliCapitolo 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,
DettagliServizi 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
DettagliIL 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
DettagliSoftware 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
DettagliPiano 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
DettagliLE 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
DettagliSoftware 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
DettagliCreare 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,
DettagliIT 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
DettagliCLOUD 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
DettagliI 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
Dettagliuadro 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
Dettaglihi-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
DettagliDomande 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
DettagliServizio 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,
DettagliIniziamo 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
Dettagli1 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
DettagliPOLICY 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
DettagliAllegato. 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
DettagliWNoD: 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
DettagliCOME 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
DettagliSEWEB 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...
DettagliIniziamo 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
DettagliApplication 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
DettagliSistemi 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
DettagliVisual 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
DettagliFinalità 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...
DettagliCollegamento 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
DettagliIl 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
DettagliCase 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
DettagliInterstudio 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,
DettagliSOLUZIONE 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
DettagliArchitetture 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
DettagliArchitetture 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
DettagliMANUALE 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...
DettagliLa 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
DettagliIntroduzione 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
DettagliIstruzioni 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.
DettagliCosto 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
DettagliCreazione 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
DettagliCorso 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
DettagliOttimizzare 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,
DettagliVodafone 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
Dettagliw 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
DettagliIntroduzione 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
DettagliCOOKIE 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
DettagliInstallazione 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
DettagliMANUALE 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
DettagliLA 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
DettagliNAVIGAORA 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
DettagliProposta 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
DettagliDocebo: 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
DettagliCircolo 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
DettagliManuale 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
DettagliProvincia 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
Dettagli1. 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
DettagliLa 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
Dettagliitime 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
DettagliSistemi 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
DettagliESERCITAZIONE 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
DettagliLa 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
DettagliFPf 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
DettagliCome 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
DettagliNota 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
DettagliICARO 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
DettagliStefano 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
Dettaglilem 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
DettagliLa 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
Dettagli11/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
DettagliNetwork 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:
DettagliCONTENT 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
DettagliCloud 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
DettagliUniversità 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
DettagliVirtualization. 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
DettagliSistemi 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
DettagliIl 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
DettagliWorkFLow (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
DettagliCome 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
DettagliRegistratori 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...
DettagliAgent, 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
DettagliUN 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