Capitolo I. Introduzione. I.1 Premessa. I.2 Architettura Generale

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Capitolo I. Introduzione. I.1 Premessa. I.2 Architettura Generale"

Transcript

1 Capitolo I Introduzione I.1 Premessa La medicina fruisce costantemente degli strumenti che le scienze e la tecnologia mettono a disposizione per una sempre più completa comprensione dei fenomeni fisici, chimici e biologici che avvengono nel complesso sistema che è l'organismo umano. Negli ultimi decenni alle varie discipline scientifiche sopra menzionate, si è affiancata, in maniera trasversale, l'informatica: fonte d innovazione per tutte. L'enorme potenzialità di calcolo, la possibilità di modellizzare i fenomeni complessi, di immagazzinare e recuperare con grande rapidità le informazioni e di rappresentare in maniera visiva realtà complesse sono solo alcuni degli esempi più appariscenti del contributo enorme che l'informatica fornisce alle varie tematiche delle scienze. I.2 Architettura Generale Molte delle attività condotte presso la sede di Napoli dell'istituto di Calcolo e Reti ad Alte Prestazioni (ICAR) del Consiglio Nazionale delle Ricerche (CNR), presso il cui laboratorio è stato svolto il presente lavoro di tesi, hanno una loro finalizzazione applicativa nella realizzazione di un ambiente di realtà virtuale immersiva di supporto alla diagnostica medica non invasiva. Questa tesi, infatti, si colloca nell'ambito dell attività: Progettazione e sviluppo di una Architettura Software per 7

2 Applicazioni di Grafica 3D real-time altamente immersive del progetto Ambienti di Realtà Virtuale Altamente Immersivi, e fornisce uno strumento informatico a supporto di una delle branche più importanti della medicina: la diagnostica per immagini. In particolare, è in fase d avanzata realizzazione un architettura software basata su tecnologie a componenti, altamente scalabile e performante per la realizzazione d ambienti di realtà virtuale, in grado di connettere dispositivi eterogenei (HMD 1, CAVE 2, Data Glove 3, etc) attraverso l utilizzo d interfacce semplici e portabili. Requisito essenziale della struttura modulare dell architettura è l utilizzo di librerie e strumenti open source e cross platform, che facilitano lo sviluppo d ambienti di realtà virtuale immersiva. Ciò è necessario in quanto le applicazioni attualmente in commercio per la visualizzazione in grafica 3D, costituiscono delle scatole nere il cui contenuto è noto solo alle case produttrici. Esistono inoltre una serie di prodotti open source, che offrono le medesime funzionalità, vincolate però all utilizzo di uno specifico sistema operativo. Un esempio di tali applicazioni é OsiriX, [OSI] software d image processing, sviluppato per piattaforme Apple Macintosh, di cui si riporta l architettura software in figura 1.1. Alcune librerie utilizzate da tale software, quali QuickTime 4 e Cocoa 5, 1 Gli HMD sono caschi con schermi LCD o CRT per la visualizzazione di ambienti tridimensionali. 2 Il sistema CAVE (Cave Automatic Virtual Environment) fornisce l'illusione di una immersione completa in un mondo sintetico tridimensionale ed in scala reale, che si realizza proiettando immagini stereo sulle pareti ed il pavimento di un cubo all'interno del quale l'utente può muoversi liberamente, vivere una esperienza immersiva indossando semplicemente degli occhiali stereoscopici e interagire con gli oggetti mediante una wand provvista di sensori e pulsanti. 3 Il data GLOVE è un guanto utilizzato nei sistemi di realtà virtuale che indica ad un elaboratore i movimenti e la posizione delle dita dell'utilizzatore. 4 Quicktime è una tecnologia multimediale per sviluppare video, suono, animazione, grafica, testo e musica.[quick] 5 Cocoa è un ambiente di sviluppo object-oriented progettato per sviluppare applicazioni native MacOS X [COCOA] 8

3 costituiscono dei pacchetti commerciali ed, in particolare, Cocoa risulta essere fortemente legato alla piattaforma MacOS X. Sebbene, quindi, siano state utilizzate anche librerie open source e cross platform, come VTK ed ITK, definite qui di seguito, il software risulta essere vincolato alla suddetta piattaforma. Figura 1: Architettura Osirix Scenari virtuali immersivi, interfacce tattili in grado di fornire sensazioni di forza all'operatore costituiscono solo alcune delle possibili tipologie tecnologiche utilizzate per offrire simulazioni sempre più vicine all'esperienza reale e caratterizzate da un alto grado d immersività, che sempre più risponde alle necessità di formazione e training dell'attuale società dell'informazione. In questo modo i medici potranno esplorare il corpo (e anche l anima!) dei loro pazienti [PUN]. Tuttavia, applicazioni di grafica 3D con un buon grado d interattività ed immersività ancora richiedono sistemi altamente specializzati e spesso molto costosi, che necessitano di driver specifici, legando in tal modo lo sviluppo di una particolare applicazione ad un determinato hardware. Pertanto è attualmente molto sentita la necessità di poter disporre di un architettura aperta e flessibile per lo sviluppo di software applicativo che consenta l'integrazione del più ampio range possibile di device e di componenti software, e che sia funzionale a settori di grande interesse, come quello dei beni culturali e museali, del training e della formazione, nonché della visualizzazione e della simulazione medica e scientifica. 9

4 I componenti dell'architettura software individuati per la realizzazione d applicazioni di realtà virtuale altamente immersive, rispondono alle caratteristiche sopra individuate. Dopo un attenta analisi e studio delle problematiche sopra esposte, l architettura scelta per lo sviluppo di applicazioni di realtà virtuale altamente immersive è mostrata in Figura 2. Figura 2 Architettura software per lo sviluppo di applicazioni di realtà virtuale Di seguito è riportata una breve descrizione di ciascun componente software. OpenGL (Open Graphic Library): ambiente per lo sviluppo di applicazioni grafiche 2D e 3D 6. La libreria di basso livello consente, inoltre, di sfruttare l accelerazione hardware delle schede grafiche, che implementano funzionalità per il rendering 7 real-time 3D e compatibili con tale standard; FLTK (Fast Light ToolKit): libreria di alto livello per la creazione 6 Le OpenGL 3D consentono di realizzare applicazioni per la visualizzazione di una scena 3D. Quest'ultima contiene gli insiemi di dati che rappresentano gli oggetti tridimensionali e i dati relativi alle loro illuminazione e posizione rispetto all'osservatore [OPGL]. 7 Processo di generazione di un'immagine a partire da una descrizione di un insieme di oggetti tridimensionali (scena tridimensionale). La descrizione è data in un linguaggio o in una struttura dati definiti rigorosamente e deve contenere la geometria, il punto di vista, le informazioni sulla mappatura delle superfici visibili e sull illuminazione. L' immagine è una immagine digitale; essa fornisce l'aspetto finale al modello o all'animazione illuminazione. 10

