References of "Le Traon, Yves 50002182"
     in
Bookmark and Share    
Full Text
Peer Reviewed
See detailBlockPerf: A Hybrid Blockchain Emulator/Simulator Framework
Polge, Julien UL; Ghatpande, Sankalp UL; Kubler, Sylvain et al

in IEEE Access (2021), 9

Blockchain is increasingly used for registering, authenticating and validating digital assets (financial assets, real estate, etc.) and transactions, governing interactions, recording data and managing ... [more ▼]

Blockchain is increasingly used for registering, authenticating and validating digital assets (financial assets, real estate, etc.) and transactions, governing interactions, recording data and managing identification among multiple parties in a trusted, decentralized, and secure manner. Today, a large variety of blockchain technologies is expanding in order to fulfill technical and non-technical needs and requirements. Within this context, determining and most importantly evaluating the characteristics/performance of a given blockchain platform is crucial for system designers before deploying it. A number of blockchain simulators have been proposed in the literature over the past few years, as reviewed in this paper, but are often limited in several respects (lack of extensibility, do not allow for evaluating all aspects of a blockchain...). This paper extends and improves a state-of-the-art simulator (BlockSim) into a new simulator called ‘‘BlockPerf’’ to overcome those limitations. Both simulators are compared based on a real-life (benchmarking) Bitcoin scenario, whose results show that BlockPerf provides more realistic results than BlockSim, improving by around ≈50% (in average) the outcomes. [less ▲]

Detailed reference viewed: 102 (4 UL)
Full Text
Peer Reviewed
See detailA Replication Study on the Usability of Code Vocabulary in Predicting Flaky Tests
Haben, Guillaume UL; Habchi, Sarra UL; Papadakis, Mike UL et al

in 18th International Conference on Mining Software Repositories (2021, May)

Abstract—Industrial reports indicate that flaky tests are one of the primary concerns of software testing mainly due to the false signals they provide. To deal with this issue, researchers have developed ... [more ▼]

Abstract—Industrial reports indicate that flaky tests are one of the primary concerns of software testing mainly due to the false signals they provide. To deal with this issue, researchers have developed tools and techniques aiming at (automatically) identifying flaky tests with encouraging results. However, to reach industrial adoption and practice, these techniques need to be replicated and evaluated extensively on multiple datasets, occasions and settings. In view of this, we perform a replication study of a recently proposed method that predicts flaky tests based on their vocabulary. We thus replicate the original study on three different dimensions. First we replicate the approach on the same subjects as in the original study but using a different evaluation methodology, i.e., we adopt a time-sensitive selection of training and test sets to better reflect the envisioned use case. Second, we consolidate the findings of the initial study by building a new dataset of 837 flaky tests from 9 projects in a different programming language, i.e., Python while the original study was in Java, which comforts the generalisability of the results. Third, we propose an extension to the original approach by experimenting with different features extracted from the Code Under Test. Our results demonstrate that a more robust validation has a consistent negative impact on the reported results of the original study, but, fortunately, these do not invalidate the key conclusions of the study. We also find re-assuring results that the vocabulary-based models can also be used to predict test flakiness in Python and that the information lying in the Code Under Test has a limited impact in the performance of the vocabulary-based models [less ▲]

Detailed reference viewed: 264 (26 UL)
Full Text
Peer Reviewed
See detailTowards Exploring the Limitations of Active Learning: An Empirical Study
Hu, Qiang UL; Guo, Yuejun UL; Cordy, Maxime UL et al

in The 36th IEEE/ACM International Conference on Automated Software Engineering. (2021)

Deep neural networks (DNNs) are being increasingly deployed as integral parts of software systems. However, due to the complex interconnections among hidden layers and massive hyperparameters, DNNs ... [more ▼]

