|
Istruzione
|
1999 |
Abilitazione alla Professione di
Ingegnere Università di Modena e Reggio Emilia
Voto: 60/60 |
1993-1999 |
Diploma di Laurea in Ingegneria Informatica
Orientamento: Sistemi Informatici e Applicazioni
Università di Modena e Reggio Emilia
Titolo Tesi: "Supporto alle decisioni nello smaltimento e nel
recupero di rifiuti C&D"
Relatore: Prof. Flavio Bonfatti
Correlatori: Arch. Ernesto Antonini, Prof. Luigi di Stefano
Controrelatore: Ing. Massimo Pancaldi
Voto: 110/110 Lode
|
1985-1990 |
Diploma di Perito Agrario
Istituto Tecnico Agrario Statale "Begozzo", Palidano
(MN)
Voto: 60/60 |
Attività scientifica
|
Nel 1998-99 inizio la mia attività di ricerca scientifica nel campo dell’elaborazione elettronica delle immagini e visione artificiale in collaborazione con il prof. Luigi di Stefano del DEIS (Dipartimento di Elettronica, Informatica e Sistemistica) dell’Università di Bologna. In particolare, ho studiato possibili alternative ai metodi classici di labeling di regioni connesse in immagini raster binarizzate. Lo scopo del labeling è essenzialmente quello di poter suddividere un’immagine in regioni correlate per poterle studiare con maggiore precisione; il labeling rappresenta quindi la base per un elevatissimo numero di applicazioni sull’elaborazione di immagini. Il risultato principale di questo lavoro è stato quello della realizzazione di un algoritmo ad alte prestazioni per effettuare il labeling, risultato presentato nel corso della conferenza internazionale ICIAP '99,
10th International Conference on Image Analysis and
Processing, 27-29 Settembre 1999, Venezia, Italy. Dal punto di vista tecnologico, l’algoritmo e l’applicazione di testing (un’applicazione industriale di visione artificiale per il riconoscimento degli oggetti presenti su un nastro trasportatore monitorato da una telecamera) sono stati realizzati in C++ per piattaforma
MS-DOS.
La tesi, svolta nell’ambito del progetto Europeo LIFE98 – VAMP (Valorizzazione di Materiali e Prodotti di Demolizione) dal titolo “Supporto alle decisioni nello smaltimento e nel recupero di rifiuti C&D” ha riguardato lo sviluppo del prototipo di un Decision Support System per la gestione controllata del flusso di materiali C&D (Costruzione & Demolizione edili) sul territorio di interesse del progetto VAMP (province di Modena e Reggio
Emilia).
Durante la tesi (da gennaio ad ottobre 1999) svolta presso l’istituto di ricerca ICIE (Istituto cooperativo per l’innovazione) di Bologna ed in collaborazione con QUASCO di Bologna reparto R&S, acquisisco profonde competenze nei seguenti campi, in cui ho prodotto risultati di rilevanza
scientifica:
- Problematiche GIS (Geographical Information System): durante l’ideazione del modello concettuale del DSS è sorta l’esigenza di calcolare un enorme numero di distanze geografiche in brevissimo tempo. Dopo un attento ed approfondito studio di varie soluzioni, sono riuscito a realizzare un modello software che permette di descrivere un qualunque territorio geografico e di calcolare, con un algoritmo molto veloce, la distanza tra un luogo geografico iniziale ed un qualunque numero di destinazioni, individuando anche il percorso minimo. Rispetto ai classici algoritmi della Ricerca Operativa, con il modello software da me realizzato i punti di origine e di destinazione sono distribuiti con continuità sul territorio modellato (al contrario dell'approccio tradizionale che richiede la discretizzazione completa del territorio). Inoltre, anche in assenza di un reticolo stradale completo, il modello è in grado di calcolare le distanze con un errore molto basso. L’interfaccia visuale del prototipo DSS è stata in parte realizzata con i software GIS ESRI MapObject LT ed ESRI ArcView.
- Modellazione di DSS: per la modellazione del DSS ho utilizzato una tecnica matematica per la risoluzione dei problemi di ottimizzazione con criteri di ricerca tra loro contrastanti (chiamati MCDP, Multicriteria Decision Problem). Gli MCDP rappresentano una generalizzazione dei classici problemi della Ricerca Operativa.
La tesi ha visto la formalizzazione del problema, la ricerca di una soluzione e la sua realizzazione con un software scritto in parte in C++.La tesi mi ha permesso di sviluppare le capacità di comprensione e soluzione di problemi complessi. Parte di questo lavoro è riportato non solo nella tesi, ma anche nella pubblicazione conclusiva del progetto VAMP (edita da Franco Angeli)
"Residui da costruzione e demolizione, una risorsa ambientalmente
sostenibile" in cui descrivo la metodologia adottata per la realizzazione del software del progetto e il modello del problema e della
soluzione.
La tesi mi ha anche permesso di acquisire profonde competenze nel campo della raccolta delle specifiche (software requirements), nell’analisi e nel design del software. L’attività professionale successiva alla tesi ha riguardato non solo la prosecuzione e la conclusione del progetto VAMP, ma anche la consulenza proprio su tematiche di analisi e design del software. In particolare, mi interesso di progettazione del software utilizzando metodologie di OOA (Object Oriented Analisys) e OOD (Object Oriented Design), utilizzando come linguaggio di modellazione UML (Unified Modelling Language), standard OMG, e WAE (Web Application Extension for UML), estensione di UML che consente di modellare applicazioni Web. Utilizzo anche i modelli E/R e relazionale per la progettazione e la realizzazione di database e mi interesso di problematiche di round-trip e reverse engineering, nonché di refactoring di progetti software. Utilizzo anche i design pattern nella progettazione del software. Tutti questi strumenti metodologici mi hanno consentito di realizzare software di elevata qualità e manutenibilità.
Tale capacità è documentata dalle seguenti attività
professionali:
- Pubblicazione dell’articolo "Un esempio di utilizzo dello Unified Process" pubblicato su Computer Programming, Edizioni Infomedia, nel Giugno
2000
- Docenza per un sulla progettazione di database presso CERFORM di Sassuolo (MO). Settembre
2000
- Seminario di 8 ore presso l'università di Modena e Reggio Emilia, nell'ambito del corso di Ingegneria del Software per un approfondimento su tematiche Web e progettazione del software multi-tier dal titolo
"Tecnologie Web e il nuovo linguaggio di modellazione WAE (Web Application Extension for UML)". Dicembre
2000.
- Docenza per un corso aziendale di 12 ore presso IACP di Modena sulla progettazione dei sistemi software multi-tier (aziendali e Web) utilizzando i linguaggi di modellazione UML e WAE. Febbraio
2001.
- Docenza per un corso aziendale su progettazione e sviluppo di database presso Sincretech di Modena. Aprile
2001.
- Docenza per un corso su “Sistemi informatici aziendali e basi di dati” nell’ambito del master IFOA (Reggio Emilia) “Master in management dell’affidabilità e della qualità”, nell’ambito del quale sono state svolte esercitazioni su Microsoft SQL Server. Giugno
2001
- Progettazione e sviluppo di applicativi in Visual C++ e applicazioni Web nel corso degli anni
2000-2001.
Oltre alla realizzazione di applicativi in Visual C++, svolgo attività di docenza in un corso di C avanzato e C++ presso DIGITEK di Concordia sul Secchia (MO). Tra i clienti principali di Digitek sono presenti Ferrari Formula 1, Lamborghini, Aprilia corse, Piaggio. DIGITEK ha inoltre realizzato il sistema autostradale Telepass. Tutto il software è stato realizzato in C. Scopo del corso da me tenuto è quello di approfondire le conoscenze del C ed introdurre in azienda l’utilizzo del C++ e del Microsoft Visual C++.
Ho inoltre realizzato applicativi in C per ambiente Unix (Sun e Linux) e applicativi C++ e Visual C++ per ambiente Microsoft
Windows.
In breve, la mia esperienza scientifica e professionale mi ha portato ad avere ottima conoscenza del C e del C++ (di cui sono anche insegnante), a cui va aggiunta una profonda conoscenza delle tematiche di progettazione e sviluppo di software di qualità con tecnologie ad oggetti (OOAD) utilizzando come linguaggio di modellazione UML ed alcune sue estensioni. Ho sviluppato applicativi di elaborazione dati in C++ (problema MCDP per un DSS), di archiviazione dati con Microsoft Visual C++ ed ho sviluppato applicativi con interfaccia visuale in Microsoft Visual C++ in ambiente Microsoft Windows.Ho inoltre programmato in C in ambiente UNIX ed utilizzato le librerie grafiche Qt e l’ambiente IDE KDevelop per lo sviluppo di interfacce grafiche in Linux. Ho anche alcune conoscenza sistemistiche del sistema operativo Linux (installazione e configurazione di alcuni servizi di sistema).
|
Conoscenze informatiche
|
Linguaggi di programmazione: C, C++, Visual C++,
FORTRAN, Matlab, SQL, Pascal, Assembler 80x86, Visual Basic,
Visual Basic for Application.
Tecnologie Web: Java, Javascript, HTML, ASP, PHP,
JSP.
DBMS: Microsoft SQL Server, MSDE, Microsoft Access.
Linguaggi di modellazione: UML, E/R, relazionale,
OMT, IEC 1131-3, WAE (Web Application Extension) for UML.
Sistemi operativi: Linux (distribuzioni Mandrake,
Red Hat, Suse e Debian), Sun Solaris, Microsoft Windows NT
Server, Microsoft Windows 2000.
Ambienti e software di sviluppo:
- Microsoft Visual Studio 6 Enterprise Edition, in
particolare Visual C++, Visual Interdev, Visual SourceSafe,
Visual Modeler;
- KDevelop 1.1 per Linux;
- Sun Fortè for Java;
- Rational Rose 2000 Enterprise Edition (tool per design
software con notazione UML, reverse e round-trip
engineering);
- Rational Requiste Pro (tool per la generazione e la
gestione dei requisiti software in base alla
raccomandazione IEEE830-98 e al processo di sviluppo
Unified Process);
- Rational SoDa for Word, per la generazione e la gestione
della documentazione del software;· Altri tool: Instant
Developer, MagicDraw UML.
|
Attuale attività
|
Consulenza in campo informatico sia
nell'ambito della ricerca scientifica sia nell'ambito
commerciale. Le consulenze riguardano in particolare le fasi
di definizione e raccolta delle specifiche e le successive
fasi di analisi e design dei sistemi software.
Sviluppo di software.
Docenze in corsi di informatica.
Partecipazione al progetto PRIN (progetto MURST,
Università di Architettura di Venezia) per la definizione di
uno strumento di ausilio alle decisioni (DSS) finalizzato ad
integrare nel processo di progettazione del manufatto edilizio
anche la progettazione del disassemblaggio, demolizione e
riciclaggio degli elementi costruttivi. |
Pubblicazioni
|
2001 |
Un capitolo del libro edito da Franco Angeli (di
prossima pubblicazione), "Residui da costruzione e
demolizione, una risorsa ambientalmente sostenibile"
in cui descrivo la metodologia adottata per la realizzazione
del software del progetto VAMP. |
2000 |
Andrea Bulgarelli, "Un esempio di utilizzo
dello Unified Process", Computer Programming, Edizioni
Infomedia, Giugno 2000. |
1999 |
Andrea Bulgarelli, Luigi Di Stefano (Università di
Bologna), "A Simple And Efficient Connected Component
Labeling Algorithm", ICIAP '99, 10th International
Conference on Image Analysis and Processing, September 27-29,
1999, Venice, Italy. |
|
|