5 dell'interfaccia grafica utente (GUI); VTK (Visualization ToolKit): libreria di alto livello per la visualizzazione grafica e l image processing; ITK (Insight ToolKit): libreria di alto livello che implementa algoritmi di registrazione e segmentazione; OSG (Open Scene Graph): libreria di alto livello per applicazioni di grafica 3D ad alte prestazioni in quanto basato sulla struttura dati dei scene graph 8 ; VRJ (ViRtual Juggler): framework per lo sviluppo di applicazioni 3D, orientato all integrazione di device eterogenei; Chromium: Motore di rendering 3d distribuito, che consente di parallelizzare il processo di rendering. Il modello funzionale dell'architettura cui si fa riferimento è mostrato in Figura 3. 8 Lo Scene Graph (grafi di scena) è una struttura dati che organizza logicamente la rappresentazione di una scena grafica. Una scena viene decomposta in oggetti, ogni oggetto in parti, ogni parte in poligoni. [OSG] 11

6 Figura 3: Modello funzionale dell'architettura di Figura 2 I.1 I.3 Obiettivo e scopo della tesi L'architettura considerata per questo lavoro di tesi si concentra sulla visualizzazione, analisi ed elaborazione d immagini medicali. Il software di base messo a disposizione sviluppa un'applicazione open source e cross platform per la visualizzazione e l'elaborazione d immagini medicali in grado di fornire un ambiente per lo sviluppo di applicazioni per la visualizzazione medicale altamente immersiva. Tale architettura è mostrata in Figura 4. Figura 4: Architettura per applicazioni di Medical Imaging 12

7 Lo scopo di questa tesi è la progettazione ed implementazione di un componente software per la segmentazione di immagini mediche all interno di questa architettura. La segmentazione è il processo che suddivide un'immagine nelle sue parti componenti, secondo parametri che sono stabiliti da chi la esegue, poi usate a scopo di analisi, descrizione e riconoscimento a più alto livello. Come si vedrà nel prossimo capitolo, più in generale la segmentazione è una delle fasi del processo di trattamento dei dati medicali dall acquisizione alla visualizzazione finale. Il procedimento di segmentazione è molto importante per almeno due motivi. In primo luogo, permettendo di individuare regioni omogenee, consente di effettuare con estrema facilità delle misurazioni morfometriche altrimenti estremamente complesse; si pensi, ad esempio, alla possibilità di calcolare, con ragionevole precisione, il volume di una massa tumorale a partire da dati tridimensionali ed a quanto ciò possa essere d ausilio alla pianificazione della terapia radiante o di un intervento chirurgico. In secondo luogo consente di classificare i dati a disposizione in maniera tale che siano più facilmente utilizzabili nel seguito. Visto che la segmentazione è un processo che si applica in qualsiasi campo che tratti immagini digitali,(astrologia, visione robotica, telerilevamento,ecc), le quali quindi hanno caratteristiche molto differenti, in questo lavoro di tesi si sono analizzate le principali tecniche di segmentazione presenti in letteratura, se ne è cercata di fare una classificazione elencando pregi e difetti, dopodichè si è giunti all implementazione di tre algoritmi, che sono risultati i più consoni per le caratteristiche di immagini medicali, coniugando in sé le proprietà di efficienza(di calcolo), semplicità di utilizzo e di implementazione, accuratezza del risultato. 13

8 Un esempio di segmentazione è riportato in Figura 5, che mostra l immagine originale di un cervello, e due regioni segmentate dell immagine, rappresentanti rispettivamente la materia bianca e il ventricolo. Figura 5: Esempio di segmentazione su cervello I componenti utilizzati per lo sviluppo del software sono le librerie di alto livello, suddivise in librerie per la gestione dell'interfaccia grafica, librerie per la visualizzazione di immagini e modelli tridimensionali ed, infine, librerie per l'image processing. Alcune delle librerie open source e cross platform, oggi disponibili per la realizzazione dell'interfaccia grafica, comprendono wxwindows [WX], Fox-Toolkit [FOX], FLTK, ecc. Ognuno di questi pacchetti è corredato da una buona documentazione e sono tenuti in continuo sviluppo dai rispettivi gruppi. La scelta è caduta su FLTK, perché risulta essere molto semplice da utilizzare e allo stesso tempo completo. Per quanto riguarda, invece, le librerie di visualizzazione e d image processing, la scelta è caduta immediatamente su VTK e ITK. Questi due componenti, infatti, sono ampiamente utilizzati nel settore del medical imaging e risultano essere uno standard de facto per tali applicazioni. I.4 ITK,VTK,FLTK III.1 I.4.1 Vantaggi dell'open Source e del Cross Platform Con l'avvento dei personal computer, l'informatica si è diffusa in 14

9 un decennio fino a condizionare la vita quotidiana delle persone e delle loro attività professionali. Tale velocità di sviluppo tuttavia non le ha consentito di avere le stesse caratteristiche delle altre industrie produttive, avere cioè numerosi fornitori in concorrenza fra loro. Il software è oggi nella mani di pochi grandi gruppi, che impongono i loro standard proprietari e guidano l'evoluzione più in base ai loro interessi che alla convenienza degli utenti. Come alternativa a tutto ciò è nato il movimento Open Source, divenuto popolare soprattutto grazie alla diffusione di Internet, che è stato ed è tuttora uno dei motori propulsivi dello sviluppo del web. Gran parte dell'infrastruttura tecnologica di Internet è basata su standard aperti e software open source, rilasciato con licenze non restrittive sia nella distribuzione che nell'uso, come GPL 9, LGPL 10, ecc [RALF]. Il più delle volte è utilizzabile gratuitamente, ma la cosa ancor più entusiasmante, soprattutto per i programmatori, è il codice, che può essere studiato, analizzato, modificato, ampliato ed esteso. Viene sviluppato in progetti collaborativi, che spesso coinvolgono sviluppatori da tutto il mondo, provenienti dalle esperienze più diverse. In molti casi questo tipo di software risulta essere più affidabile, e funzionale dell'analogo software proprietario e commerciale. Quale sia la piattaforma verso la quale gli utenti si indirizzeranno nei prossimi anni è una questione aperta. Al giorno d'oggi, la maggior parte degli utenti possiede prodotti Microsoft; allo stesso tempo però c'è la tendenza, oramai irreversibile, a sfruttare le applicazioni multi-piattaforma Open Source, soprattutto per ragioni di costi. Questa tendenza porterà probabilmente ad accantonare l'idea di un sistema operativo 11 GPL (General Public License) garantisce la libertà di condividere e modificare il software libero [GPL]. 10 LGPL (Lesser General Public License), una licenza pubblica meno generale e usata soprattutto per le librerie [LGPL]. 15