Deep neural networks (DNNs) are being increasingly deployed as integral parts of software systems. However, due to the complex interconnections among hidden layers and massive hyperparameters, DNNs require being trained using a large number of labeled inputs, which calls for extensive human effort for collecting and labeling data. Spontaneously, to alleviate this growing demand, a surge of state-of-the-art studies comes up with different metrics to select a small yet informative dataset for the model training. These research works have demonstrated that DNN models can achieve competitive performance using a carefully selected small set of data. However, the literature lacks proper investigation of the limitations of data selection metrics, which is crucial to apply them in practice. In this paper, we fill this gap and conduct an extensive empirical study to explore the limits of selection metrics. Our study involves 15 selection metrics evaluated over 5 datasets (2 image classification tasks and 3 text classification tasks), 10 DNN architectures, and 20 labeling budgets (ratio of training data being labeled). Our findings reveal that, while selection metrics are usually effective in producing accurate models, they may induce a loss of model robustness (against adversarial examples) and resilience to compression. Overall, we demonstrate the existence of a trade-off between labeling effort and different model qualities. This paves the way for future research in devising selection metrics considering multiple quality criteria. [less ▲]

Detailed reference viewed: 255 (49 UL)
Full Text
Peer Reviewed
See detailCONFUZZION: A Java Virtual Machine Fuzzer for Type Confusion Vulnerabilities
Bonnaventure, William; Khanfir, Ahmed UL; Bartel, Alexandre et al

in IEEE International Conference on Software Quality, Reliability, and Security (QRS), 2021 (2021)

Detailed reference viewed: 101 (13 UL)
Full Text
Peer Reviewed
See detailWhat You See is What it Means! Semantic Representation Learning of Code based on Visualization
Keller, Patrick UL; Kabore, Abdoul Kader UL; Plein, Laura et al

in ACM Transactions on Software Engineering and Methodology (2021)

Recent successes in training word embeddings for NLP tasks have encouraged a wave of research on representation learning for sourcecode, which builds on similar NLP methods. The overall objective is then ... [more ▼]

Recent successes in training word embeddings for NLP tasks have encouraged a wave of research on representation learning for sourcecode, which builds on similar NLP methods. The overall objective is then to produce code embeddings that capture the maximumof program semantics. State-of-the-art approaches invariably rely on a syntactic representation (i.e., raw lexical tokens, abstractsyntax trees, or intermediate representation tokens) to generate embeddings, which are criticized in the literature as non-robustor non-generalizable. In this work, we investigate a novel embedding approach based on the intuition that source code has visualpatterns of semantics. We further use these patterns to address the outstanding challenge of identifying semantic code clones. Wepropose theWySiWiM(“What You See Is What It Means”) approach where visual representations of source code are fed into powerfulpre-trained image classification neural networks from the field of computer vision to benefit from the practical advantages of transferlearning. We evaluate the proposed embedding approach on the task of vulnerable code prediction in source code and on two variationsof the task of semantic code clone identification: code clone detection (a binary classification problem), and code classification (amulti-classification problem). We show with experiments on the BigCloneBench (Java), Open Judge (C) that although simple, ourWySiWiMapproach performs as effectively as state of the art approaches such as ASTNN or TBCNN. We also showed with datafrom NVD and SARD thatWySiWiMrepresentation can be used to learn a vulnerable code detector with reasonable performance(accuracy∼90%). We further explore the influence of different steps in our approach, such as the choice of visual representations or theclassification algorithm, to eventually discuss the promises and limitations of this research direction. [less ▲]

Detailed reference viewed: 135 (13 UL)
Full Text
Peer Reviewed
See detailTest Selection for Deep Learning Systems
Ma, Wei UL; Papadakis, Mike UL; Tsakmalis, Anestis et al

in ACM Transactions on Software Engineering and Methodology (2021), 30(2), 131--1322

Detailed reference viewed: 417 (46 UL)
Full Text
Peer Reviewed
See detailKilling Stubborn Mutants with Symbolic Execution
Titcheu Chekam, Thierry UL; Papadakis, Mike UL; Cordy, Maxime UL et al

