Sequence Alignment Algorithms

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sequence Alignment Algorithms"

Transcript

1 Sequence Alignment Algorithms Algoritmi per l Allineamento di Sequenze Relatore: Prof. Giancarlo Mauri Correlatore: Prof. Gianluca Della Vedova Tesi di Laurea di: Mauro Baluda Matricola Part of ALiBio project

2 1 Obiettivi dello stage Scopo di questo stage è stata la realizzazione di un implementazione efficiente degli algoritmi per L Allineamento di Sequenze, un problema che riveste un grande interesse in ambito biologico essendo un metodo chiave per cercare aree importanti all interno del genoma, determinare la loro funzione e scoprirne l origine evoluzionistica. Lo stage è parte del progetto ALiBio che si propone di formire una raccolta di librerie per lo sviluppo di programmi di bioinformatica con particolare riguardo all efficenza dell implementazione. Quando ho incominciato lo stage, le strutture dati necessarie per rappresentare informazioni biologiche quali le sequenze di DNA, RNA e proteine erano già state implementate. Ho costruito le mie funzioni sulla base di queste strutture dati. 2 Allineamento di Sequenze Gli algoritmi implementati sono quelli per l allineamento globale, locale e semiglobale. Il codice prodotto segue le specifiche generali del progetto. Gli algoritmi di allineamento sono utilizzati per misurare la similitudine tra sequenze di proteine o DNA e per trovarne l allineamento migliore anche inserendo dei gaps nelle sequenze che migliorino il risultato finale. Gli algoritmi di allineamento globale cercano di far combaciare le due sequenze dall inizio alla fine ottenendo a volte allineamenti non molto convincenti tra sottosezioni delle sequenze originali, per esempio: CATTTAGATT-C X X X --GTT-GTTTAT D altro canto gli algoritmi per l allineamento locale cercano dei segmenti delle sequenze di partenza che coincidano al meglio. Utilizzando le sequenze già viste otterremmo: catttagattc gttgtttat L Allineamento semiglobale invece allinea un prefisso di una delle due sequenze con un suffisso dell altra e darebbe: CATttagattc gttgttt-at 2

3 3 Specifiche del progetto Nello sviluppo della libreria ho seguito le linee guida definite dal progetto ALiBio. Literate Programming Il primo requisito è di produrre il lavoro utilizzando uno strumento per il Literate Programming che si chiama noweb. Il Literate Programming è una metodologia di sviluppo che combina un linguaggio di programmazione con un linguaggio per la documentazione con l obiettivo di produrre lavori meglio documentati e perciò più robusti, portabili, facili da manutenere e probabilmente anche più divertenti da scrivere. L idea principale è quella di trattare un programma come un testo letterario, facile da leggere dagli uomini oltre che dai computers. Il prodotto finale è un documento ipertestuale, nello stile del World Wide Web. Linguaggi Come linguaggio per la documentazione ALiBio adotta il sistema di scrittura L A TEXche produce documentazione scientifica e matematica di grande qualità tipografica. L intero progetto è sviluppato con il linguaggio C++ che, assieme a C, è probabilmente il più usato dai programmatori di applicazioni scientifiche in tutto il mondo. Questa scelta garantisce la portabilità del codice verso tutti i compilatori che reispettino lo standard ISO e quindi la sua compatibilità con tutte le piattaforme hardware. Paradigmi di Programmazione Oltre ad utilizzare le caratteristiche del linguaggio C++ come l orientamento agli oggetti, il progetto adotta anche il concetto di Programmazione Generica come proposto dalla Standard Template Library che viene usata intensivamente in tutto il progetto. La Programmazione Generica è una tecnica che permette di implementare algoritmi in modo per quanto possibile indipendente dalle strutture dati sottostante. Questo significa che lo stesso codice sorgente può essere usato indipendentemente dal tipo di dato con il quale viene istanziato o che viene passato come parametro. Licenza Da un punto di vista legale e di distribuzione, ALiBio adotta una licenza libera che si chiama LGPL, permettendo a chiunque di accedere al codice ed alla documentazione. 3

