UNITA 3 Gruppo Architetture 31 maggio 2010

Save this PDF as:
 WORD  PNG  TXT  JPG

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 - 17

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

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

ANDROID. Domenico Talia. Università della Calabria. talia@dimes.unical.it

ANDROID. Domenico Talia. Università della Calabria. talia@dimes.unical.it ANDROID Domenico Talia Università della Calabria talia@dimes.unical.it Sistemi Operativi per Mobile! I sistemi operativi per sistemi mobili seguono i principi dei SO classici ma devono gestire risorse

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

Android development. Sviluppo di Mobile Apps sul sistema operativo di Google

Android development. Sviluppo di Mobile Apps sul sistema operativo di Google Android development Sviluppo di Mobile Apps sul sistema operativo di Google Agenda Giorni: Gio 14/04/2011 Ven 15/04/2011 Gio 21/04/2011 Ven 22/04/2011 Suddivisione: Mattina: teoria Pomeriggio: pratica

Dettagli

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

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

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

Android. Anatomia di una applicazione

Android. Anatomia di una applicazione Android Anatomia di una applicazione Elementi di base Gli elementi di base per costruire una applicazione Android sono cinque: Activity Intent Broadcast Receiver Service Content Provider 2 Activity (1/3)

Dettagli

Sistemi Mobili e Wireless Android Introduzione alla piattaforma

Sistemi Mobili e Wireless Android Introduzione alla piattaforma Sistemi Mobili e Wireless Android Introduzione alla piattaforma Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Cos'è Android?

Dettagli

Programmazione in ambiente

Programmazione in ambiente Università Politecnica delle Marche Dipartimento di Ingegneria dell Informazione Programmazione in ambiente Android Laura Montanini - laura.montanini@univpm.it Corso di Tecnologie per le TLC 2013-2014

Dettagli

Il Cloud Computing: uno strumento per migliorare il business

Il Cloud Computing: uno strumento per migliorare il business Il Cloud Computing: uno strumento per migliorare il business Luca Zanetta Uniontrasporti I venti dell'innovazione - Imprese a banda larga Varese, 9 luglio 2014 1 / 22 Sommario Cos è il cloud computing

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

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 alla famiglia di soluzioni Windows Small Business Server

Introduzione alla famiglia di soluzioni Windows Small Business Server Introduzione alla famiglia di soluzioni Windows Small Business Server La nuova generazione di soluzioni per le piccole imprese Vantaggi per le piccole imprese Progettato per le piccole imprese e commercializzato

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

RELAZIONE E COMUNICAZIONE. Sviluppare la gestione delle relazioni con i clienti grazie a:

RELAZIONE E COMUNICAZIONE. Sviluppare la gestione delle relazioni con i clienti grazie a: RELAZIONE E COMUNICAZIONE Sviluppare la gestione delle relazioni con i clienti grazie a: Microsoft Office System 2007 Windows Vista Microsoft Exchange Server 2007 è ancora più potente ed efficace, grazie

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

Formazione e Apprendimento in Rete Open source. Il cloud computing. Dropbox e Google Drive ambienti di condivisione e collaborazione

Formazione e Apprendimento in Rete Open source. Il cloud computing. Dropbox e Google Drive ambienti di condivisione e collaborazione Formazione e Apprendimento in Rete Open source Il cloud computing Dropbox e Google Drive ambienti di condivisione e collaborazione Formazione insegnanti Generazione Web Lombardia Il Cloud, metafora per

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

CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. Prima parte: Panoramica sugli attori

CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. Prima parte: Panoramica sugli attori ANALISI 11 marzo 2012 CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY Nella newsletter N 4 abbiamo già parlato di Cloud Computing, introducendone

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

Apps4Law: Riflessioni sul Cloud Computing. Roma 21 marzo 2013 Sala Seminari UNIRIZ. Alessandro Graziani, Avvocato alessandrograziani@iuslaw.

Apps4Law: Riflessioni sul Cloud Computing. Roma 21 marzo 2013 Sala Seminari UNIRIZ. Alessandro Graziani, Avvocato alessandrograziani@iuslaw. Apps4Law: Riflessioni sul Cloud Computing Roma 21 marzo 2013 Sala Seminari UNIRIZ 2 3 Il Cloud Computing si definisce consuetamente secondo due distinte accezioni: 1. un di carattere tecnologico 2. l altra

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

Linux Day 2009 24/10/09. Cloud Computing. Diego Feruglio