in ACM Transactions on Software Engineering and Methodology (2021), 30(2), 191--1923

Detailed reference viewed: 302 (16 UL)
Full Text
Peer Reviewed
See detailA Case Driven Study of the Use of Time Series Classification for Flexibility in Industry 4.0
Polge, Julien UL; Robert, Jérémy UL; Le Traon, Yves UL

in Sensors (2020), 20(24),

With the Industry 4.0 paradigm comes the convergence of the Internet Technologies and Operational Technologies, and concepts, such as Industrial Internet of Things (IIoT), cloud manufacturing, Cyber ... [more ▼]

With the Industry 4.0 paradigm comes the convergence of the Internet Technologies and Operational Technologies, and concepts, such as Industrial Internet of Things (IIoT), cloud manufacturing, Cyber-Physical Systems (CPS), and so on. These concepts bring industries into the big data era and allow for them to have access to potentially useful information in order to optimise the Overall Equipment Effectiveness (OEE); however, most European industries still rely on the Computer-Integrated Manufacturing (CIM) model, where the production systems run as independent systems (i.e., without any communication with the upper levels). Those production systems are controlled by a Programmable Logic Controller, in which a static and rigid program is implemented. This program is static and rigid in a sense that the programmed routines cannot evolve over the time unless a human modifies it. However, to go further in terms of flexibility, we are convinced that it requires moving away from the aforementioned old-fashioned and rigid automation to a ML-based automation, i.e., where the control itself is based on the decisions that were taken by ML algorithms. In order to verify this, we applied a time series classification method on a scale model of a factory using real industrial controllers, and widened the variety of parts the production line has to treat. This study shows that satisfactory results can be obtained only at the expense of the human expertise (i.e., in the industrial process and in the ML process). [less ▲]

Detailed reference viewed: 99 (9 UL)
Full Text
Peer Reviewed
See detailLoad approximation for uncertain topologies in the low-voltage grid
Mouline, Ludovic UL; Cordy, Maxime UL; Le Traon, Yves UL

in INTERNATIONAL CONFERENCE ON SMART GRID COMMUNICATIONS, 11-13 November 2020 (2020, November)

Smart grids allow operators to monitor the grid continuously, detect occurring incidents, and trigger corrective actions. To perform that, they require a deep understanding of the effective situation ... [more ▼]

Smart grids allow operators to monitor the grid continuously, detect occurring incidents, and trigger corrective actions. To perform that, they require a deep understanding of the effective situation within the grid. However, some parameters of the grid may not be known with absolute confidence. Reasoning over the grid despite uncertainty needs the consideration of all possible states. In this paper, we propose an approach to enumerate only valid potential grid states. Thereby, we allow discarding invalid assumptions that poison the results of a given computation procedure. We validate our approach based on a real-world topology from the power grid in Luxembourg. We show that the estimation of cable load is negatively affected by invalid fuse state combinations, in terms of computation time and accuracy. [less ▲]

Detailed reference viewed: 128 (12 UL)
Full Text
Peer Reviewed
See detailPermissioned Blockchain Frameworks in the Industry: A Comparison
Polge, Julien UL; Robert, Jérémy UL; Le Traon, Yves UL

in ICT Express (2020)