4 4 Fasi dello sviluppo Conoscere gli strumenti di lavoro Prima di poter procedere con la fase di codifica vera e propria, ho dedicato un periodo di studio all apprendimento degli strumenti necessari per la realizzazione del progetto. Tutti i software utilizzati (noweb, L A TEX, Gnu C++ Compiler, CVS, GAWK) sono liberamente disponibili per il sistema operativo GNU/Linux, in questo modo ho avuto la possibilità di approfondire la mia conoscenza di questo sistema come piattaforma di sviluppo nonchè della suite di strumenti messi a disposizione dal progetto GNU e in particolare del programma make. Sebbene conoscessi già L A TEX, non avevo mai utilizzato il sistema noweb o più in generale il Literate Programming. Ho anche dovuto approfondire il mio livello di conoscenza del sistema di versioning CVS. Nel mio lavoro ho utilizzato alcune funzioni prese dalla Boost Library, la loro documentazione on-line è molto curata ed esaustiva. Studio ed implementazione degli algoritmi Una volta acquisiti gli strumenti necessari per la realizzazione del progetto, ho incominciato a studiare gli algoritmi che avrei dovuto implementare usando gli articoli originali scritti dai loro autori nonchè una moltitudine di altra documentazione ricavata dal World Wide Web. Nel progetto ho implementato le librerie che si occupano dell allineamento di sequenze con costo lineare ed affine per i gap, ho anche implementato una versione spazio-lineare dei medesimi algoritmi. Per ognuno dei possibili tipi di allineamento ho incluso una funzione per l allineamento globale, locale e semiglobale. Testing La fase di test ha un importanza fondamentale in questo progetto. Una volta che il codice è stato scritto, è necessario scrivere alcuni tests specifici per verificarne la correttezza. La tecnica adottata è chiamata automatic regression tests e permette di confrontare l effettivo output del test con quello atteso o con quello di versioni precedenti della funzione in esame. Sono state preparate due classi di test: uno per testare la correttezza e le funzionalità della classe score matrix e l altra per verificare l esecuzione della classe seq alignment che è quella che si occupa dell effettivo allineamento delle sequenze. Gli algoritmi sono stati implementati facendo largo uso di accessi diretti alla memoria, C++ non offre protezione automatica contro i memory leaks quindi abbiamo utilizzato uno strumento specifico chiamato Valgrind per riconoscere eventuali errori di lettura o scrittura in memoria. 4

5 Per essere certi che l algoritmo funzionasse correttamente su un grande numero di possibili inputs, abbiamo sviluppato un test randomizzato che utilizza le funzioni in esame su input casuali e ne verifica l output. Questo test ha rivelato alcuni errori nel codice che non era stato possibile notare precedentemente. La fase di test della libreria ha richiesto una quantità di lavoro notevole, paragonabile a quella dedicata all effettiva implementazione. Analisi delle performances Altri gruppi di lavoro negli scorsi anni hanno sviluppato altre librerie per risolvere il problema dell allineamento di sequenze, abbiamo pensato di confrontare i risultati e le performances della nostra implementazione con quelli di EMBOSS, uno dei pacchetti liberi più usati. Abbiamo notato che la nostra implementazione è paragonabile a quella di EMBOSS dal punto di vista dell utilizzo delle risorse della macchina tranne nel caso dell allineamento in spazio lineare che viene portato a termine da EMBOSS in un tempo significativamente minore. 5 Conclusioni Terminato il periodo di stage, gli obiettivi che ci eravamo posti sono stati raggiunti. Gli algoritmi richiesti sono stati implementati assieme alla loro documentazione come da specifiche di progetto, inoltre le performance della libreria sono in linea con quelle attese. La natura libera del progetto ALiBio è un incentivo per il suo ulteriore sviluppo, infatti i programmatori di software per la bioinformatica possono utilizzare liberamente ALiBio all interno dei loro programmi ma anche contribuire alla sua espansione ed al suo miglioramento. Possibili miglioramenti futuri Dal punto di vista delle performances è certamente possibile migliorare ancora il codice, in particolare per ridurne l utilizzo di memoria. Aggiunta di ulteriori algoritmi per l allineamento di sequenze, in particolare per la ricerca di allineamenti sub ottimali. ALiBio è un progetto rivolto agli sviluppatori per la creazione di applicazioni di bioinformatica, ad ogni modo le librerie presentate in questo lavoro potrebbero essere usate facilmente dagli utenti finali programmando un interfacca utente a linea di comando. A partire da quest interfaccia, con l aiuto di software specifici come Pise e Kaptain, sarebbe possibile sviluppare velocemente un interfaccia web ed una grafica. 5

