Oliviero Riganelli

Dr. Oliviero Riganelli

Department of Informatics, Systems and Communication, University of Milan-Bicocca, 1, 20126 Milan, Italy
orcid

Research Focus & Metrics

Academic Career Length

22Years (2005-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
1 April 2018
Verified
Conference Paper
Closed access
LMLeonardo Mariani
Leonardo Mariani
CMCristina Monni
Cristina Monni
MPMauro Pezze
Mauro Pezze
OROliviero Riganelli
Oliviero Riganelli
RXRui Xin
Rui Xin
By leveraging large clusters of commodity hardware, the Cloud offers great opportunities to optimize the operative costs of software systems, but impacts significantly on the reliability of software applications. The lack of control of applications over Cloud execution environments largely limits the applicability of state-of-the-art approaches that address reliability issues by relying on heavyweight training with injected faults. In this paper, we propose LOUD, a lightweight fault localization approach that relies on positive training only, and can thus operate within the constraints of Cloud systems. LOUD relies on machine learning and graph theory. It trains machine learning models with correct executions only, and compensates the inaccuracy that derives from training with positive samples, by elaborating the outcome of machine learning techniques with graph theory algorithms. The experimental results reported in this paper confirm that LOUD can localize faults with high precision, by relying only on a lightweight positive training.

1 April 2012
Verified
Conference Paper
Closed access
LMLeonardo Mariani
Leonardo Mariani
MPMauro Pezze
Mauro Pezze
OROliviero Riganelli
Oliviero Riganelli
MSMauro Santoro
Mauro Santoro
Automatic test case generation is a key ingredient of an efficient and cost-effective software verification process. In this paper we focus on testing applications that interact with the users through a GUI, and present AutoBlackTest, a technique to automatically generate test cases at the system level. AutoBlackTest uses reinforcement learning, in particular Q-Learning, to learn how to interact with the application under test and stimulate its functionalities. The empirical results show that AutoBlackTest can execute a relevant portion of the code of the application under test, and can reveal previously unknown problems by working at the system level and interacting only through the GUI.

1 March 2020 in Journal of Systems and Software
Verified
Journal Article
Closed access
LMLeonardo Mariani
Leonardo Mariani
MPMauro Pezzè
Mauro Pezzè
OROliviero Riganelli
Oliviero Riganelli
RXRui Xin
Rui Xin

29 May 2014 in Software Testing, Verification and Reliability
Verified
Journal Article
Closed access
PDF file
LMLeonardo Mariani
Leonardo Mariani
MPMauro Pezzè
Mauro Pezzè
OROliviero Riganelli
Oliviero Riganelli
MSMauro Santoro
Mauro Santoro

15 April 2024
Verified
Conference Paper
Open access
VCVincenzo Corso
Vincenzo Corso
LMLeonardo Mariani
Leonardo Mariani
Daniela MicucciDaniela Micucci
Daniela Micucci
OROliviero Riganelli
Oliviero Riganelli
AI-based code assistants are promising tools that can facilitate and speed up code development. They exploit machine learning algorithms and natural language processing to interact with developers, suggesting code snippets (e.g., method implementations) that can be incorporated into projects. Recent studies empirically investigated the effectiveness of code assistants using simple exemplary problems (e.g., the re-implementation of well-known algorithms), which fail to capture the spectrum and nature of the tasks actually faced by developers. In this paper, we expand the knowledge in the area by comparatively assessing four popular AI-based code assistants, namely GitHub Copilot, Tabnine, ChatGPT, and Google Bard, with a dataset of 100 methods that we constructed from real-life open-source Java projects, considering a variety of cases for complexity and dependency from contextual elements. Results show that Copilot is often more accurate than other techniques, yet none of the assistants is completely subsumed by the rest of the approaches. Interestingly, the effectiveness of these solutions dramatically decreases when dealing with dependencies outside the boundaries of single classes.

21 May 2011
Verified
Conference Paper
Open access
PDF file
LMLeonardo Mariani
Leonardo Mariani
MPMauro Pezzè
Mauro Pezzè
OROliviero Riganelli
Oliviero Riganelli
MSMauro Santoro
Mauro Santoro
In this paper we present AutoBlackTest, a tool for the automatic generation of test cases for interactive applications. AutoBlackTest interacts with the application though its GUI, and uses reinforcement learning techniques to understand the interaction modalities and to generate relevant testing scenarios. Early results show that the tool has the potential of automatically discovering bugs and generating useful system and regression test suites.