Linux Day 2009 24/10/09. Cloud Computing. Diego Feruglio Linux Day 2009 24/10/09 Cloud Computing Diego Feruglio Cos è il Cloud Computing? An emerging computing paradigm where data and services reside in massively scalable data centers and can be ubiquitously

Dettagli

Allegato 1 CIG 58703795FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO

Allegato 1 CIG 58703795FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO SOMMARIO 1 Oggetto della Fornitura... 3 2 Composizione della Fornitura... 3 2.1 Piattaforma

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

IL PRIVATE CLOUD DELLA FRIENDS' POWER

IL PRIVATE CLOUD DELLA FRIENDS' POWER IL PRIVATE CLOUD DELLA FRIENDS' POWER Evoluzione al Cloud Computing Condivisione dei lavori Integrazione con Android & iphone Cos è il Cloud: le forme e i vantaggi Durante la rivoluzione industriale, le

Dettagli

MCloud.Gov l infrastruttura SaaS per la Pubblica Amministrazione locale

MCloud.Gov l infrastruttura SaaS per la Pubblica Amministrazione locale MCloud.Gov l infrastruttura SaaS per la Pubblica Amministrazione locale 1. Livello infrastrutturale Il Cloud, inteso come un ampio insieme di risorse e servizi fruibili da Internet che possono essere dinamicamente

Dettagli

Abstract. Reply e il Cloud Computing: la potenza di internet e un modello di costi a consumo. Il Cloud Computing per Reply

Abstract. Reply e il Cloud Computing: la potenza di internet e un modello di costi a consumo. Il Cloud Computing per Reply Abstract Nei nuovi scenari aperti dal Cloud Computing, Reply si pone come provider di servizi e tecnologie, nonché come abilitatore di soluzioni e servizi di integrazione, volti a supportare le aziende

Dettagli

CLOUD COMPUTING. Che cos è il Cloud

CLOUD COMPUTING. Che cos è il Cloud CLOUD COMPUTING Che cos è il Cloud Durante la rivoluzione industriale, le imprese che si affacciavano per la prima volta alla produzione dovevano costruirsi in casa l energia che, generata da grandi macchine

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

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

Brochure DATA CENTER. www.novell.com. Novell Cloud Manager. Costruite e gestite ambienti cloud privati. (Finalmente è arrivato il cloud)

Brochure DATA CENTER. www.novell.com. Novell Cloud Manager. Costruite e gestite ambienti cloud privati. (Finalmente è arrivato il cloud) Brochure DATA CENTER Novell Cloud Manager Costruite e gestite ambienti cloud privati (Finalmente è arrivato il cloud) Novell Cloud Manager: il modo più semplice per creare e gestire ambienti cloud WorkloadIQ

Dettagli

INTRODUZIONE ALLE PIATTAFORME

INTRODUZIONE ALLE PIATTAFORME INTRODUZIONE ALLE PIATTAFORME Android ios Windows Phone 8 Android 2 Cos è Android? Un moderno open-source sistema operativo Componenti: Linux kernel Java Core applications 3 Perché è stato un successo

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

LA TECHNOLOGY TRANSFER PRESENTA. Sviluppare e Integrare. basate sul CLOUD ROMA 11-12 NOVEMBRE 2010 RESIDENZA DI RIPETTA - VIA DI RIPETTA, 231

LA TECHNOLOGY TRANSFER PRESENTA. Sviluppare e Integrare. basate sul CLOUD ROMA 11-12 NOVEMBRE 2010 RESIDENZA DI RIPETTA - VIA DI RIPETTA, 231 LA TECHNOLOGY TRANSFER PRESENTA GERHARD BAYER Sviluppare e Integrare le Business Applications basate sul CLOUD ROMA 11-12 NOVEMBRE 2010 RESIDENZA DI RIPETTA - VIA DI RIPETTA, 231 info@technologytransfer.it

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

Office 2010 e Office 365: il tuo ufficio sempre con te

Office 2010 e Office 365: il tuo ufficio sempre con te Office 2010 e Office 365: il tuo ufficio sempre con te Accedi ai tuoi documenti e messaggi di posta ovunque sei, sia online che offline, sul PC, sul telefono o sul browser. Usi Office, Excel, Word in ufficio

Dettagli

Processo di Sviluppo delle Applicazioni

Processo di Sviluppo delle Applicazioni Processo di Sviluppo delle Applicazioni La realizzazione di un applicazione come Vivere Ateneo App Domenico Zarcone Ognuno ha il suo ambiente Quali sono gli ambienti integrati di sviluppo più utilizzati?

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