Anno di corso: 2004/2005. Istruzioni. Istruzioni per lo svolgimento dei progetti didattici. versione 1.1

Anno di corso: 2004/2005. Istruzioni. Istruzioni per lo svolgimento dei progetti didattici. versione 1.1 versione 1.1 per lo svolgimento dei progetti didattici Corso di Laboratorio di Programmazione II Prof. Luca Forlizzi Anno Accademico 2004-2005 GENERALITÀ...3 Scopo del documento...3 Struttura del documento...3

Dettagli

Informatica. Scopo della lezione

Informatica. Scopo della lezione 1 Informatica per laurea diarea non informatica LEZIONE 1 - Cos è l informatica 2 Scopo della lezione Introdurre le nozioni base della materia Definire le differenze tra hardware e software Individuare

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Introduzione alla Programmazione ad Oggetti in C++

Introduzione alla Programmazione ad Oggetti in C++ Introduzione alla Programmazione ad Oggetti in C++ Lezione 1 Cosa è la Programmazione Orientata agli Oggetti Metodologia per costruire prodotti software di grosse dimensioni che siano affidabili e facilmente

Dettagli

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT IT PROCESS EXPERT 1. CARTA D IDENTITÀ... 2 2. CHE COSA FA... 3 3. DOVE LAVORA... 4 4. CONDIZIONI DI LAVORO... 5 5. COMPETENZE... 6 Quali competenze sono necessarie... 6 Conoscenze... 8 Abilità... 9 Comportamenti

Dettagli

Release Management. Obiettivi. Definizioni. Responsabilità. Attività. Input

Release Management. Obiettivi. Definizioni. Responsabilità. Attività. Input Release Management Obiettivi Obiettivo del Release Management è di raggiungere una visione d insieme del cambiamento nei servizi IT e accertarsi che tutti gli aspetti di una release (tecnici e non) siano

Dettagli

Studente: SANTORO MC. Matricola : 528

Studente: SANTORO MC. Matricola : 528 CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Permutazione degli elementi di una lista

Permutazione degli elementi di una lista Permutazione degli elementi di una lista Luca Padovani padovani@sti.uniurb.it Sommario Prendiamo spunto da un esercizio non banale per fare alcune riflessioni su un approccio strutturato alla risoluzione

Dettagli

Setup e installazione

Setup e installazione Setup e installazione 2 Prima di muovere i primi passi con Blender e avventurarci nel vasto mondo della computer grafica, dobbiamo assicurarci di disporre di due cose: un computer e Blender. 6 Capitolo

Dettagli

AMBIENTE DEV PASCAL. Dev-Pascal 1.9.2. Finestra di apertura

AMBIENTE DEV PASCAL. Dev-Pascal 1.9.2. Finestra di apertura Dev-Pascal 1.9.2 1 Dev-Pascal è un ambiente di sviluppo integrato per la programmazione in linguaggio Pascal sotto Windows prodotto dalla Bloodshed con licenza GNU e liberamente scaricabile al link http://www.bloodshed.net/dev/devpas192.exe

Dettagli

Curriculum Vitae Europass

Curriculum Vitae Europass Curriculum Vitae Europass Informazioni personali Cognome/i nome/i Castelli Flavio Email flavio.castelli@gmail.com Sito web personale http://www.flavio.castelli.name Nazionalità Italiana Data di nascita

Dettagli

Elementi di UML (7): Diagrammi dei componenti e di deployment

Elementi di UML (7): Diagrammi dei componenti e di deployment Elementi di UML (7): Diagrammi dei componenti e di deployment Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

FORM Il sistema informativo di gestione della modulistica elettronica.

FORM Il sistema informativo di gestione della modulistica elettronica. Studio FORM FORM Il sistema informativo di gestione della modulistica elettronica. We believe in what we create This is FORM power La soluzione FORM permette di realizzare qualsiasi documento in formato

Dettagli

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. "Generate debugging information"

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. Generate debugging information FASE DEBUGGING: Prima della compilazione, si devono inserire 1 nel progetto informazioni per il debug cioè si devono visualizzare le opzioni di progetto seguendo il percorso: controllando che la voce Genera

Dettagli

Business Intelligence. Il data mining in

