Paper published in a book (Scientific congresses, symposiums and conference proceedings)
Mining Assumptions for Software Components using Machine Learning
Gaaloul, Khouloud; Menghi, Claudio; Nejati, Shiva et al.
2020In Proceedings of the The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE)
Peer reviewed
 

Files


Full Text
fse_2020_CR.pdf
Author postprint (1.72 MB)
Download

All documents in ORBilu are protected by a user license.

Send to



Details



Keywords :
Environment assumptions; Model checking; Machine learning; Decision trees; Search-based software testing
Abstract :
[en] Software verification approaches aim to check a software component under analysis for all possible environments. In reality, however, components are expected to operate within a larger system and are required to satisfy their requirements only when their inputs are constrained by environment assumptions. In this paper, we propose EPIcuRus, an approach to automatically synthesize environment assumptions for a component under analysis (i.e., conditions on the component inputs under which the component is guaranteed to satisfy its requirements). EPIcuRus combines search-based testing, machine learning and model checking. The core of EPIcuRus is a decision tree algorithm that infers environment assumptions from a set of test results including test cases and their verdicts. The test cases are generated using search-based testing, and the assumptions inferred by decision trees are validated through model checking. In order to improve the efficiency and effectiveness of the assumption generation process, we propose a novel test case generation technique, namely Important Features Boundary Test (IFBT), that guides the test generation based on the feedback produced by machine learning. We evaluated EPIcuRus by assessing its effectiveness in computing assumptions on a set of study subjects that include 18 requirements of four industrial models. We show that, for each of the 18 requirements, EPIcuRus was able to compute an assumption to ensure the satisfaction of that requirement, and further, ≈78% of these assumptions were computed in one hour.
Research center :
ULHPC - University of Luxembourg: High Performance Computing
Disciplines :
Computer science
Author, co-author :
Gaaloul, Khouloud ;  University of Luxembourg > Faculty of Science, Technology and Communication (FSTC)
Menghi, Claudio ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Nejati, Shiva ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Briand, Lionel ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Wolfe, David;  QRA, Corp
External co-authors :
yes
Language :
English
Title :
Mining Assumptions for Software Components using Machine Learning
Publication date :
2020
Event name :
The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE)
Event date :
From 8-11-2020 to 29-11-202
Main work title :
Proceedings of the The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE)
Peer reviewed :
Peer reviewed
Focus Area :
Security, Reliability and Trust
European Projects :
H2020 - 694277 - TUNE - Testing the Untestable: Model Testing of Complex Software-Intensive Systems
FnR Project :
FNR12632261 - Early Quality Assurance Of Critical Systems, 2018 (01/01/2019-31/12/2021) - Mehrdad Sabetzadeh
Funders :
CE - Commission Européenne [BE]
Available on ORBilu :
since 11 June 2020

Statistics


Number of views
455 (132 by Unilu)
Number of downloads
596 (36 by Unilu)

Scopus citations®
 
10
Scopus citations®
without self-citations
5
OpenCitations
 
6

Bibliography


Similar publications



Contact ORBilu