"Cloud Business Solutions" di INTESA Descrizione del Servizio SMART SALES

Cloud Business Solutions di INTESA Descrizione del Servizio SMART SALES "Cloud Business Solutions" di INTESA Descrizione del Servizio SMART SALES 1. Accesso ai Servizi Il Portale INTESA, le informazioni riguardanti l'utilizzo da parte del Cliente del Servizio Cloud le informazioni

Dettagli

Sicurezza accessi, su software e piattaforme diverse, anche da dispositivi mobili, com è possibile?

Sicurezza accessi, su software e piattaforme diverse, anche da dispositivi mobili, com è possibile? Rimini, 1/2015 Sicurezza accessi, su software e piattaforme diverse, anche da dispositivi mobili, com è possibile? Le configurazioni con Server e desktop remoto (remote app), che possa gestire i vostri

Dettagli

IT ARCHITECTURE: COME PREPARARSI AL CLOUD

IT ARCHITECTURE: COME PREPARARSI AL CLOUD IT ARCHITECTURE: COME PREPARARSI AL CLOUD Stefano Mainetti stefano.mainetti@polimi.it L ICT come Commodity L emergere del Cloud Computing e i nuovi modelli di delivery Trend n. 1 - ICT Commoditization

Dettagli

Il Cloud Computing nel mondo dei servizi: prospettive per Banche e PA

Il Cloud Computing nel mondo dei servizi: prospettive per Banche e PA Forum Banche e PA 2012 Roma, 23 24 Febbraio 2012 Il Cloud Computing nel mondo dei servizi: prospettive per Banche e PA Monica Pellegrino Research Analyst, ABI Lab Roma, 23 Febbraio 2012-1- Agenda L evoluzione

Dettagli

Didit Interactive Solution

Didit Interactive Solution Didit Interactive Solution Didit Interactive Solution Moonway.it Versione Italiana Data: Settembre 2008 Contenuti Introduzione... 3 Componenti Windows Richiesti... 3 Guidelines Generali di Configurazione...

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

I nuovi modelli di delivery dell IT: un quadro di riferimento

I nuovi modelli di delivery dell IT: un quadro di riferimento I nuovi modelli di delivery dell IT: un quadro di riferimento Stefano Mainetti Fondazione Politecnico di Milano stefano.mainetti@polimi.it Milano, 25 Ottobre 2010 Cloud Computing: il punto d arrivo Trend

Dettagli

Applicazioni mobile Perchè investire e quali tecnologie usare

Applicazioni mobile Perchè investire e quali tecnologie usare GIANLUCA VAGLIO Applicazioni mobile Perchè investire e quali tecnologie usare 2010 Gianluca Vaglio www.gianlucavaglio.net Avvertenze legali AVVERTENZE LEGALI Copyright 2010 Gianluca Vaglio. La presente

Dettagli

www.zetaqlab.com C-Light Web-based Management Software

www.zetaqlab.com C-Light Web-based Management Software www.zetaqlab.com C-Light Web-based Management Software WEB-BASED MANAGEMENT SOFTWARE C-Light è l applicazione per la gestione locale (intranet) e remota (internet) di ogni impianto d automazione integrabile

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

Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08

Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08 Università di Modena e Reggio Emilia Panoramica Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08 Docente: andrea.bulgarelli@gmail.com Argomento: struttura SQL Server (1.0)! Componenti! Edizioni!

Dettagli

Programmazione Android

Programmazione Android Programmazione Android Giovanni Perbellini, Stefano Cordibella Università di Verona EDALab S.r.l. Agenda Introduzione Android Overview Ambiente di sviluppo Esempi Helloworld Weather 2 1 Cos è Android?

Dettagli

L iniziativa Cloud DT

L iniziativa Cloud DT L iniziativa Cloud DT Francesco Castanò Dipartimento del Tesoro Ufficio per il Coordinamento Informatico Dipartimentale (UCID) Roma, Luglio 2011 Il Cloud Computing Alcune definizioni Il Cloud Computing

Dettagli

Nuova ECDL ONLINE COLLABORATION

Nuova ECDL ONLINE COLLABORATION PATENTE EUROPEA DEL COMPUTER Nuova ECDL ONLINE COLLABORATION CONCETTI FONDAMENTALI USO DI DISPOSITIVI MOBILI APPLICAZIONI SINCRONIZZAZIONE 4. COLLABORAZIONE MOBILE 4.1. Concetti fondamentali 4.1.1 Identificare