Business Intelligence. Il data mining in Business Intelligence Il data mining in L'analisi matematica per dedurre schemi e tendenze dai dati storici esistenti. Revenue Management. Previsioni di occupazione. Marketing. Mail diretto a clienti specifici.

Dettagli

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO... Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Lezione 15 File System

Lezione 15 File System Lezione 15 File System Sistemi Operativi (9 CFU), CdL Informatica, A. A. 2014/2015 Dipartimento di Scienze Fisiche, Informatiche e Matematiche Università di Modena e Reggio Emilia http://weblab.ing.unimo.it/people/andreolini/didattica/sistemi-operativi

Dettagli

Cos è l Ingegneria del Software?

Cos è l Ingegneria del Software? Cos è l Ingegneria del Software? Corpus di metodologie e tecniche per la produzione di sistemi software. L ingegneria del software è la disciplina tecnologica e gestionale che riguarda la produzione sistematica

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 2 Marzo 2005, ore 14.30

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 2 Marzo 2005, ore 14.30 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 2 Marzo 2005, ore 14.30 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette.

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

Dettagli

Energy risk management

Energy risk management Il sistema di supporto alle tue decisioni Energy risk management Un approccio orientato agli attori M.B.I. Srl, Via Francesco Squartini 7-56121 Pisa, Italia - tel. 050 3870888 - fax. 050 3870808 www.powerschedo.it

Dettagli

Problem Management. Obiettivi. Definizioni. Responsabilità. Attività. Input

Problem Management. Obiettivi. Definizioni. Responsabilità. Attività. Input Problem Management Obiettivi Obiettivo del Problem Management e di minimizzare l effetto negativo sull organizzazione degli Incidenti e dei Problemi causati da errori nell infrastruttura e prevenire gli

Dettagli

Software 2. Classificazione del software. Software di sistema

Software 2. Classificazione del software. Software di sistema Software 2 Insieme di istruzioni e programmi che consentono il funzionamento del computer Il software indica all hardware quali sono le operazioni da eseguire per svolgere determinati compiti Valore spesso

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

Business Process Management

Business Process Management Corso di Certificazione in Business Process Management Progetto Didattico 2015 con la supervisione scientifica del Dipartimento di Informatica Università degli Studi di Torino Responsabile scientifico

Dettagli

Progetto Didattico di Informatica Multimediale

Progetto Didattico di Informatica Multimediale Progetto Didattico di Informatica Multimediale VRAI - Vision, Robotics and Artificial Intelligence 20 aprile 2015 Rev. 18+ Introduzione Le videocamere di riconoscimento sono strumenti sempre più utilizzati

Dettagli

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza.

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza. Relazione tecnica Fibonacci ANDENA GIANMARCO Traccia: Creare un algoritmo che permetta, dato un valore intero e positivo, di stabilire la sequenza utilizzando la regola di fibonacci dei numeri fino al

Dettagli

Lezione su Informatica di Base

Lezione su Informatica di Base Lezione su Informatica di Base Esplora Risorse, Gestione Cartelle, Alcuni tasti di scelta Rapida Domenico Capano D.C. Viterbo: Lunedì 21 Novembre 2005 Indice Una nota su questa lezione...4 Introduzione:

Dettagli

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione Processi (di sviluppo del) software Fase di Analisi dei Requisiti Un processo software descrive le attività (o task) necessarie allo sviluppo di un prodotto software e come queste attività sono collegate

Dettagli

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo:

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo: ALGORITMI 1 a Parte di Ippolito Perlasca Algoritmo: Insieme di regole che forniscono una sequenza di operazioni atte a risolvere un particolare problema (De Mauro) Procedimento che consente di ottenere

Dettagli

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Riusabilità del software - Catalogo delle applicazioni: Applicativo verticale Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Ricapitoliamo. Ricapitoliamo

Ricapitoliamo. Ricapitoliamo Ricapitoliamo Finora ci siamo concentrati sui processi computazionali e sul ruolo che giocano le procedure nella progettazione dei programmi In particolare, abbiamo visto: Come usare dati primitivi (numeri)

Dettagli

RUP (Rational Unified Process)