10 proprietario. Si può affermare quindi che il multi-piattaforma nasce come conseguenza dei software open source e che l'avvento di nuove piattaforme ha richiesto sempre più al software di essere multipiattaforma. III.2 I.4.2 Caratteristiche comuni di ITK e VTK ITK (Insight Toolkit) è un toolkit software che offre funzionalità di segmentazione e registrazione, VTK (The Visualization Toolkit) offre funzionalità prettamente orientate alla visualizzazione delle immagini e dei modelli tridimensionali. Entrambi sviluppati in C++, open source e cross platform, utilizzano processi di wrapping per generare l'interfaccia tra C++ ed altri linguaggi interpretati quali Tcl, Java e Python. I toolkit forniscono, quindi, un supporto alla programmazione di basso e alto livello. Nella programmazione ad alto livello si costruiscono l'interfaccia dell'applicazione e la pipeline. Quest'ultima è composta usando le classi di VTK e ITK come blocchi elementari; a questo scopo si può usare un linguaggio interpretato senza compromettere le prestazioni. Nella programmazione di basso livello Per soddisfare particolari esigenze le librerie possono essere estese inserendo nuove classi. I due toolkit, inoltre, presentano alcune caratteristiche funzionali in comune. Alcuni algoritmi di segmentazione, ad esempio, sono implementati in entrambi i software. Altri algoritmi per l'elaborazione delle immagini, quali la rotazione, il ridimensionamento, i filtri per lo smoothing, ecc. sono implementati in entrambi i pacchetti. Oltre ad offrire funzionalità comuni, essi presentano anche caratteristiche architetturali del tutto identiche. In particolare, la gestione del flusso dei dati, presenta un'architettura a pipeline di seguito descritta. Le pipeline supportano la 16

11 programmazione multithreading 11 e consentono di lavorare in streaming 12. Questa caratteristica consente di utilizzare al meglio, ovvero nel modo più efficiente, la memoria e le risorse dell'elaboratore. I Architettura Pipeline Una pipeline è costituita da una serie di process objects che operano su uno o più data objects. Contrariamente all'uso comune nella programmazione object oriented, in VTK ed ITK si è scelto di separare i dati dalle procedure che li elaborano. I dati sono incapsulati nei data objects, le procedure nei process objects. I data objects costituiscono le informazioni di partenza, pertanto il loro trattamento è particolarmente delicato, in quanto può dar luogo ad eliminazione o aggiunta di informazioni e può essere solo effettuato mediante metodi formali 13. Questo approccio è particolarmente importante nei sistemi in cui la riservatezza dei dati e la sicurezza sono determinanti e assicura che non siano introdotti errori nel processo di definizione delle specifiche, in quello di sviluppo, nel controllo dei risultati e nella progettazione dei benchmark. I dati differiscono in funzione della loro rappresentazione interna, che è influenzata dai metodi mediante i quali sono raccolti, memorizzati ed elaborati, e dai processi che interagiscono con gli stessi. I dati di partenza, pertanto, possono essere impiegati per ottenere rappresentazioni diverse o di diversa efficacia rappresentativa. I process objects si dividono in source, filter e sink objects in base alla presenza di uno o più input od output, come illustrato in Figura 8 [SCKR]. 11 Il multithreading è una tecnica che permette di avere più flussi di esecuzione contemporanei (thread) di uno stesso programma in esecuzione, su CPU differenti o sulla stessa. 12 Lo streaming consente di suddividere, in modo trasparente, i dati in parti più piccole, che una volta elaborate, possono essere riassemblate per ottenere il risultato finale. 13 Tecniche basate sulla definizione matematica di specifiche, sviluppo e verifica di sistemi. 17

12 Figura 6: Tipi di Process Object nella pipeline di ITK E VTK I source objects sono oggetti che producono un data object leggendolo da un file (reader) oppure costruendolo mediante una procedura (procedural source). Gli oggetti di tipo filter possono avere più input e produrre più output, un singolo output può essere usato come input da più filtri (multiple fan out). I sink objects esportano data objects su di un file (writer) oppure verso il mapper che consente di esportare i dati verso altri sistemi. In Figura 12 sono illustrate alcuni esempi di molteplicità degli oggetti filter. Figura 7: Molteplicità degli ingressi e delle uscite delle pipeline di ITK e VTK La connessione tra due process object avviene di solito tramite l'istruzione: Filtro2->SetInput(Filtro1->GetOutput()); Per filtri con più entrate o uscite esistono forme di sintassi analoghe. Le connessioni sono tipizzate, si possono agganciare solo process object che si scambiano un data object di tipo compatibile. Affinchè la pipeline produca il risultato atteso occorre che tutti i process objects siano mandati in esecuzione, l'intero processo è chiamato esecuzione della pipeline. 18

Sviluppo di un ambiente software per la visualizzazione multiplanare di immagini biomedicali

Sviluppo di un ambiente software per la visualizzazione multiplanare di immagini biomedicali Università degli studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Sviluppo di un ambiente software per la visualizzazione multiplanare di immagini biomedicali

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli

Dettagli

SOMMARIO. cüxá wxçét wxä VÉÇá zä É wx ` Ç áàü. Ufficio Nazionale per il Servizio Civile

SOMMARIO. cüxá wxçét wxä VÉÇá zä É wx ` Ç áàü. Ufficio Nazionale per il Servizio Civile Manuale Utente (Generalità) Versione 2.0.1 SOMMARIO 1. INTRODUZIONE... 3 2. HELIOS LA SOLUZIONE TECNICA... 6 3. HELIOS - L ARCHITETTURA DI SISTEMA... 8 2 8 1. Introduzione NOTA BENE: Nel sistema Helios