Dettagli

Virtualizzazione e Cloud Computing

Virtualizzazione e Cloud Computing Virtualizzazione e Cloud Computing 12 marzo 2015 Claudio Bizzarri claudio@bizzarri.net Ordine degli Ingegneri di Pistoia La virtualizzazione Macchine reali e macchine virtuali Vantaggi della virtualizzazione

Dettagli

Sme.UP Web Application

Sme.UP Web Application Sme.UP Web Application Web Application Web.UP Una interfaccia web per i vostri dati gestionali Il modulo applicativo Web.UP fornisce al progettista di siti Internet una serie di potenti strumenti per l'integrazione

Dettagli

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved WEB TECHNOLOGY Il web connette LE persone Indice «Il Web non si limita a collegare macchine, ma connette delle persone» Il Www, Client e Web Server pagina 3-4 - 5 CMS e template pagina 6-7-8 Tim Berners-Lee

Dettagli

Come Funziona. Virtualizzare con VMware

Come Funziona. Virtualizzare con VMware Virtualize IT Il Server? Virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

EyesDGTV. Your digital terrestrial television. Soluzioni Informatiche

EyesDGTV. Your digital terrestrial television. Soluzioni Informatiche EyesDGTV Your digital terrestrial television Soluzioni Informatiche Cos è EyesDGTV è la soluzione che Betacom propone per la televisione digitale terrestre. Basata su tecnologie consolidate, quali J2EE

Dettagli

Caratteristiche e funzionalità del cloud computing. Marco Barbi Flavio Bonfatti Laboratorio Softech ICT Università di Modena e Reggio Emilia

Caratteristiche e funzionalità del cloud computing. Marco Barbi Flavio Bonfatti Laboratorio Softech ICT Università di Modena e Reggio Emilia Caratteristiche e funzionalità del cloud computing Marco Barbi Flavio Bonfatti Laboratorio Softech ICT Università di Modena e Reggio Emilia Sommario Premesse: definizioni Prima del cloud computing: evoluzione

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 Questi lucidi sono stati prodotti sulla

Dettagli

Corso App modulo Android. Antonio Gallo info@laboratoriolibero.com

Corso App modulo Android. Antonio Gallo info@laboratoriolibero.com Corso App modulo Android Antonio Gallo info@laboratoriolibero.com Strumentazione: PC + smartphone Android + cavo micro USB per connessione Framework Phonegap SDK di Android JDK (Java) Eclipse (opzionale)

Dettagli

Novell ZENworks Configuration Management in ambiente Microsoft * Windows *

Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Guida GESTIONE SISTEMI www.novell.com Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Novell ZENworks Configuration Management in ambiente Microsoft Windows Indice: 2..... Benvenuti

Dettagli

Desktop Cloud: modelli, vantaggi, criticità

Desktop Cloud: modelli, vantaggi, criticità Dipartimento di Elettronica e Informazione Desktop Cloud: modelli, vantaggi, criticità Eugenio Capra eugenio.capra@polimi.it Evento ZeroUno, Milano, 24 marzo 2011 Le esigenze degli IT manager Le principali

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

MANUALE www.logisticity.it. Copryright 2015 - All rights reserved Email: info@logisticity.it - P.IVA 04183950403

MANUALE www.logisticity.it. Copryright 2015 - All rights reserved Email: info@logisticity.it - P.IVA 04183950403 MANUALE www.logisticity.it Copryright 2015 - All rights reserved Email: info@logisticity.it - P.IVA 04183950403 INDICE Presentazione... pag. 02 Applicativo... pag. 03 Amministrazione...pag. 06 Licenza...pag.

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

PROFILO AZIENDALE 2011

PROFILO AZIENDALE 2011 PROFILO AZIENDALE 2011 NET STUDIO Net Studio è un azienda che ha sede in Toscana ma opera in tutta Italia e in altri paesi Europei per realizzare attività di Consulenza, System Integration, Application

Dettagli

CLOUD E... DARK CLOUDS

CLOUD E... DARK CLOUDS CLOUD E... DARK CLOUDS Cos'è il Cloud Compu-ng? Google: 387.000.000 di risulta- Wikipedia: indica un insieme di tecnologie che permeaono, -picamente soao forma di un servizio offerto da un provider al

Dettagli