RUP (Rational Unified Process) RUP (Rational Unified Process) Caratteristiche, Punti di forza, Limiti versione del tutorial: 3.3 (febbraio 2007) Pag. 1 Unified Process Booch, Rumbaugh, Jacobson UML (Unified Modeling Language) notazione

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Guida alle offerte di finanziamento per le medie imprese

Guida alle offerte di finanziamento per le medie imprese IBM Global Financing Guida alle offerte di finanziamento per le medie imprese Realizzata da IBM Global Financing ibm.com/financing/it Guida alle offerte di finanziamento per le medie imprese La gestione

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

SIASFi: il sistema ed il suo sviluppo

SIASFi: il sistema ed il suo sviluppo SIASFI: IL SISTEMA ED IL SUO SVILUPPO 187 SIASFi: il sistema ed il suo sviluppo Antonio Ronca Il progetto SIASFi nasce dall esperienza maturata da parte dell Archivio di Stato di Firenze nella gestione

Dettagli

Rational Unified Process Introduzione

Rational Unified Process Introduzione Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un

Dettagli

AUTOCERTIFICAZIONE DELL AGGIORNAMENTO INFORMALE - ATTIVITA PROFESSIONALE DI CUI ALL ALLEGATO A DEL REGOLAMENTO -

AUTOCERTIFICAZIONE DELL AGGIORNAMENTO INFORMALE - ATTIVITA PROFESSIONALE DI CUI ALL ALLEGATO A DEL REGOLAMENTO - AUTOCERTIFICAZIONE DELL AGGIORNAMENTO INFORMALE - ATTIVITA PROFESSIONALE DI CUI ALL ALLEGATO A DEL REGOLAMENTO - (Art.5 c.1 e All.A del "Regolamento per l aggiornamento della competenza professionale"

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

DI REGOLAZIONE A DUE COMPONENTI

DI REGOLAZIONE A DUE COMPONENTI LEZIONE 16 Sistemi di regolazione SISTEMI DI REGOLAZIONE A DUE COMPONENTI In che modo un batterio sente e risponde a specifici segnali provenienti dall ambiente? Per esempio, nel caso dell operone lac

Dettagli

La valutazione degli effetti dei Programmi: il progetto PQM e altre indagini sui dati acquisiti

La valutazione degli effetti dei Programmi: il progetto PQM e altre indagini sui dati acquisiti Seminario Valutazione PON Roma, 29 marzo 2012 La valutazione degli effetti dei Programmi: il progetto PQM e altre indagini sui dati acquisiti Elena Meroni - Università di Padova e INVALSI Daniele Vidoni

Dettagli

Pagine romane (I-XVIII) OK.qxd:romane.qxd 7-09-2009 16:23 Pagina VI. Indice

Pagine romane (I-XVIII) OK.qxd:romane.qxd 7-09-2009 16:23 Pagina VI. Indice Pagine romane (I-XVIII) OK.qxd:romane.qxd 7-09-2009 16:23 Pagina VI Prefazione Autori XIII XVII Capitolo 1 Sistemi informativi aziendali 1 1.1 Introduzione 1 1.2 Modello organizzativo 3 1.2.1 Sistemi informativi

Dettagli

DIDAMATICA 2011 Torino - 04/05/2011 Workshop: Informatica nella scuola superiore

DIDAMATICA 2011 Torino - 04/05/2011 Workshop: Informatica nella scuola superiore DIDAMATICA 2011 Torino - 04/05/2011 Workshop: Informatica nella scuola superiore 1 di 20 Insegnamenti di Informatica nelle scuole superiori: la situazione attuale Prof. Minerva Augusto (Membro del Consiglio

Dettagli

UML Component and Deployment diagram

UML Component and Deployment diagram UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania I diagrammi UML Classificazione

Dettagli

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C.:luxx:. PREMESSE In questa guida non verranno trattati i costrutti di flusso, le funzioni, o comunque le caratteristiche del linguaggio, che si danno come presupposte.

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test Prefazione, Contenuto Parte 1: Sviluppo di programmi Parte 2: Uso e test SIMATIC Parte 3: Descrizione del linguaggio Programmazione di blocchi Appendici Glossario, Indice analitico Manuale Numero di ordinazione

Dettagli

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Unified Process Prof. Agostino Poggi Unified Process Unified Software Development Process (USDP), comunemente chiamato

Dettagli

Configuration Management

Configuration Management Configuration Management Obiettivi Obiettivo del Configuration Management è di fornire un modello logico dell infrastruttura informatica identificando, controllando, mantenendo e verificando le versioni

Dettagli

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi IL GESTIONALE DEL FUTURO L evoluzione del software per l azienda moderna Gestirsi / Capirsi / Migliorarsi IL MERCATO ITALIANO L Italia è rappresentata da un numero elevato di piccole e medie aziende che

Dettagli

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana Storie di successo Microsoft per le Imprese Scenario: Software e Development Settore: Servizi In collaborazione con Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

PROGRAMMA PER LA TRASPARENZA DECRETO LEGISLATIVO 14 MARZO 2013 N. 33

PROGRAMMA PER LA TRASPARENZA DECRETO LEGISLATIVO 14 MARZO 2013 N. 33 Settore Segreteria e Direzione generale Ufficio Trasparenza e Comunicazione PROGRAMMA PER LA TRASPARENZA DECRETO LEGISLATIVO 14 MARZO 2013 N. 33 Relazione anno 2014 a cura del Segretario Generale e della

Dettagli

UNIVERSITÀ DEGLI STUDI DI GENOVA

UNIVERSITÀ DEGLI STUDI DI GENOVA UNIVERSITÀ DEGLI STUDI DI GENOVA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Prova Finale GESTIONE DELLA TRANSIZIONE SECONDO LO STANDARD ITIL ITIL SERVICE TRANSITION

Dettagli

Il master è in collaborazione con

Il master è in collaborazione con Il Master in Turismo Sostenibile e Responsabile - Imprenditorialità e Management ideato dal Centro Studi CTS, giunto alla XII edizione, in collaborazione con Scuola di Comunicazione IULM e AITR - Associazione

Dettagli

Panoramica su ITIL V3 ed esempio di implementazione del Service Design

Panoramica su ITIL V3 ed esempio di implementazione del Service Design Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Panoramica su ITIL V3 ed esempio di implementazione del Service Design Lavoro pratico II Periodo didattico

Dettagli

su web che riportano documentazione e software dedicati agli argomenti trattati nel libro, riportandone, alla fine dei rispettivi capitoli, gli

su web che riportano documentazione e software dedicati agli argomenti trattati nel libro, riportandone, alla fine dei rispettivi capitoli, gli Prefazione Non è facile definire che cosa è un problema inverso anche se, ogni giorno, facciamo delle operazioni mentali che sono dei metodi inversi: riconoscere i luoghi che attraversiamo quando andiamo

Dettagli

DECRETA. ART. 1 Caratteristiche del Master

DECRETA. ART. 1 Caratteristiche del Master Il Rettore Decreto Rep. n 1339 Prot. n 13549 Data 29.04.2014 Titolo III Classe V UOR SOFPL VISTO lo Statuto del Politecnico di Milano; VISTO il D.M. 3.11.1999, n.509; VISTO Il D.M. 22.10.2004, n. 270;

Dettagli

Controllare un nastro trasportatore fischertechnik con Arduino

Controllare un nastro trasportatore fischertechnik con Arduino TITOLO ESPERIENZA: Controllare un nastro trasportatore fischertechnik con Arduino PRODOTTI UTILIZZATI: OBIETTIVO: AUTORE: RINGRAZIAMENTI: Interfacciare e controllare un modello di nastro trasportatore

Dettagli

INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02

INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02 INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02 Download Si può scaricare gratuitamente la versione per il proprio sistema operativo (Windows, MacOS, Linux) dal sito: http://www.codeblocks.org

Dettagli

GUIDA ALLA COMPILAZIONE

GUIDA ALLA COMPILAZIONE GUIDA ALLA COMPILAZIONE 1. L istanza di riconoscimento dei CFP, deve essere presentata esclusivamente al CNI mediante una compilazione online di apposito modulo disponibile sulla piattaforma della formazione

Dettagli

Compilazione con WinEdt

Compilazione con WinEdt Luciano Battaia Sommario Guida rapida ed elementare ai diversi modi di compilazione di un file L A TEX, usando WinEdt, con alcune indicazioni di base sui formati immagine supportati. Gli output standard

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

Dalla Mappatura dei Processi al Business Process Management

Dalla Mappatura dei Processi al Business Process Management Dalla Mappatura dei Processi al Business Process Management Romano Stasi Responsabile Segreteria Tecnica ABI Lab Roma, 4 dicembre 2007 Agenda Il percorso metodologico Analizzare per conoscere: la mappatura

Dettagli

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dal Problema all'algoritmo

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dal Problema all'algoritmo stituto Tecnico Statale Commerciale Dante Alighieri Cerignola (FG) Dispense di nformatica Anno Scolastico 2008/2009 Classe 3APS Dal Problema all'algoritmo Pr.: 001 Ver.:1.0 Autore: prof. Michele Salvemini

Dettagli

Oggetti Lezione 3. aspetti generali e definizione di classi I

Oggetti Lezione 3. aspetti generali e definizione di classi I Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione

Dettagli

DAL PROBLEMA AL PROGRAMMA

DAL PROBLEMA AL PROGRAMMA 1. I PROBLEMI E LA LORO SOLUZIONE DAL PROBLEMA AL PROGRAMMA L'uomo, per affrontare gli innumerevoli problemi postigli dallo sviluppo della civiltà, si è avvalso della scienza e della tecnica, i cui destini

Dettagli

INTRODUZIONE ALLA GESTIONE DEL PROGETTO SOFTWARE CON UML

INTRODUZIONE ALLA GESTIONE DEL PROGETTO SOFTWARE CON UML Università degli Studi di Parma Dipartimento di Matematica e Informatica Corso di Laurea in Informatica DISPENSE INTRODUTTIVE INTRODUZIONE ALLA GESTIONE DEL PROGETTO SOFTWARE CON UML Prof. Giulio Destri

Dettagli

Corso di Programmazione ad Oggetti

Corso di Programmazione ad Oggetti Corso di Programmazione ad Oggetti Introduzione alla programmazione ad oggetti a.a. 2008/2009 Claudio De Stefano 1 La programmazione modulare Un programma può essere visto come un insieme di moduli che

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

BUSINESS INTELLIGENCE & PERFORMANCE MANAGEMENT

BUSINESS INTELLIGENCE & PERFORMANCE MANAGEMENT BUSINESS INTELLIGENCE & PERFORMANCE MANAGEMENT BOLOGNA BUSINESS school Dal 1088, studenti da tutto il mondo vengono a studiare a Bologna dove scienza, cultura e tecnologia si uniscono a valori, stile di

Dettagli

Regolamento tecnico interno

Regolamento tecnico interno Regolamento tecnico interno CAPO I Strumenti informatici e ambito legale Articolo 1. (Strumenti) 1. Ai sensi dell articolo 2, comma 5 e dell articolo 6, comma 1, l associazione si dota di una piattaforma

Dettagli

Il compilatore Dev-C++

Il compilatore Dev-C++ Il compilatore Dev-C++ A cura del dott. Marco Cesati 1 Il compilatore Dev-C++ Compilatore per Windows: http://www.bloodshed.net/devcpp.html Installazione Configurazione Utilizzazione 2 1 Requisiti di sistema

Dettagli

come installare wordpress:

come installare wordpress: 9-10 DICEMBRE 2013 Istitiuto Nazionale Tumori regina Elena come installare wordpress: Come facciamo a creare un sito in? Esistono essenzialmente due modi per creare un sito in WordPress: Scaricare il software

Dettagli

L idea. 43.252.003.274.489.856.000 combinazioni possibili di cui solo una è quella corretta

L idea. 43.252.003.274.489.856.000 combinazioni possibili di cui solo una è quella corretta Guardare oltre L idea 43.252.003.274.489.856.000 combinazioni possibili di cui solo una è quella corretta I nostri moduli non hanno altrettante combinazioni possibili, ma la soluzione è sempre una, PERSONALIZZATA

Dettagli

Indice della presentazione. 1. Obiettivo del progetto. 2. Identificazione degli attori coinvolti. 3. Fasi del progetto. Tecnologie e Strumenti

Indice della presentazione. 1. Obiettivo del progetto. 2. Identificazione degli attori coinvolti. 3. Fasi del progetto. Tecnologie e Strumenti OGGETTO: PROGETTO TECO A ATTIVITÀ CINECA AUTORE: MAURO MOTTA Indice della presentazione 1. Obiettivo del progetto 2. Identificazione degli attori coinvolti 3. Fasi del progetto Tecnologie e Strumenti Il

Dettagli

OpenStreetMap a servizio della Pubblica Amministrazione: l'esperienza di B.U.NE.T. (Bicycle Urban NEtwork in Torino)

OpenStreetMap a servizio della Pubblica Amministrazione: l'esperienza di B.U.NE.T. (Bicycle Urban NEtwork in Torino) OpenStreetMap a servizio della Pubblica Amministrazione: l'esperienza di B.U.NE.T. (Bicycle Urban NEtwork in Torino) Mappathon, 9 Aprile 2015 Relatore: Danilo Botta, Project Manager, 5T S.r.l. La genesi

Dettagli

STRUTTURA CONTENUTI E SCADENZE SCHEDA SUA CDS. Anno Accademico 2014/2015

STRUTTURA CONTENUTI E SCADENZE SCHEDA SUA CDS. Anno Accademico 2014/2015 STRUTTURA CONTENUTI E SCADENZE SCHEDA SUA CDS Anno Accademico 2014/2015 PERCHE LA SCHEDA SUA CDS? L Obiettivo della scheda SUA-CdS non è puramente compilativo; tale strumento vuole essere una guida ad

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

ITIL. Introduzione. Mariosa Pietro

ITIL. Introduzione. Mariosa Pietro ITIL Introduzione Contenuti ITIL IT Service Management Il Servizio Perchè ITIL ITIL Service Management life cycle ITIL ITIL (Information Technology Infrastructure Library) è una raccolta di linee guida,

Dettagli

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

Master Universitario Online in Management delle Cure primarie e Territoriali: il Professionista Specialista

Master Universitario Online in Management delle Cure primarie e Territoriali: il Professionista Specialista Master Universitario Online in Management delle Cure primarie e Territoriali: il Professionista Specialista Master Universitario Online di I Livello 60 Crediti Formativi (CFU) 1. Premesse Le ragioni della

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

Che cosa e come valutano le prove di matematica e con quali risultati. nell A.S. 2008 2009

Che cosa e come valutano le prove di matematica e con quali risultati. nell A.S. 2008 2009 Che cosa e come valutano le prove di matematica e con quali risultati nell A.S. 2008 2009 Presentazione a cura di Roberta Michelini Casalpusterlengo, 8 gennaio 2010 http://www.invalsi.it/esamidistato0809/

Dettagli

Compilare il primo programma. Primo programma in C. Esercizio Somma due numeri. Compilare il primo programma. Analisi. Analisi

Compilare il primo programma. Primo programma in C. Esercizio Somma due numeri. Compilare il primo programma. Analisi. Analisi Primo in C Un semplice L ambiente di sviluppo Dev-C++ Codifica del Compilazione e correzione errori Esecuzione e verifica 2 Esercizio Somma due numeri Si realizzi un in linguaggio C che acquisisca da tastiera

Dettagli

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

Dettagli

UNIVERSITÀ DEGLI STUDI DI PADOVA

UNIVERSITÀ DEGLI STUDI DI PADOVA UNIVERSITÀ DEGLI STUDI DI PADOVA Facoltà di Scienze MM.FF.NN. Corso di Laurea Specialistica in Informatica Tesi di Laurea: GENERAZIONE DI GRAFI IN BUSINESS PROCESS MANAGEMENT NOTATION Laureanda: Contiero

Dettagli

1 Congresso Nazionale ANFeA Roma, Auditorium ISPRA 1 e 2 dicembre 2011

1 Congresso Nazionale ANFeA Roma, Auditorium ISPRA 1 e 2 dicembre 2011 1 Congresso Nazionale ANFeA Roma, Auditorium ISPRA 1 e 2 dicembre 2011 DETERMINAZIONE DEI PARAMETRI DI CAPTAZIONE DEI NUCLEI DELLA BASE DA ESAME DATSCAN CON I 123 TRAMITE SOFTWARE BASAL GANGLIA MATCHING

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

DECRETA. ART. 1 Caratteristiche del Master

DECRETA. ART. 1 Caratteristiche del Master Il Rettore Decreto Rep. n 2185 Prot. n 25890 Data 30.06.2014 Titolo III Classe V UOR SOFPL VISTO lo Statuto del Politecnico di Milano; VISTO il D.M. 3.11.1999, n.509; VISTO Il D.M. 22.10.2004, n. 270;

Dettagli