Dettagli

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Hardware, software e periferiche Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Riepilogo - Concetti di base dell informatica L'informatica è quel settore scientifico disciplinare

Dettagli

Architetture Applicative Altri Esempi

Architetture Applicative Altri Esempi Architetture Applicative Altri Esempi Alessandro Martinelli alessandro.martinelli@unipv.it 15 Aprile 2014 Architetture Applicative Altri Esempi di Architetture Applicative Architetture con più Applicazioni

Dettagli

I.I.S. N. PELLATI Nizza Monferrato - Canelli

I.I.S. N. PELLATI Nizza Monferrato - Canelli A. S. 2011-2012 INFORMATICA Classe 1AG - CAT Ore annuali: 99 DOCENTE MARIA PIA SECCO Obiettivi disciplinari Conoscenze Informazioni, dati e loro codifica. Architettura e componenti di un computer. Funzioni

Dettagli

Obiettivi, sviluppo e risultati principali del progetto STEEL

Obiettivi, sviluppo e risultati principali del progetto STEEL Evento conclusivo progetto STEEL CNR Roma 3 novembre 2011 Obiettivi, sviluppo e risultati principali del progetto STEEL Enrico Del Re CNIT e Università di Firenze Il progetto STEEL Progetto Nazionale:

Dettagli

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Lez. 5 La Programmazione. Prof. Salvatore CUOMO Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente

Dettagli

Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione

Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione Informatica 3 LEZIONE 1: Introduzione Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Informatica 3 Lezione 1- Modulo 1 Introduzione al corso Introduzione Corso di Informatica 3

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Introduzione e Concetti Fondamentali Porfirio Tramontana, 2009 Corso di Ingegneria del Software Slide 1 Riferimenti Ian Sommerville, Ingegneria del Software, Capitolo 1 Porfirio

Dettagli

APPLICAZIONI DIDATTICHE IN REALTÀ VIRTUALE... 1 INTRODUZIONE... 25

APPLICAZIONI DIDATTICHE IN REALTÀ VIRTUALE... 1 INTRODUZIONE... 25 APPLICAZIONI DIDATTICHE IN REALTÀ VIRTUALE... 1 INTRODUZIONE... 12 APPRENDIMENTO... 13 Apprendimento ed emozioni... 15 Strategie didattiche... 15 La formazione... 16 Insegnamento automatico... 17 Interazione...

Dettagli

Informatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione

Informatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione Informatica 3 Informatica 3 LEZIONE 1: Introduzione Lezione 1- Modulo 1 Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Introduzione al corso Politecnico di Milano - Prof. Sara Comai

Dettagli

Mobile Virtual Reality (MVR): un nuovo modello di realtà virtuale A. Sanna C. Zunino F.Lamberti

Mobile Virtual Reality (MVR): un nuovo modello di realtà virtuale A. Sanna C. Zunino F.Lamberti Mobile Virtual Reality (MVR): un nuovo modello di realtà virtuale A. Sanna C. Zunino F.Lamberti Dipartimento di Automatica e Informatica Politecnico di Torino Corso Duca degli Abruzzi 24, I-10129 Torino

Dettagli

Programmazione modulare

Programmazione modulare Programmazione modulare 2016 2017 Indirizzo: 1 BIENNIO Informatica e Telecomunicazioni Disciplina: SCIENZE E TECNOLOGIE APPLICATE Classi: 2 C - 2 D - 2 F Ore settimanali: 3 ore Prerequisiti per l'accesso

Dettagli

4. Qualità. un concetto molte sfaccettature. Andrea Polini. Ingegneria del Software Corso di Laurea in Informatica

4. Qualità. un concetto molte sfaccettature. Andrea Polini. Ingegneria del Software Corso di Laurea in Informatica 4. Qualità un concetto molte sfaccettature Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 4. Qualità 1 / 23 Sommario 1 Tipiche Qualità del Processo (Ingegneria

Dettagli

Fondamenti di Elaborazione di Immagini Introduzione. Raffaele Cappelli.

Fondamenti di Elaborazione di Immagini Introduzione. Raffaele Cappelli. Fondamenti di Elaborazione di Immagini Introduzione Raffaele Cappelli raffaele.cappelli@unibo.it Obiettivi del corso Il corso introduce i principali concetti e le tecniche di base per l elaborazione delle

Dettagli

L'importanza dell'usabilità per i siti Web della PA: rischi e strumenti a supporto della valutazione

L'importanza dell'usabilità per i siti Web della PA: rischi e strumenti a supporto della valutazione L'importanza dell'usabilità per i siti Web della PA: rischi e strumenti a supporto della valutazione Giuseppe Desolda IVU Lab, Dipartimento di Informatica, Università degli Studi di Bari Aldo Moro L importanza

Dettagli

APIO INTELLIGENZA AI TUOI OGGETTI.

APIO INTELLIGENZA AI TUOI OGGETTI. APIO INTELLIGENZA AI TUOI OGGETTI. SMART WORLD Ciò che ha reso davvero Smart il cellulare sono le App ed una connessione ad internet. In particolare le App hanno introdotto la capacità di utilizzare lo

Dettagli

Introduzione ai Calcolatori Elettronici

Introduzione ai Calcolatori Elettronici Introduzione ai Calcolatori Elettronici Elementi di Base dell ICT Information and Communication Technology Concetti Introduttivi A.A. 2013/2014 Domenica Sileo Università degli Studi della Basilicata Elementi

Dettagli

Concetti Introduttivi. Il Computer

Concetti Introduttivi. Il Computer Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta

Dettagli

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione Che cos e l Informatica Scienza dell elaborazione dell informazione Informatica generale non si riduce all utilizzo di strumenti (e.g. linguaggi di programmazione e basi di dati); si occupa del trattamento

Dettagli

Cosa è un programma. Informatica di Base -- R.Gaeta 18

Cosa è un programma. Informatica di Base -- R.Gaeta 18 Cosa è un programma Il programma è la scatola nera che risolve il problema computazionale; Il programma è una sequenza di istruzioni che devono essere eseguite; Il programma è la traduzione per il computer

Dettagli

IL PROCESSO di PROGETTAZIONE

IL PROCESSO di PROGETTAZIONE IL PROCESSO di PROGETTAZIONE In questa lezione vedremo: Ruolo della modellazione nella comunicazione tipi di modello nel progetto I modelli del prodotto Interpretazione delle informazioni del progetto

Dettagli

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente

Dettagli

Tecnologie dei Sistemi di Automazione

Tecnologie dei Sistemi di Automazione Facoltà di Ingegneria Tecnologie dei Sistemi di Automazione Prof. Gianmaria De Tommasi Lezione 2 Architetture dei dispositivi di controllo e Dispositivi di controllo specializzati Corso di Laurea Codice

Dettagli

Tu sai di averne uno quando il guasto di un computer di cui non hai mai sentito parlare non ti permette di fare il tuo lavoro.

Tu sai di averne uno quando il guasto di un computer di cui non hai mai sentito parlare non ti permette di fare il tuo lavoro. 2014 Tu sai di averne uno quando il guasto di un computer di cui non hai mai sentito parlare non ti permette di fare il tuo lavoro. -Lamport Quercioli, Pecoraro, Rando, Lucero V AI Sommario Definizione...

Dettagli

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) 1^ parte Cosa è Arduino? Arduino è una piattaforma di sviluppo open-source basata su una semplice scheda

