Causal reasoning for software quality engineering

Software Institute

Date: 15 June 2023 / 16:30 - 17:30

USI Campus Est, room D0.03, Sector D

Speaker: Roberto Pietrantuono, Università di Napoli "Federico II"

Software engineering is a brain-intensive creative activity involving complex inter-dependent tasks to build and ensure the quality of software products. The boost of machine learning (ML) fostered a human-machine co-design view to develop highly dependable systems: machines, with their computational power, can largely boost the human ability of searching for interesting patterns in the big data universe, thus supporting several software engineering tasks especially aimed at fault avoidance (e.g., via testing), fault removal (e.g., debugging), fault tolerance and prediction. 
However, while recognizing patterns in past data is a fundamental human ability for decision making, well supported by ML, engineers do much more when building a system. They tend to infer cause-effect relationships among the involved variables, and, based on that, derive explanations, infer hypotheses and simulate possible actions, to then support decisions – in other words, they reason on what have learnt. In this seminar, I share initial reflections about the need of better supporting the engineer’s reasoning activity. A few applications of causal discovery and causal inference techniques to quality-related tasks are discussed, as a glimpse of a new view of human-machine cooperation where machine can support and amplify human reasoning with the power of computation.

Roberto Pietrantuono is Associate Professor at University of Naples “Federico II”, working in the Dependable Systems and Software Engineering Research Team (DESSERT). His research interests are in the areas of software engineering, particularly, software (and AI systems) testing, software quality assurance, software reliability engineering. He has co-authored about 100 papers in these research areas. He co-founded Critiware (, a company working in critical systems engineering. He is senior member of IEEE.

Chair: Paolo Tonella