Soluzioni innovative per la semplificazione dell infrastruttura IT. Virtualizzazione con il sistema operativo IBM i, PowerVM e Power Systems

Soluzioni innovative per la semplificazione dell infrastruttura IT. Virtualizzazione con il sistema operativo IBM i, PowerVM e Power Systems Soluzioni innovative per la semplificazione dell infrastruttura IT Virtualizzazione con il sistema operativo IBM i, PowerVM e Power Systems Caratteristiche principali La flessibilità e la scalabilità della

Dettagli

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity.

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. UBIQUITY 6 e Server Privato Introduzione Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. Versione Descrizione Data 1 Prima emissione 21/06/2015 Disclaimer

Dettagli

Antonio Brunetti, Mathias Galizia, Fabio Campanella

Antonio Brunetti, Mathias Galizia, Fabio Campanella Atti Progetto AQUATER, Bari, 31 ottobre 2007, 9-14 LA BANCA DATI DEI PROGETTI DI RICERCA E L ARCHIVIO DOCUMENTALE DEL CRA Antonio Brunetti, Mathias Galizia, Fabio Campanella Consiglio per la Ricerca e

Dettagli

I N F I N I T Y Z U C C H E T T I INFINITY APPLICA A TION FRAMEWORK APPLICA

I N F I N I T Y Z U C C H E T T I INFINITY APPLICA A TION FRAMEWORK APPLICA I N F I N I T Y Z U C C H E T T I INFINITY APPLICATION FRAMEWORK Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali Infinity Application Framework

Dettagli

VDI IN A BOX. www.lansolution.it - info@lansolution.it - 051 5947388

VDI IN A BOX. www.lansolution.it - info@lansolution.it - 051 5947388 VDI IN A BOX Con le soluzioni Citrix e la professionalità di Lansolution, ora puoi: -Ridurre i costi -Garantire la sicurezza -Incrementare la produttività -Lavorare ovunque* La flessibilità del luogo di

Dettagli

Cloud Computing: la prospettiva della Banca d Italia

Cloud Computing: la prospettiva della Banca d Italia Cloud Computing: la prospettiva della Banca d Italia Roma, 5 ottobre 2010 ing. Giovanni Peruggini Banca d Italia - Area Risorse Informatiche e Rilevazioni Statistiche La Banca d Italia Banca Centrale della

Dettagli

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2.

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2. Basi Android 1 Android Cosa è Android? Android è un insieme di strumen8 e librerie per sviluppare applicazioni mobili è più di un SO Android si definisce open Con8ene tecnologie open source Linux Il codice

Dettagli

Una rassegna dei sistemi operativi per il Cloud Computing

Una rassegna dei sistemi operativi per il Cloud Computing Alma Mater Studiorum Università di Bologna SCUOLA DI SCIENZE Corso di Laurea in Informatica Una rassegna dei sistemi operativi per il Cloud Computing Tesi di Laurea in Reti di Calcolatori Relatore: Chiar.mo

Dettagli

Proposta App Smartphone e Tablet per Ufficio Concorsi Polizia di Stato

Proposta App Smartphone e Tablet per Ufficio Concorsi Polizia di Stato Proposta App Smartphone e Tablet per Ufficio Concorsi Polizia di Stato Indice App to you Introduzione Requisiti Funzionali Casi d uso Architettura SOA Proposte Dispositivi Supportati L App News Concorsi

Dettagli

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it il server? virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente modificando

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

WEBsfa: l automazione della forza vendita via Web

WEBsfa: l automazione della forza vendita via Web WEBsfa: l automazione della forza vendita via Web White Paper 1 Gennaio 2005 White Paper Pag. 1 1/1/2005 L automazione della Forza Vendita Le aziende commerciali che che sviluppano e alimentano il proprio

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla

Dettagli

JCLOUD... PORTA IL TUO BUSINESS SULLA NUVOLA

JCLOUD... PORTA IL TUO BUSINESS SULLA NUVOLA JCloud Web Desktop JCLOUD... PORTA IL TUO BUSINESS SULLA NUVOLA OVUNQUE TI TROVI JCloud è il desktop che ti segue ovunque, è sufficiente una connessione ad internet ed un browser HTML5 per accedere ai

Dettagli

Annuncio software IBM per Europa, Medio Oriente e Africa ZP09-0108, 5 maggio 2009

