Andrea Fornaia, Ph.D.

Research Associate

Dipartimento di Matematica e Informatica, Università di Catania
Viale A. Doria, 6 -- 95125 Catania - Italy
Stanza 39 Blocco III
Tel: +39 095 738 3008
fornaia at dmi dot unict dot it

Short Bio

I'm a Research Associate at the Department of Mathematics and Informatics of the University of Catania (Italy).

I received the Ph.D. Degree in Computer Science from the University of Catania in 2018, defending a thesis with title "Data Dependence and Taint Analysis to foster Software Evolution", advised by Prof. Emiliano Tramontana.

In the past I won a scholarship with the National Institute of Nuclear Phisics (INFN) of Catania and the GARR Consortium, the Italian Academic and Research telecommunication network.

My research interests are mainly focused on software quality, covering subjects like software testing, static analysis and code refactoring. I’m also strongly interested in distributed systems technologies and IT infrastructures.

Conferences

I'm co-organising the following events at international conferences

Papers
JSCAN: Designing an easy to use LLVM-based Static Analysis Framework 2019
A General Powerful Graph Pattern Matching System for Data Analysis 2018
Program Analysis and Graph Pattern Matching to Reveal Modularity and Potential for Parallelism 2018
A Framework for Updating Functionalities Based on the MAPE Loop Mechanism 2018
Assisting Replace Method with Method Object: Selecting Fields and Preserving Data Access 2018
Detecting Android Malware According to Observations on User Activities 2018
DeDuCT: a Data Dependence based Concern Tagger for modularity analysis 2017
Is my code easy to port? using taint analysis to evaluate and assist code portability 2017
Cloud Services for On-Demand Vehicles Management 2017
Enhancing City Transportation Services Using Cloud Support 2016
Making android apps data-leak-safe by data flow analysis and code injection 2016
An OWL Framework for Rule-based Recognition of Places in Italian Non-structured Text 2016
A Software Architecture Assisting Workflow Executions on Cloud Resources 2015
Using AOP Neural Networks to Infer User Behaviours and Interests 2015
An AO System for OO-GPU Programming 2015
Combining Static and Dynamic Data Flow Analysis: a Hybrid Approach for Detecting Data Leaks in Java Applications 2015
Random Versus Combinatorial Effectiveness in Software Conformance Testing: a Case Study 2015
Assessing the Correctness of JVM Implementations 2014
Combinatorial Interaction Testing of a Java Card Static Verifier 2014
The agINFRA Science Gateway for Agricultural Sciences 2013
CLEVER: a Light Cloud Environment for Clusters and Grids 2012
An Attempt to Integrate Clouds in Grids 2011
Visualization Element: towards the definition of a new Grid Service 2011
Lectures
Laboratorio di Ingegneria dei Sistemi Distribuiti (A.A. 2020-21)

Il codice degli esempi mostrati a lezione si trova su [GitHub]

  • L1a: Contenuti del corso [PDF]
  • L1b: Introduzione a DevOps [PDF]
  • L2a: Git: basi, workflow e concetti avanziati - pt1 [PDF]
  • L2b: Git: basi, workflow e concetti avanziati - pt2 [PDF]
  • L3: Maven [PDF]
  • L4: Unit Testing con Junit 4 e Mockito [PDF]
  • L5: Testing Combinatoriale [PDF]
  • L6: Creazione Oracolo con il Model Checking [PDF]
  • L7: Microservizi [PDF]
  • L8: Mutation e Regression Testing [PDF]
  • L9: Microservizi con Spring Boot [PDF]
  • L10: Distributed Tracing [PDF]
Laboratorio di Ingegneria dei Sistemi Distribuiti (A.A. 2019-20)
  • L1a: Contenuti del corso [PDF]
  • L1b: Introduzione a DevOps [PDF]
  • L2: Git: basi, workflow e concetti avanziati - pt1 [PDF]
  • L3: Git: basi, workflow e concetti avanziati - pt2 [PDF]
  • L4: Git Tutorial: CI/CD con GitHub e Travis [PDF]
  • L5a: Git: basi, workflow e concetti avanziati - pt3 [PDF]
  • L5b: Mining Software Repository [PDF]
  • L6: Microservizi [PDF]
  • L7: Microservizi con Spring Boot [PDF]
  • L8a: Unit Test con JUnit [PDF]
  • L8b: Testing Combinatoriale [PDF]
Laboratorio di Ingegneria dei Sistemi Distribuiti (A.A. 2018-19)
  • L00: Contenuti del corso [PDF]
  • L01: Introduzione a DevOps [PDF]
  • L02: Git: basi, workflow e concetti avanziati - pt1 [PDF]
  • L03: Git: basi, workflow e concetti avanziati - pt2 [PDF]
  • L04: Git: basi, workflow e concetti avanziati - pt3 [PDF]
  • L05: MSR: Mining Software Repository [PDF]
  • L06: Testing Combinatoriale [PDF]
  • L07: Model Checking [PDF]
  • L08: Infrastructure Automation con OpenStack [PDF]
  • L09: Microservizi [PDF]
  • L10: Microservizi con Spring Boot [PDF]
Tecnologie per i sistemi Distribuiti e il Web e Laboratorio: esercitazioni (A.A. 2018-19)
  • Materiale per le esercitazioni [Dropbox] (ultima modifica: 01/12/18)
Tutorato di Ingegneria del Software (A.A. 2018-19)
About Me
I took a Ph.D. degree (AY 2018), a bachelor degree (AY 2011) and a Master of Science (AY 2014) in Computer Science. I’m currently a Research Associate at the department of Mathematics and Computer Science of the University of Catania.
From 2009 to 2011 I won a scholarship with the National Institute of Nuclear Physics (INFN) of Catania, where I mainly worked on monitoring solutions for data centers and on the application porting over Grid and Cloud infrastructures.
In 2012 I won a scholarship with the GARR Consortium, the Italian Academic and Research telecommunication network. I proposed a solution for a cloud-based RaaS service (Recovery as as Service) able to build an on-demand private cloud over existing Grid resources.
In 2013 I was involved in the JACOS project with the dpt. of Mathematics and Informatics of the University of Catania, where I worked on the combinatorial testing of Java Card bytecode verifiers.
Last, but not least, I’m a certified RedHat OpenStack Administrator.