Write a Blog >>
ESEC/FSE 2021
Thu 19 - Sat 28 August 2021 Clowdr Platform

Concurrency bugs are extremely difficult to detect. Recently, several dynamic techniques achieve sound analysis. M2 is even complete for two threads.
It is designed to decide whether two events can occur consecutively.
However, real-world concurrency bugs can involve more events and threads.
Some can occur when the order of two or more events can be exchanged even if they occur not consecutively.
We propose a new technique SeqCheck to soundly decide whether a sequence of events can occur in a specified order.
The ordered sequence represents a potential concurrency bug.
And several known forms of concurrency bugs can be easily encoded into event sequences where each represents a way that the bug can occur.
To achieve it, SeqCheck explicitly analyzes branch events and includes a set of efficient algorithms.
We show that SeqCheck is sound; and it is also complete on traces of two threads.

We have implemented SeqCheck to detect three types of concurrency bugs
%data races, deadlocks, and atomicity violations
and evaluated it on 51 Java benchmarks producing up to billions of events.
Compared with M2 and other three recent sound race detectors, SeqCheck detected 333 races in ~30 minutes;
while others detected from 130 to 285 races in ~6 to ~12 hours.
SeqCheck detected 20 deadlocks in ~6 seconds.
This is only one less than Dirk; but Dirk spent more than one hour.
SeqCheck also detected 30 atomicity violations in ~20 minutes.
The evaluation shows SeqCheck can significantly outperform existing concurrency bug detectors.

Wed 25 Aug

Displayed time zone: Athens change

19:00 - 20:00
Analytics & Software Evolution—Defect Prediction and Effort EstimationResearch Papers / Journal First +12h
Chair(s): Davide Di Ruscio University of L'Aquila
19:00
10m
Paper
Learning From Mistakes: Machine Learning Enhanced Human Expert Effort Estimates
Journal First
Federica Sarro University College London, Rebecca Moussa University College London, Alessio Petrozziello University College London, Mark Harman University College London
19:10
10m
Paper
Sound and Efficient Concurrency Bug PredictionArtifacts Reusable
Research Papers
Yan Cai Institute of Software at Chinese Academy of Sciences, Hao Yun Institute of Software at Chinese Academy of Sciences, Jinqiu Wang Institute of Software at Chinese Academy of Sciences, Lei Qiao Beijing Institute of Control Engineering, Jens Palsberg University of California at Los Angeles
DOI
19:20
10m
Paper
On the Assessment of Software Defect Prediction Models via ROC Curves
Journal First
Sandro Morasca Università degli Studi dell'Insubria, Luigi Lavazza Università degli Studi dell'Insubria
19:30
30m
Live Q&A
Q&A (Analytics & Software Evolution—Defect Prediction and Effort Estimation)
Research Papers

Thu 26 Aug

Displayed time zone: Athens change

07:00 - 08:00
Analytics & Software Evolution—Defect Prediction and Effort EstimationJournal First / Research Papers
Chair(s): Alexander Chatzigeorgiou University of Macedonia
07:00
10m
Paper
Learning From Mistakes: Machine Learning Enhanced Human Expert Effort Estimates
Journal First
Federica Sarro University College London, Rebecca Moussa University College London, Alessio Petrozziello University College London, Mark Harman University College London
07:10
10m
Paper
Sound and Efficient Concurrency Bug PredictionArtifacts Reusable
Research Papers
Yan Cai Institute of Software at Chinese Academy of Sciences, Hao Yun Institute of Software at Chinese Academy of Sciences, Jinqiu Wang Institute of Software at Chinese Academy of Sciences, Lei Qiao Beijing Institute of Control Engineering, Jens Palsberg University of California at Los Angeles
DOI
07:20
10m
Paper
On the Assessment of Software Defect Prediction Models via ROC Curves
Journal First
Sandro Morasca Università degli Studi dell'Insubria, Luigi Lavazza Università degli Studi dell'Insubria
07:30
30m
Live Q&A
Q&A (Analytics & Software Evolution—Defect Prediction and Effort Estimation)
Research Papers