Dettagli

Corso di Fondamenti di Informatica Linguaggi di Programmazione

Corso di Fondamenti di Informatica Linguaggi di Programmazione Corso di Fondamenti di Informatica Linguaggi di Programmazione Anno Accademico Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di

Dettagli

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore. I SISTEMI OPERATIVI Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore. Le funzioni di un S.O. non sono definibili in modo esaustivo e puntuale così come non

Dettagli

Traduzione e interpretazione

Traduzione e interpretazione Traduzione e interpretazione Parte dei lucidi sono stati gentilmente forniti dal Prof. Salza VII.1 Linguaggi di programmazione Linguaggi ad alto livello Maggiore espressività Maggiore produttività Migliore

Dettagli

Area Tematica Descrizione Area Corso Descrizione corso Tipologia Durata (ore) Finalità corso

Area Tematica Descrizione Area Corso Descrizione corso Tipologia Durata (ore) Finalità corso Area Tematica Descrizione Area Corso Descrizione corso Tipologia Durata (ore) Finalità corso Setting I Lavorare con i dispositivi destinati alla fruizione collettiva di contenuti in situazioni di didattica

Dettagli

I-XIII_romane_sawyer 14-02-2006 10:50 Pagina V. Indice. Prefazione

I-XIII_romane_sawyer 14-02-2006 10:50 Pagina V. Indice. Prefazione I-XIII_romane_sawyer 14-02-2006 10:50 Pagina V Prefazione XI Capitolo 1 Tecnologie dell informazione e della comunicazione e Sistemi Informativi 1 1.1 Informatica e ICT 1 1.2 Il funzionamento dei computer:

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA SETTORE ECONOMICO PROFESSIONALE 1 Servizi di informatica Processo Sviluppo e gestione di prodotti e servizi informatici Sequenza di

Dettagli

ECDL MODULO 1. Sezione 2 Software

ECDL MODULO 1. Sezione 2 Software ECDL MODULO 1 Sezione 2 Software SYLLABUS 5.0: SOFTWARE SEZIONE TEMA RIF. Argomento 1.2 Software 1.2.1 Concetti 1.2.1.1 Comprendere il termine software. 1.2.1.2 1.2.1.3 1.2.1.4 1.2.1.5 Comprendere cosa

Dettagli

DIPARTIMENTO DI PROGETTAZIONE E ARTI APPLICATE SCUOLA DI NUOVE TECNOLOGIE DELL ARTE DAPL 08 DIPLOMA ACCADEMICO DI PRIMO LIVELLO IN INTERACTION DESIGN

DIPARTIMENTO DI PROGETTAZIONE E ARTI APPLICATE SCUOLA DI NUOVE TECNOLOGIE DELL ARTE DAPL 08 DIPLOMA ACCADEMICO DI PRIMO LIVELLO IN INTERACTION DESIGN DIPARTIMENTO DI PROGETTAZIONE E ARTI APPLICATE SCUOLA DI NUOVE TECNOLOGIE DELL ARTE DAPL 08 DIPLOMA ACCADEMICO DI PRIMO LIVELLO IN INTERACTION DESIGN Coordinatore Didattico: Emanuele Tarducci INSEGNAMENTI

Dettagli

Sviluppo di strumenti grafici su una Web Application per il data mining

Sviluppo di strumenti grafici su una Web Application per il data mining Sviluppo di strumenti grafici su una Web Application per il data mining Università degli studi di Napoli Federico II FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Informatica 4

Dettagli

Un linguaggio per la rappresentazione formale di vincoli su scenari d'uso

Un linguaggio per la rappresentazione formale di vincoli su scenari d'uso Un linguaggio per la rappresentazione formale di vincoli su scenari d'uso Relatore: Benedetto Intrigila Realizzato da: Postoronca Maxim Anno accademico: 2009/2010 Introduzione Introduzione Lo scopo della

Dettagli

Strumenti per l automazione del testing di applicazioni web Javascript-based

Strumenti per l automazione del testing di applicazioni web Javascript-based tesi di laurea Strumenti per l automazione del testing di applicazioni web Javascript-based Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana 1 candidato Salvatore Agnello Matr. 41/2612

Dettagli

Sistema Operativo (Software di base)

Sistema Operativo (Software di base) Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

PROGRAMMA PER LA PROVA DI ACCERTAMENTO

PROGRAMMA PER LA PROVA DI ACCERTAMENTO PROGRAMMA PER LA PROVA DI ACCERTAMENTO PARTE 1 Fondamenti di informatica Questa sezione ha lo scopo di presentare i principali argomenti teorici che stanno alla base del funzionamento di un elaboratore

Dettagli

Introduzione allo Studio dei Linguaggi di Programmazione. Corso di Linguaggi di Programmazione Informatica e Tecnologie Produzione Software

Introduzione allo Studio dei Linguaggi di Programmazione. Corso di Linguaggi di Programmazione Informatica e Tecnologie Produzione Software Introduzione allo Studio dei Linguaggi di Programmazione Corso di Linguaggi di Programmazione Informatica e Tecnologie Produzione Software Argomenti 2 Studiare i Linguaggi di Programmazione Domini Applicativi

Dettagli

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso

Dettagli

