Current Projects

RECHARGE

Visit
MIUR - PRIN 2022 PNRR Unit Leader

RECHARGE is a novel automated framework for automating performance testing in CI/CD pipelines leveraging static analysis and search-based algorithms.

Focus: Performance Testing, CI/CD, Search-based Algorithms

SMARTITUDE

Visit
MIUR - PRIN 2022 Principal Investigator

SMARTITUDE aims to provide a comprehensive set of software engineering methods and tools to improve the blockchain smart contract quality assurance by leveraging automated test case generation and formal methods.

Focus: Blockchain, Smart Contracts, DeFi, Testing

Previous Projects

RADON H2020

Visit
EU Horizon 2020 Work Package Leader

RADON aimed at creating a DevOps framework to create and manage microservices-based applications that can optimally exploit serverless computing technologies and FaaS.

Focus: Serverless, Microservices, DevOps

SECO-ASSIST

Visit
FRS-FNRS & FWO Work Package Leader

SECO-ASSIST was an Excellence of Science Project providing novel software recommendation techniques for software ecosystems, addressing resilience, evolvability, heterogeneity, and social interaction.

Focus: Software Ecosystems, Recommendations, Social Networks

INTIMALS

Visit
Innoviris Work Package Leader

INTIMALS was an Innoviris project that developed an intelligent assistant to recommend source code modernization actions by mining patterns from legacy software repositories. It continuously learned from code structure and changes to improve its recommendations through advanced pattern mining algorithms.

Focus: Pattern Mining, Software Modernization, Intelligent Assistant

Tools and Datasets

Mutation Testing GPL v3.0

MuSe is a mutation-based tool for generating benchmarks by injecting vulnerabilities into smart contracts. It features six mutation operators to inject vulnerabilities. Based on SuMo, designed to run mutation testing on Solidity projects in a NodeJS environment.

Focus: Smart Contracts, Vulnerabilities, Solidity
AI-enabled JMH MIT License

AMBER is an AI-enabled extension of JMH that leverages Time Series Classification algorithms to predict the beginning of the steady-state phase at run-time and dynamically halt warm-up iterations accordingly.

Focus: Performance Testing, Machine Learning, JMH
Infrastructure-as-Code Apache 2.0

Defuse automatically collects and classifies failure data, enables the correction of those classifications, and builds machine learning models to detect defects based on those data. Instantiated for Infrastructure-as-Code DevOps practice.

Focus: DevOps, Machine Learning, IaC
Language-agnostic Apache 2.0

RepoMiner is a language-agnostic tool developed to support software engineering researchers in creating datasets to support any study on defect prediction. Automatically collects failure data and calculates metrics.

Focus: Defect Prediction, Research, Datasets

AnsibleMetrics

Python-based Apache 2.0

AnsibleMetrics is a Python-based static source code measurement tool to characterize Infrastructure-as-Code. It analyzes Ansible projects, but it could be easily extended to support additional formats.

Focus: Infrastructure-as-Code, DevOps, Quality

SoCRATES

Source
IntelliJ Plugin MIT License

SoCRATES is an IntelliJ IDEA plugin to detect test smells in Scala/SBT projects. It automatically detects and reports on six test smells including four variants of General Fixture.

Focus: Test Smells, Scala, Code Quality
Android Energy MIT License

aDoctor is an IntelliJ IDEA plugin to detect and refactor five Android-specific code smells that impact the energy consumption of these applications.

Focus: Android, Energy Efficiency, Code Smells
Energy Estimation Android

PETrA is a software able to estimate the energy consumption of method calls in Android apps. It is based on Android tools including Monkey, Batterystats, Systrace, and dmtracedump.

Focus: Android, Energy Consumption, Performance

Landfill

Dataset
Research Dataset Code Smells

Landfill is a comprehensive code smell dataset for empirical software engineering research and code quality analysis.

Focus: Code Quality, Empirical Research, Datasets

Open Source Contributions

GNOME Maps

Project
GNOME Contributor

Map application for GNOME desktop environment, providing location services and navigation functionality for Linux users.

Tech: GTK, JavaScript, GIS

GraphHopper

Project
Routing Engine Contributor

Memory efficient routing algorithms in Java for graph-based navigation. Includes Dijkstra, A*, and optimized road routing with Contraction Hierarchies.

Tech: Java, Algorithms, Apache License