Annuncio software IBM per Europa, Medio Oriente e Africa ZP09-0108, 5 maggio 2009 ZP09-0108, 5 maggio 2009 I prodotti aggiuntivi IBM Tivoli Storage Manager 6.1 offrono una protezione dei dati e una gestione dello spazio migliorate per ambienti Microsoft Windows Indice 1 In sintesi 2

Dettagli

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows i SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows Per ulteriori informazioni sui prodotti software SPSS Inc., visitare il sito Web all indirizzo http://www.spss.it o contattare: SPSS

Dettagli

Libera il tuo business UNIFIED COMMUNICATION CLOUD COMPUTING

Libera il tuo business UNIFIED COMMUNICATION CLOUD COMPUTING Libera il tuo business UNIFIED COMMUNICATION CLOUD COMPUTING 53% ottimizzazione dei costi di implementazione 48% risparmio sui costi di manutenzione 46% velocità di innovazione 30% costi adattabili in

Dettagli

Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali

Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali Infinity Application Framework è la base di tutte le applicazioni della famiglia Infinity Project

Dettagli

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni)

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni) Progettazione di Sistemi Interattivi Struttura e supporti all implementazione di applicazioni in rete (cenni) Docente: Daniela Fogli Gli strati e la rete Stratificazione da un altro punto di vista: i calcolatori

Dettagli

FileMaker Pro 13. Utilizzo di una Connessione Desktop Remota con FileMaker Pro13

FileMaker Pro 13. Utilizzo di una Connessione Desktop Remota con FileMaker Pro13 FileMaker Pro 13 Utilizzo di una Connessione Desktop Remota con FileMaker Pro13 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Applicazione Mobile GPL4i

Applicazione Mobile GPL4i Applicazione Mobile GPL4i Copyright 2010 2014 JetLab S.r.l. Tutti i diritti riservati Copyright 2014 2015 JetLab S.r.l. Tutti i diritti riservati GPL4i è un marchio di JetLab S.r.l. Microsoft, Windows,

Dettagli

Release 01.07.00B WHIT E PAPER. e-commerce. e-commerce Pag. 1

Release 01.07.00B WHIT E PAPER. e-commerce. e-commerce Pag. 1 Release 01.07.00B WHIT E PAPER Pag. 1 Il modulo di è il modulo di e/ che, attraverso internet, mette in contatto l azienda con tutti i propri interlocutori remoti (rivenditori, clienti, ma anche agenti

Dettagli

14 maggio 2010 Versione 1.0

14 maggio 2010 Versione 1.0 SOFTWARE PER LA GESTIONE DI UN SISTEMA PER LA RILEVAZIONE DELLA QUALITÀ PERCEPITA DAGLI UTENTI, NEI CONFRONTI DI SERVIZI RICHIESTI ALLA PUBBLICA AMMINISTRAZIONE, ATTRAVERSO L'UTILIZZO DI EMOTICON. 14 maggio

Dettagli

Solution For Electronic Data Interchange. EDIJSuite. La soluzione per l interscambio dei dati in formato elettronico

Solution For Electronic Data Interchange. EDIJSuite. La soluzione per l interscambio dei dati in formato elettronico Solution For Electronic Data Interchange EDIJSuite La soluzione per l interscambio dei dati in formato elettronico Release 1.4 del 20.12.2013 - ST COMPANY SRL EDIJSuite La soluzione per l interscambio

Dettagli

Piazza delle Imprese alimentari. Viale delle Manifatture. Via della Produzione

Piazza delle Imprese alimentari. Viale delle Manifatture. Via della Produzione Piazza delle Imprese alimentari Viale delle Manifatture Via della Produzione PASSEPARTOUT MEXAL è una soluzione gestionale potente e completa per le imprese che necessitano di un prodotto estremamente

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

Via Emanuela Loi 1, 09010 Villaspeciosa (CA) P.IVA 03071740926 - Tel.+39 380 45 42 015 CF: CSCLSN78R17B354H *** @Mail: info@afnetsistemi.

Via Emanuela Loi 1, 09010 Villaspeciosa (CA) P.IVA 03071740926 - Tel.+39 380 45 42 015 CF: CSCLSN78R17B354H *** @Mail: info@afnetsistemi. Via Emanuela Loi 1, 09010 Villaspeciosa (CA) P.IVA 03071740926 - Tel.+39 380 45 42 015 CF: CSCLSN78R17B354H *** @Mail: info@afnetsistemi.it @Pec: info.afnet@pec.it Web: http://www.afnetsistemi.it E-Commerce:

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