Elementi di Informatica

Elementi di Informatica Elementi di Informatica Capitolo 1 - Concetti Generali Si definisce: Hardware, l'insieme degli elementi fisici che costituiscono un computer (vedi capitolo 2). Software, l'insieme dei programmi che consentono

Dettagli

di Alessandro Guaragni Sviluppo applicazioni Windows

di Alessandro Guaragni Sviluppo applicazioni Windows di Alessandro Guaragni Sviluppo applicazioni Windows Profilo della società Nata nel 1996 GASoft si posiziona sul mercato come partner ideale per lo sviluppo di applicativi in ambiente Microsoft Windows

Dettagli

ArcGIS for Windows Mobile

ArcGIS for Windows Mobile Il mondo da tutti i punti di vista. ArcGIS for Windows Mobile 10.1.1 ArcGIS for Windows Mobile, è un applicazione GIS pronta all uso per la raccolta dei dati, l ispezione e la mappatura sul campo. Include

Dettagli

MATERIALI PER LA DISCUSSIONE

MATERIALI PER LA DISCUSSIONE SETTORE TECNOLOGICO MATERIALI PER LA DISCUSSIONE ISTITUTO TECNICO INDIRIZZO ARTICOLAZIONE TELECOMUNICAZIONI INFORMATICA E TELECOMUNICAZIONI ESITI DI APPRENDIMENTO Regolamento, Art. 5 comma 1 Nota: Le Competenze,

Dettagli

Prof. Pagani corrado JAVA

Prof. Pagani corrado JAVA Prof. Pagani corrado JAVA NASCITA DI JAVA Java è stato creato, a partire da ricerche effettuate alla Stanford University agli inizi degli anni Novanta, da un gruppo di esperti sviluppatori capitanati da

Dettagli

Presentazione aziendale

Presentazione aziendale Presentazione aziendale Chi siamo CRAON SRL opera nel settore dell Information & Communications Technology (ICT) da oltre 15 anni. Il suo punto di forza risiede nella consulenza informatica, che le ha

Dettagli

ERP, ENTERPRISE RESOURCE PLANNING

ERP, ENTERPRISE RESOURCE PLANNING ERP, ENTERPRISE RESOURCE PLANNING SISTEMA INFORMATIVO Def. Sistema Informativo - Il sistema informativo è l insieme di persone, apparecchiature, applicazioni e procedure che permettono all azienda di disporre

Dettagli

Rappresentazione con i diagrammi di flusso (Flow - chart)

Rappresentazione con i diagrammi di flusso (Flow - chart) Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo

Dettagli

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina

Dettagli

Il Software programmabili programma algoritmo