Permissioned and private blockchain platforms are increasingly used in today’s industry. This paper provides a comprehensive and comparative study of the 5 major frameworks (Fabric, Ethereum, Quorum ... [more ▼]

Permissioned and private blockchain platforms are increasingly used in today’s industry. This paper provides a comprehensive and comparative study of the 5 major frameworks (Fabric, Ethereum, Quorum, MultiChain and R3 Corda) with regard to the community activities, performance, scalability, privacy and adoption criteria. Based on a literature review, this study shows that even if Fabric is promising, the final selection of a framework for a specific case-study is always a trade-off. Finally, lessons learnt are given for industrial practitioners and researchers. [less ▲]

Detailed reference viewed: 183 (8 UL)
Full Text
Peer Reviewed
See detailData-driven simulation and optimization for covid-19 exit strategies
Ghamizi, Salah UL; Rwemalika, Renaud UL; Cordy, Maxime UL et al

in Ghamizi, Salah; Rwemalika, Renaud; Cordy, Maxime (Eds.) et al Data-driven simulation and optimization for covid-19 exit strategies (2020, August)

The rapid spread of the Coronavirus SARS-2 is a major challenge that led almost all governments worldwide to take drastic measures to respond to the tragedy. Chief among those measures is the massive ... [more ▼]

The rapid spread of the Coronavirus SARS-2 is a major challenge that led almost all governments worldwide to take drastic measures to respond to the tragedy. Chief among those measures is the massive lockdown of entire countries and cities, which beyond its global economic impact has created some deep social and psychological tensions within populations. While the adopted mitigation measures (including the lockdown) have generally proven useful, policymakers are now facing a critical question: how and when to lift the mitigation measures? A carefully-planned exit strategy is indeed necessary to recover from the pandemic without risking a new outbreak. Classically, exit strategies rely on mathematical modeling to predict the effect of public health interventions. Such models are unfortunately known to be sensitive to some key parameters, which are usually set based on rules-of-thumb.In this paper, we propose to augment epidemiological forecasting with actual data-driven models that will learn to fine-tune predictions for different contexts (e.g., per country). We have therefore built a pandemic simulation and forecasting toolkit that combines a deep learning estimation of the epidemiological parameters of the disease in order to predict the cases and deaths, and a genetic algorithm component searching for optimal trade-offs/policies between constraints and objectives set by decision-makers.Replaying pandemic evolution in various countries, we experimentally show that our approach yields predictions with much lower error rates than pure epidemiological models in 75% of the cases and achieves a 95% R² score when the learning is transferred and tested on unseen countries. When used for forecasting, this approach provides actionable insights into the impact of individual measures and strategies. [less ▲]

Detailed reference viewed: 173 (17 UL)
Full Text
Peer Reviewed
See detailOn the Efficiency of Test Suite based Program Repair: A Systematic Assessment of 16 Automated Repair Systems for Java Programs
Liu, Kui UL; Wang, Shangwen; Koyuncu, Anil UL et al

in 42nd ACM/IEEE International Conference on Software Engineering (ICSE) (2020, May)

Test-based automated program repair has been a prolific field of research in software engineering in the last decade. Many approaches have indeed been proposed, which leverage test suites as a weak, but ... [more ▼]

Test-based automated program repair has been a prolific field of research in software engineering in the last decade. Many approaches have indeed been proposed, which leverage test suites as a weak, but affordable, approximation to program specifications. Although the literature regularly sets new records on the number of benchmark bugs that can be fixed, several studies increasingly raise concerns about the limitations and biases of state-of-the-art approaches. For example, the correctness of generated patches has been questioned in a number of studies, while other researchers pointed out that evaluation schemes may be misleading with respect to the processing of fault localization results. Nevertheless, there is little work addressing the efficiency of patch generation, with regard to the practicality of program repair. In this paper, we fill this gap in the literature, by providing an extensive review on the efficiency of test suite based program repair. Our objective is to assess the number of generated patch candidates, since this information is correlated to (1) the strategy to traverse the search space efficiently in order to select sensical repair attempts, (2) the strategy to minimize the test effort for identifying a plausible patch, (3) as well as the strategy to prioritize the generation of a correct patch. To that end, we perform a large-scale empirical study on the efficiency, in terms of quantity of generated patch candidates of the 16 open-source repair tools for Java programs. The experiments are carefully conducted under the same fault localization configurations to limit biases. Eventually, among other findings, we note that: (1) many irrelevant patch candidates are generated by changing wrong code locations; (2) however, if the search space is carefully triaged, fault localization noise has little impact on patch generation efficiency; (3) yet, current template-based repair systems, which are known to be most effective in fixing a large number of bugs, are actually least efficient as they tend to generate majoritarily irrelevant patch candidates. [less ▲]

Detailed reference viewed: 260 (18 UL)
Full Text
Peer Reviewed
See detailLOVBench: Ontology Ranking Benchmark
Kolbe, Niklas UL; Vandenbussche, Pierre-Yves; Kubler, Sylvain UL et al

in Proceedings of The Web Conference 2020 (WWW '20) (2020, April)

Detailed reference viewed: 111 (10 UL)
Full Text
Peer Reviewed
See detailFixMiner: Mining relevant fix patterns for automated program repair
Koyuncu, Anil UL; Liu, Kui UL; Bissyande, Tegawendé François D Assise UL et al

in Empirical Software Engineering (2020)

Patching is a common activity in software development. It is generally performed on a source code base to address bugs or add new functionalities. In this context, given the recurrence of bugs across ... [more ▼]

Patching is a common activity in software development. It is generally performed on a source code base to address bugs or add new functionalities. In this context, given the recurrence of bugs across projects, the associated similar patches can be leveraged to extract generic fix actions. While the literature includes various approaches leveraging similarity among patches to guide program repair, these approaches often do not yield fix patterns that are tractable and reusable as actionable input to APR systems. In this paper, we propose a systematic and automated approach to mining relevant and actionable fix patterns based on an iterative clustering strategy applied to atomic changes within patches. The goal of FixMiner is thus to infer separate and reusable fix patterns that can be leveraged in other patch generation systems. Our technique, FixMiner, leverages Rich Edit Script which is a specialized tree structure of the edit scripts that captures the ASTlevel context of the code changes. FixMiner uses different tree representations of Rich Edit Scripts for each round of clustering to identify similar changes. These are abstract syntax trees, edit actions trees, and code context trees. We have evaluated FixMiner on thousands of software patches collected from open source projects. Preliminary results show that we are able to mine accurate patterns, efficiently exploiting change information in Rich Edit Scripts. We further integrated the mined patterns to an automated program repair prototype, PARFixMiner, with which we are able to correctly fix 26 bugs of the Defects4J benchmark. Beyond this quantitative performance, we show that the mined fix patterns are sufficiently relevant to produce patches with a high probability of correctness: 81% of PARFixMiner’s generated plausible patches are correct. [less ▲]

Detailed reference viewed: 139 (7 UL)
Full Text
Peer Reviewed
See detailPreventing Overloading Incidents on Smart Grids: A Multiobjective Combinatorial Optimization Approach
Antoniadis, Nikolaos UL; Cordy, Maxime UL; Sifaleras, Angelo et al

in Communications in Computer and Information Science (2020, February 15)

Cable overloading is one of the most critical disturbances that may occur in smart grids, as it can cause damage to the distribution power lines. Therefore, the circuits are protected by fuses so that ... [more ▼]

Cable overloading is one of the most critical disturbances that may occur in smart grids, as it can cause damage to the distribution power lines. Therefore, the circuits are protected by fuses so that, the overload could trip the fuse, opening the circuit, and stopping the flow and heating. However, sustained overloads, even if they are below the safety limits, could also damage the wires. To prevent overload, smart grid operators can switch the fuses on or off to protect the circuits, or remotely curtail the over-producing/over-consuming users. Nevertheless, making the most appropriate decision is a daunting decision-making task, notably due to contractual and technical obligations. In this paper, we define and formulate the overloading prevention problem as a Multiobjective Mixed Integer Quadratically Constrained Program. We also suggest a solution method using a combinatorial optimization approach with a state-of-the-art exact solver. We evaluate this approach for this real-world problem together with Creos Luxembourg S.A., the leading grid operator in Luxembourg, and show that our method can suggest optimal countermeasures to operators facing potential overloading incidents. [less ▲]

Detailed reference viewed: 356 (41 UL)
Full Text
See detailPandemic Simulation and Forecasting of exit strategies:Convergence of Machine Learning and EpidemiologicalModels
Ghamizi, Salah UL; Rwemalika, Renaud UL; Cordy, Maxime UL et al

Report (2020)

The COVID-19 pandemic has created a public health emergency unprecedented in this century. The lack ofaccurate knowledge regarding the outcomes of the virus has made it challenging for policymakers to ... [more ▼]

The COVID-19 pandemic has created a public health emergency unprecedented in this century. The lack ofaccurate knowledge regarding the outcomes of the virus has made it challenging for policymakers to decideon appropriate countermeasures to mitigate its impact on society, in particular the public health and the veryhealthcare system.While the mitigation strategies (including the lockdown) are getting lifted, understanding the current im-pacts of the outbreak remains challenging. This impedes any analysis and scheduling of measures requiredfor the different countries to recover from the pandemic without risking a new outbreak.Therefore, we propose a novel approach to build realistic data-driven pandemic simulation and forecastingmodels to support policymakers. Our models allow the investigation of mitigation/recovery measures andtheir impact. Thereby, they enable appropriate planning of those measures, with the aim to optimize theirsocietal benefits.Our approach relies on a combination of machine learning and classical epidemiological models, circum-venting the respective limitations of these techniques to allow a policy-making based on established knowl-edge, yet driven by factual data, and tailored to each country’s specific context. [less ▲]

Detailed reference viewed: 285 (20 UL)
Full Text
Peer Reviewed
See detailSearch-based adversarial testing and improvement of constrained credit scoring systems
Ghamizi, Salah UL; Cordy, Maxime UL; Gubri, Martin UL et al

in ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE '20), November 8-13, 2020 (2020)

Detailed reference viewed: 187 (27 UL)
Full Text
Peer Reviewed
See detailMuteria: An Extensible and Flexible Multi-Criteria Software Testing Framework
Titcheu Chekam, Thierry UL; Papadakis, Mike UL; Le Traon, Yves UL

in ACM/IEEE International Conference on Automation of Software Test (AST) 2020 (2020)

Program based test adequacy criteria (TAC), such as statement, branch coverage and mutation give objectives for software testing. Many techniques and tools have been developed to improve each phase of the ... [more ▼]

Program based test adequacy criteria (TAC), such as statement, branch coverage and mutation give objectives for software testing. Many techniques and tools have been developed to improve each phase of the TAC-based software testing process. Nonetheless, The engineering effort required to integrate these tools and techniques into the software testing process limits their use and creates an overhead to the users. Especially for system testing with languages like C, where test cases are not always well structured in a framework. In response to these challenges, this paper presents Muteria, a TAC-based software testing framework. Muteria enables the integration of multiple software testing tools. Muteria abstracts each phase of the TAC-based software testing process to provide tool drivers interfaces for the implementation of tool drivers. Tool drivers enable Muteria to call the corresponding tools during the testing process. An initial set of drivers for KLEE, Shadow and SEMu test-generation tools, Gcov, and coverage.py code coverage tools, and Mart mutant generation tool for C and Python programming language were implemented with an average of 345 lines of Python code. Moreover, the user configuration file required to measure code coverage and mutation score on a sample C programs, using the Muteria framework, consists of less than 15 configuration variables. Users of the Muteria framework select, in a configuration file, the tools and TACs to measure. The Muteria framework uses the user configuration to run the testing process and report the outcome. Users interact with Muteria through its Application Programming Interface and Command Line Interface. Muteria can benefit to researchers as a laboratory to execute experiments, and to software practitioners. [less ▲]

Detailed reference viewed: 202 (8 UL)
Full Text
Peer Reviewed
See detailFeatureNET: Diversity-driven Generation of Deep Learning Models
Ghamizi, Salah UL; Cordy, Maxime UL; Papadakis, Mike UL et al

in International Conference on Software Engineering (ICSE) (2020)

Detailed reference viewed: 106 (14 UL)