Il Software programmabili programma algoritmo Il Software La proprietà fondamentale dei calcolatori e` quella di essere programmabili cioè in grado di svolgere compiti diversi a seconda delle istruzioni fornite dall utente mediante un programma, ossia

Dettagli

Davide Cervi Classe : 3E I.T.E Agostino Bassi - Lodi

Davide Cervi Classe : 3E I.T.E Agostino Bassi - Lodi INTRODUZIONE AI LINGUAGGI DI PROGRAMMAZIONE Davide Cervi Classe : 3E I.T.E Agostino Bassi - Lodi I LINGUAGGI DI PRIMA GENERAZIONE rientrano in questa categoria i vari linguaggi macchina proprietari, decisamente

Dettagli

Tecnologie per la mente. Laboratorio di Psicologia e Scienze Cognitive

Tecnologie per la mente. Laboratorio di Psicologia e Scienze Cognitive Tecnologie per la mente Laboratorio di Psicologia e Scienze Cognitive Il Laboratorio afferisce al Dipartimento di Linguistica dell Università della Calabria, diretto dalla Prof.ssa Eleonora Bilotta, è

Dettagli

Introduzione al Many/Multi-core Computing

Introduzione al Many/Multi-core Computing Introduzione al Many/Multi-core Computing Sistemi Operativi e reti 6 giugno 2011 Outline del corso Introduzione Definizioni Motivazioni Storia Architettura Framework Algoritmica Parte I Introduzione Definizioni

Dettagli

Xerox FreeFlow Print Server v SP2 Pacchetto di benvenuto ai clienti di Xerox Color 550/560 Printer e Xerox 700 & 770 Digital Color Press

Xerox FreeFlow Print Server v SP2 Pacchetto di benvenuto ai clienti di Xerox Color 550/560 Printer e Xerox 700 & 770 Digital Color Press Settembre 2011 708P90048 Xerox FreeFlow Print Server v. 8.0. SP2 Pacchetto di benvenuto ai clienti di Xerox Color 550/560 Printer e Xerox 700 & 770 Digital Color Press 2010 Xerox Corporation. Tutti i diritti

Dettagli

Unità di apprendimento 6. Il software: dal linguaggio alla applicazione

Unità di apprendimento 6. Il software: dal linguaggio alla applicazione Unità di apprendimento 6 Il software: dal linguaggio alla applicazione Unità di apprendimento 6 Lezione 4 Le applicazioni dell informatica In questa lezione impareremo: i campi di utilizzo dell informatica

Dettagli

TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING

TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING Tesi di Laurea Triennale in Ingegneria Informatica TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING Relatore: Prof. SERGIO FLESCA Laureando: ANTONIO BONIFATI MATR.

Dettagli

Strumento e tecnica a supporto del crash testing automatico di applicazioni mobili basato sul sistema operativo Android Anno Accademico 2010/2011

Strumento e tecnica a supporto del crash testing automatico di applicazioni mobili basato sul sistema operativo Android Anno Accademico 2010/2011 tesi di laurea Strumento e tecnica a supporto del crash testing automatico di applicazioni mobili basato sul sistema operativo Android Anno Accademico 2010/2011 relatore Ch.mo prof. Porfirio Tramontana

Dettagli

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Annamaria Bria 1

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Annamaria Bria 1 Corso di INFORMATICA Laurea triennale - Comunicazione&DAMS Dr. Annamaria Bria 1 1 Dipartimento di Matematica Università della Calabria Corso di laurea intercalsse in COMUNICAZIONE&DAMS www.mat.unical.it/bria/informatica2011-12.html

Dettagli

Linguaggi di programmazione e astrazione

Linguaggi di programmazione e astrazione Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo

Dettagli

Sistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi

Sistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi Sistemi Operativi A.M. Fanelli Architettura dei Sistemi a. a. 2008-09 1 Livello di Sistema Operativo Livello di Linguaggi Applicativi Livello di Linguaggio Assembly Livello di Sistema Operativo Livello

Dettagli

Introduzione alle Basi di Dati

Introduzione alle Basi di Dati Introduzione alle Basi di Dati Angelo Chianese, Vincenzo Moscato, Antonio Picariello, Lucio Sansone Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 1 Appunti dalle lezioni SQL

Dettagli

DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo

DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo Ogni componente hardware dell elaboratore, per poter svolgere determinati compiti,

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Concetti di base Sommario 2. 2.1 Modello a cascata 2.2 Modelli incrementali 2.3 Modelli evolutivi 2.4 Modelli agili

Dettagli

Informatica. Informazione L Informazione è un dato, o un insieme di dati, interpretati in un determinato contesto.

Informatica. Informazione L Informazione è un dato, o un insieme di dati, interpretati in un determinato contesto. Informatica Con il termine Informatica (Informazione automatica) si intende la scienza che si occupa della Rappresentazione e della Elaborazione automatica delle Informazioni. Informazione L Informazione

Dettagli

Majo IoT: monitoraggio di campi elettromagnetici e di grandezze ambientali

Majo IoT: monitoraggio di campi elettromagnetici e di grandezze ambientali Majo IoT: monitoraggio di campi elettromagnetici e di grandezze ambientali STUDENTI : Federico Coppola, Andrea Rodella, Giovanni Sinigaglia (Dipartimento di informatica e telecomunicazioni) DOCENTI COORDINATORI:

Dettagli

Gestione dello sviluppo software Modelli Base

Gestione dello sviluppo software Modelli Base Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione GESTIONE DEI SISTEMI ICT Paolo Salvaneschi A4_1 V1.0 Gestione dello sviluppo software Modelli Base Il contenuto

Dettagli

STRUMENTI TECNICI A SUPPORTO DELLA REVISIONE

STRUMENTI TECNICI A SUPPORTO DELLA REVISIONE ALLEGATO IV - BOZZA - STRUMENTI TECNICI A SUPPORTO DELLA REVISIONE STRUMENTI DI PIANIFICAZIONE E GESTIONE DELLA REVISIONE A supporto dell attività di revisione, Deloitte utilizza un software specifico

Dettagli

Tecnologie Informatiche (TIN)

Tecnologie Informatiche (TIN) ISTITUTO STATALE ISTRUZIONE SECONDARIA SUPERIORE Osvaldo Conti Via E. De Nicola, 6 81031 AVERSA ( Caserta) Tel. 081/ 8141345 Fax 081/8141043 Distretto Scolastico N. 15 Cod. Fiscale : 90030630611 e mail:

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione Linguaggi di Programmazione Programmazione. Insieme delle attività e tecniche svolte per creare un programma (codice sorgente) da far eseguire ad un computer. Che lingua comprende

Dettagli

Nuovi strumenti per il coding App Inventor e Scratch for Arduino

Nuovi strumenti per il coding App Inventor e Scratch for Arduino Nuovi strumenti per il coding App Inventor e Scratch for Arduino 29 marzo 2017 BARBERO Alberto VASCHETTO Francesco 1 All inizio erano «le TIC» e poi venne «il coding» Introduzione nella disciplina Informatica

Dettagli

Architetture di rete. 4. Le applicazioni di rete

Architetture di rete. 4. Le applicazioni di rete Architetture di rete 4. Le applicazioni di rete Introduzione L avvento di tecnologie (hw, sw, protocolli) di rete avanzate ha permesso la nascita di architetture software molto evolute che permettono lo

Dettagli

Informatica di base 6/ed

Informatica di base 6/ed Informatica di base 6/ed Autori: Dennis P. Curtin, Kim Foley, Kunal Sen e Cathleen Morin A cura di: Agostino Marengo e Alessandro Pagano Capitolo 1 L informatica oggi: una panoramica Capitolo 1 L informatica

Dettagli

BASI DI DATI E UTENTI DI BASI DI DATI

BASI DI DATI E UTENTI DI BASI DI DATI BASI DI DATI E UTENTI DI BASI DI DATI Introduzione alle basi di dati (1) 2 La gestione dell informazione L informazione rappresenta oggi uno dei beni più preziosi all interno di una qualsiasi organizzazione

Dettagli

TUTTI I VANTAGGI DEL DIGITALE. Imaging intraorale

TUTTI I VANTAGGI DEL DIGITALE. Imaging intraorale TUTTI I VANTAGGI DEL DIGITALE Imaging intraorale FONA Imaging intraorale FACILITÀ D USO E COMFORT PER IL PAZIENTE I formati e il posizionamento delle lastre sono gli stessi della pellicola tradizionale,

Dettagli

Laboratorio di Calcolo A

Laboratorio di Calcolo A Laboratorio di Calcolo A Patrizia Boccacci Alessandro Brunengo Fabrizio Parodi Lo scopo del corso è quello di fornire gli strumenti informatici di base per per affrontare e risolvere i problemi tipici

Dettagli

Autorità per le Garanzie nelle Comunicazioni

Autorità per le Garanzie nelle Comunicazioni Autorità per le Garanzie nelle Comunicazioni METODO PER IL RENDERING DEI DIAGRAMMI DI IRRADIAZIONE VERTICALI BASATO SUI DATI PREVISTI DALLE SPECIFICHE DI FORMATO DEL CATASTO AGCOM 1. Premessa Per calcolare

Dettagli

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi)

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi) LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 2 LA MACCHINA DI VON NEUMANN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Introduzione al funzionamento di un calcolatore elettronico

Introduzione al funzionamento di un calcolatore elettronico 1 / 21 Introduzione al funzionamento di un calcolatore elettronico Natascia Piroso 23 settembre 2009 2 / 21 Sommario Che cos è un calcolatore? 1 Che cos è un calcolatore? Definizioni preliminari Il calcolatore

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T1 3-Equipaggiamento di un SO 1 Prerequisiti Hardware e software Uso pratico elementare di un sistema operativo Struttura a strati del SO 2 1 Introduzione In questa Unità vogliamo

Dettagli

CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C

CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C Apple ha stupito tutta la sua comunità di sviluppatori quando ha annunciato Swift, un nuovo linguaggio di programmazione per applicazioni

Dettagli

DIPARTIMENTO DI PROGETTAZIONE E ARTI APPLICATE SCUOLA DI NUOVE TECNOLOGIE DELL ARTE DAPL 08 DIPLOMA ACCADEMICO DI PRIMO LIVELLO IN INTERACTION DESIGN

DIPARTIMENTO DI PROGETTAZIONE E ARTI APPLICATE SCUOLA DI NUOVE TECNOLOGIE DELL ARTE DAPL 08 DIPLOMA ACCADEMICO DI PRIMO LIVELLO IN INTERACTION DESIGN DIPARTIMENTO DI PROGETTAZIONE E ARTI APPLICATE SCUOLA DI NUOVE TECNOLOGIE DELL ARTE DAPL 08 DIPLOMA ACCADEMICO DI PRIMO LIVELLO IN INTERACTION DESIGN Coordinatore Didattico: arch. Emanuele Tarducci INSEGNAMENTI

Dettagli

Prof. Rossella Cancelliere

Prof. Rossella Cancelliere Laboratorio di Informatica e Statistica Chimica Industriale a.a 2004/05 Prof. Rossella Cancelliere Dip. Informatica Univ.Torino C.so Svizzera 185,Torino email:cancelli@di.unito.it tel: 011/670 67 77 Obiettivi

Dettagli

Open Database Connectivity (ODBC)

Open Database Connectivity (ODBC) Open Database Connectivity (ODBC) Open Database Connectivity (ODBC), proposto dalla Microsoft nel 1991, fornisce un interfaccia applicativa standard che permette ad una generica applicazione di accedere

Dettagli

INDICE 1. Comunità Creative 2. Casi studio 2.1. Stazione delle biciclette 2.2. Cantiere per pratiche non-affermative 2.3. Arduino

INDICE 1. Comunità Creative 2. Casi studio 2.1. Stazione delle biciclette 2.2. Cantiere per pratiche non-affermative 2.3. Arduino Comunità Creative INDICE 1. Comunità Creative 2. Casi studio 2.1. Stazione delle biciclette 2.2. Cantiere per pratiche non-affermative 2.3. Arduino 3 4 1 1.Comunità Creative All interno delle comunità

Dettagli

APPUNTI PER IL CORSO DI ALFABETIZZAZIONE INFORMATICA

APPUNTI PER IL CORSO DI ALFABETIZZAZIONE INFORMATICA Università degli Studi di Udine CENTRO SERVIZI INFORMATICI E TELEMATICI Via delle Scienze, 208-33100 UDINE (Italy) Tel. +39-0432-558900 Fax +39-432-558911 CF 80014550307 P. IVA 01071600306 Internet E-mail:

Dettagli

Architettura dei calcolatori e Software di sistema

Architettura dei calcolatori e Software di sistema Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Lezioni di Informatica di Base per la Facoltà di Lettere e Filosofia Anno Accademico 2012/20103

Dettagli

LE ALTRE BOARD ARDUINO

LE ALTRE BOARD ARDUINO LE ALTRE BOARD ARDUINO Nel corso degli anni la scheda Arduino si è evoluta. Dalla versione Diecimila alla versione Uno sono state apportate diverse migliorie. L ultima release della Board Uno, la REV3,

Dettagli

Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC.

Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC. tesi di laurea Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit. Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana correlatore Ing. Luca Anniciello candidato Gianluca

Dettagli

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza

Dettagli

Sistemi e modelli. Sistemi

Sistemi e modelli. Sistemi Sistemi e modelli Obbiettivo: sviluppare metodologie e strumenti di analisi quantitativa della QoS di sistemi costruzione e soluzione di modelli per la valutazione di prestazioni e affidabilità di sistemi

Dettagli

A&D Consulting & Logistic Systems Progettiamo e sviluppiamo soluzioni per la logistica

A&D Consulting & Logistic Systems Progettiamo e sviluppiamo soluzioni per la logistica A&D Consulting & Logistic Systems Progettiamo e sviluppiamo soluzioni per la logistica Company Profile CONSULTING & LOGISTIC SYSTEMS Company Profile Indice L'azienda La storia Soluzioni e tecnologie Referenze

Dettagli

Di Liberto Giovanni. I.T.I.S. E.Barsanti Castelfranco V.to Classe 5B/ABACUS A.S. 2007/2008

Di Liberto Giovanni. I.T.I.S. E.Barsanti Castelfranco V.to Classe 5B/ABACUS A.S. 2007/2008 TESINA Di Liberto Giovanni I.T.I.S. E.Barsanti Castelfranco V.to Classe 5B/ABACUS A.S. 2007/2008 Zeus Designer Software per la progettazione rapida di ambienti tridimensionali Software di Giovanni Di Liberto

Dettagli

MODULI DEL PROGETTO. Area Tematica Descrizione Area Corso Descrizione corso Tipologia Durata (ore) Finalità corso

MODULI DEL PROGETTO. Area Tematica Descrizione Area Corso Descrizione corso Tipologia Durata (ore) Finalità corso Interventi formativi volti all aumento delle competenze relativamente ai processi di digitalizzazione e di innovazione tecnologica ai sensi del d.m. n. 762 del 2014 Polo formativo Regione Piemonte (competenze.digitali@itispininfarina.it)

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

TECNOLOGIA SISTEMI OPERATIVI

TECNOLOGIA SISTEMI OPERATIVI TECNOLOGIA SISTEMI OPERATIVI DEFINIZIONE CARATTERISTICHE GENERALI Un sistema operativo (abbreviato in SO, in lingua inglese OS, "operating system"), in informatica, è un insieme di componenti software,

Dettagli

Architettura degli elaboratori

Architettura degli elaboratori Architettura degli elaboratori Ottavio D Antona dantona@di.unimi.it Maria Luisa Damiani damiani@di.unimi.it Dipartimento di Informatica Università degli Studi di Milano Architettura degli Elaboratori -

Dettagli

Il disegno nel ciclo di vita del prodotto

Il disegno nel ciclo di vita del prodotto Il disegno nel ciclo di vita del prodotto MERCATO INPUT Bisogni PROCESSO DI DI TRASFORMAZIONE Idea Progetto Produzione MERCATO OUTPUT Clienti Figura 1, pag. 19 Pianificazione Organizzazione CONTROLLO MANAGEMENT

Dettagli

L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:

L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software: Il Software L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software: un insieme di programmi che permettono di trasformare un insieme di circuiti

Dettagli