EDBT 2026 Demo / reviewers in the wild / expert
Romain Rouvoy
dblp:52/2030
· DBLP profile ↗
89ranked-venue papers
2as first author
39since 2021 · last 2026
0000-0003-1771-8791ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 35 · 1 first-author · 15 since 2021Systems, architecture and hardware · 14 · 9 since 2021Security and privacy · 7 · 4 since 2021Databases, data management, data science and information retrieval · 6 · 2 since 2021Computer networks · 3 · 2 since 2021Applied, interdisciplinary, general and emerging computing · 3Artificial intelligence and machine learning · 2 · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Can We Spot Energy Regressions Using Developers' Tests? An Industrial ReplicationabstractProducing energy-efficient software is gaining increasing attention in both industry and research communities. In this context, the company Berger-Levrault, an international software publisher, aims to better understand and monitor the energy behaviour of its software systems to support the development of more energy-efficient products. However, achieving this objective remains challenging because developers lack feedback mechanisms that show how their implementation and testing choices affect the software system’s energy consumption. Louay Khrouf, Anas Shatnawi, Romain Rouvoy |
ICPC | 3 |
| 2026 | Energy-Efficient Right-Sizing of Kafka-like Message Brokers for IoT WorkloadsabstractIoT data pipelines rely on message brokers, such as Apache Kafka and Redpanda, for continuous telemetry ingestion. When it comes to capacity planning of these systems, the absence of clear sizing guidance often leads to conservative over-provisioning and unnecessary energy use. We present a calibration-based methodology for energy-efficient right-sizing of Kafka-compatible clusters for IoT ingest. Using a small set of initial experiments on 3--4 nodes, we fit a performance model that predicts maximum sustainable throughput and per-node power, enabling operators to choose the smallest cluster that satisfies a target ingest rate with headroom while minimizing energy consumption. We substantiate the approach with an experimental study of Kafka and Redpanda across three hardware generations (HDD, SATA SSD, NVMe), varying partition counts, node counts, and resource limits. We find that storage technology is the primary determinant of throughput, horizontal scaling is near-linear, and vertical CPU scaling yields diminishing returns; the two brokers exhibit distinct energy proportionality properties. On previously unseen hardware, the model predicts throughput and power with median errors below 10% and 7%, respectively. Our results provide a practical, reproducible capacity-planning workflow that maps IoT workload requirements (message size and rate) to concrete, energy-aware deployment decisions. Govind KP, Guillaume Pierre, Romain Rouvoy |
ICPE | 3 |
| 2026 | Integrity under siege: A rogue gNodeB's manipulation of 5G network slice allocation
Valeria Loscrì, Romain Rouvoy |
Comput. Networks | 3 |
| 2026 | Simply the best - A systematic evaluation approach for third-party libraries based on mobile app quality attributesabstractAbstract Mobile device applications (apps) are complex because they rely on integrating multiple third-party libraries (TPLs). Yet, TPLs ease app development by offering implementations of specific functionality. For example, app developers often use advertising libraries to generate revenue, integrate social networking libraries to simplify login, or include crash reporting libraries to monitor/report crashes in their apps. However, there are multiple TPLs with similar functionalities from which to choose, and developers often cannot foresee all the consequences of using these libraries in their apps. The sizes of apps grow with the addition and usage of TPLs, and so does the number of required permissions and resource consumption. Thus, TPLs may degrade the quality of apps and developers need help measuring and comparing them. We propose EQuAT, an approach for Evaluating Quality Attributes of TPLs that eases the comparison of TPLs. EQuAT takes as input minimal apps that integrate TPLs and playable scenarios to simulate user interaction while exercising a particular functionality of the included TPL. By collecting quality metrics and comparing them using plots, we provide app developers with a systematic approach to rank TPLs based on their preferences. We show how EQuAT helps developers make informed decisions about which libraries to integrate into their apps by validating them against nine TPLs across three categories. Rubén Saborido, Rémy Raes, Rodrigo Morales 0001, Romain Rouvoy, Foutse Khomh, Yann-Gaël Guéhéneuc |
Empir. Softw. Eng. | 4 |
| 2026 | Cinergy: Deterministic Power Monitoring for Carbon Accounting in the CloudabstractInternational audience Pierre Jacquet, Camille Coti, Marcos Dias de Assunção, Romain Rouvoy |
IEEE Trans. Cloud Comput. | 4 |
| 2025 | CINERGY: Reasoning Over the Worst Case Power Consumption of Cloud Virtual MachinesabstractEnergy consumption has become a critical concern in Information and Communication Technologies (ICT), pressing for more accurate measurements. While the power consumption of physical servers can be physically monitored, organizations are increasingly adopting virtual environments, such as cloud computing, rendering physical measurements impractical in operational contexts. The state-of-the-art approaches to estimating this ”virtual” consumption mostly consist of assigning server power consumption shares among hosted processes, guided by various system metrics. Unfortunately, such a bottom-up approach is highly sensitive in a multi-tenant environment, thus failing to report stable measurements to stakeholders. For example, the same activity performed by one Virtual Machine (VM) may lead to different power consumption traces, depending on the activity of the co-hosted VMs. As cloud customers have only control over their provisioned virtual resources, we propose a new method to model the power consumption of their virtual appliances, enabling contextagnostic tracking of their environmental impact. This framework, called CINERGY, is designed to be more predictable than the state-of-the-art power models, while still exposing the gains from consolidation. We evaluate its accuracy against ground-truth measurements, often lacking in the literature. We show that CINERGY is deterministic and accurate, with an average error of 6.6%. Pierre Jacquet, Camille Coti, Marcos Dias de Assunção, Romain Rouvoy |
CCGrid | 4 |
| 2025 | A Critical Review of Mobile Device-to-Device Communication
Lauric Desauw, Adrien Luxey-Bitri, Rémy Raes, Romain Rouvoy, Olivier Ruas, Walter Rudametkin |
DAIS | 4 |
| 2025 | GT-LSTM: Integrating High-Resolution Particulate Matter Data for Urban Air Quality Forecasting
Maryam Rahmani, Suzanne Crumeyrolle, Nadège Martiny, Romain Rouvoy |
DAIS | 4 |
| 2025 | Exploring Performance of Configurable Software Systems: the JHipster Case StudyabstractThe performance of software systems remains a key concern in software engineering. Configurable software systems, with their numerous configurations, complicate the performance evaluation process. This paper investigates the impact of web stack configurations on performance, using the JHipster web stack generator as a case study. We analyze JHipster configurations to understand how component choices influence system performance and explore individual configuration options for their specific effects. Our study shows that correlations across performance indicators exist but are often weak, and different options affect performance unevenly, with some impacting one indicator minimally while significantly influencing another. We developed a performance model for JHipster to automate the identification of configurations optimized for specific metrics, identifying four configurations that outperform the current default. Overall, this study highlights the importance of selecting configurations based on performance indicators rather than preferred technologies. Édouard Guégain, Alexandre Bonvoisin, Mathieu Acher, Clément Quinton, Romain Rouvoy |
EASE | 5 |
| 2025 | GANSec: Enhancing Supervised Wireless Anomaly Detection Robustness Through Tailored Conditional GAN Augmentation
Shuo Wang 0035, Valeria Loscrì, Alessandro Brighente, Mauro Conti, Romain Rouvoy |
ESORICS (1) | 6 |
| 2025 | DEMO: REST-Q - A Framework to Assess Energy Consumption in Web ApplicationsabstractThis paper presents REST-Q, a framework to measure the energy consumption in multi-tier web applications. Previous studies have shown that technology choices and configurations significantly affect the energy consumption of these systems. Notably, the complexity and variability of web frameworks make it difficult to capture the impact of design choices on the energy consumption of the deployed systems. REST-Q delivers a reproducible infrastructure to evaluate such impacts. Ostap Kilbasovych, Belkis Djeffal, Pierre Bourhis, Romain Rouvoy |
IC2E | 4 |
| 2025 | When Faster Isn't Greener: The Hidden Costs of LLM-Based Code OptimizationabstractLarge Language Models (LLMs) are increasingly adopted to optimize source code, offering the promise of faster, more efficient programs without manual tuning. This capability is particularly appealing in the context of sustainable computing, where enhanced performance is often assumed to correspond to reduced energy consumption. However, LLMs themselves are energy- and resource-intensive, raising critical questions about whether their use for code optimization is energetically justified. Prior work mainly focused on runtime performance gains, leaving a gap in our understanding of the broader energy implications of LLM-based code optimization.In this paper, we report on a systematic, energy-focused evaluation of LLM-based code optimization methods. Relying on 118 tasks from the EvalPerf benchmark, we assess the trade-offs between code performance, correctness, and energy consumption of multiple optimization methods across multiple families of LLMs. We introduce the Break-Even Point (BEP) as a key metric to quantify the number of executions required for an optimized program to outweigh the energy consumed when generating the optimization itself.Our results show that, while certain configurations achieve substantial speedups and energy reductions, these benefits often demand from hundreds to hundreds of thousands of executions to become energetically profitable. Moreover, the optimization process often yields incorrect or less efficient code. Importantly, we identify a weak negative correlation between performance gains and actual energy savings, challenging assumptions that faster code automatically equates to a smaller energy footprint. This work underscores the necessity of energy-aware optimization strategies. Practitioners should carefully target LLM-based optimization efforts to high-frequency, high-impact workloads, while monitoring energy consumption across the entire life-cycle of development and deployment. Tristan Coignion, Clément Quinton, Romain Rouvoy |
ASE | 3 |
| 2025 | DOT: Dynamic Knob Selection and Online Sampling for Automated Database Tuning
Debabrota Basu, Pierre Bourhis, Romain Rouvoy, Patrick Royer |
Proc. VLDB Endow. | 4 |
| 2025 | $x$xPUE: Extending Power Usage Effectiveness Metrics For Cloud InfrastructuresabstractThe energy consumption analysis and optimization of data centers have been an increasingly popular topic over the past few years. It is widely recognized that several effective metrics exist to capture the efficiency of hardware and/or software hosted in these infrastructures. Unfortunately, choosing the corresponding metrics for specific infrastructure and assessing its efficiency over time is still considered an open problem. For this purpose, energy efficiency metrics, such as thePower Usage Effectiveness(PUE), assess the efficiency of the computing equipment of the infrastructure. However, this metric stops at the power supply of hosted servers and fails to offer a finer granularity to bring a deeper insight into thePower Usage Effectivenessof hardware and software running in cloud infrastructure. Therefore, we propose to leverage complementary PUE metrics, coined$x$PUE, to compute the energy efficiency of the computing continuum from hardware components, up to the running software layers. Our contribution aims to deliver real-time energy efficiency metrics from different perspectives for cloud infrastructure, hence helping cloud ecosystems—from cloud providers to their customers—to experiment and optimize the energy usage of cloud infrastructures at large. Guillaume Fieni, Romain Rouvoy, Lionel Seinturier |
IEEE Trans. Sustain. Comput. | 2 |
| 2024 | SweetspotVM: Oversubscribing CPU without Sacrificing VM PerformanceabstractThe adoption of computing resources oversubscription in cloud environments is conventionally limited to a restricted subset of Virtual Machines (VMs) within the providers’ offerings, primarily driven by performance considerations. So far, VMs schedulers mostly implement all-or-nothing oversubscription strategies, wherein all VM resources are either oversubscribed or remain unaltered. While the former strategy offers higher consolidation rates, the latter delivers better performance guarantees.In this paper, we conducted an empirical study of the individual usage of virtual CPUs (vCPUs) in the OVHCloud production environment and we demonstrate that, as they are not uniformly utilized, the current holistic approach may not be appropriate. Based on these observations, we introduce a novel approach, named SweetspotVM, where oversubscription ratios are applied at the granularity of individual vCPU, instead of the whole VMs. This novel paradigm unlocks a more flexible oversubscription management strategy, pinning oversubscription ratios per vCPU within VMs. We present a prototype of SweetspotVM to illustrate the feasibility of accommodating multiple oversubscription levels within a single host and assigning them to individual vCPU.We assess the viability of our approach on a physical platform, demonstrating the possibility of dividing the cost of hosting VMs by 3, while maintaining the VMs performance at the level of non-oversubscribed platforms. We, therefore, believe that SweetspotVM opens new avenues to boost the consolidation of VMs on a reduced number of servers, with positive impacts on the environmental footprint of cloud computing. Pierre Jacquet, Thomas Ledoux, Romain Rouvoy |
CCGrid | 3 |
| 2024 | SlackVM: Packing Virtual Machines in Oversubscribed Cloud InfrastructuresabstractCloud providers generally expose a large catalog of Virtual Machine (VM) offers, some being categorized as premium-guaranteeing dedicated resources-and others being hosted in oversubscribed environments, where virtual resources can exceed the physical capabilities of Physical Machines (PMs). The latter strategy is often employed to increase platform utilization, as hosted VMs are unlikely to fully utilize all their allocated resources simultaneously [1]. However, managing multiple oversubscribed VM levels introduces an additional layer of complexity for Cloud providers, often leading them to provision isolated clusters of PMs for each category of offers. In this paper, we introduce SLACKVM, a novel Cloud-shared architecture wherein VMs from various oversubscription levels coexist on the same cluster of PMs. In particular, we demonstrate that oversubscription levels can be complementary, meaning they do not saturate the same resource components. By leveraging this complementarity, Cloud providers can couple multiple levels to better consolidate VM offers onto PMs, and reduce the size of their clusters by up to 9.6%. These resource savings result in both an operational cost reduction and a reduced ecological footprint for Cloud infrastructures, with a limited impact on the Quality of Service (QoS). Pierre Jacquet, Thomas Ledoux, Romain Rouvoy |
CLUSTER | 3 |
| 2024 | Compact Storage of Data Streams in Mobile Devices
Rémy Raes, Olivier Ruas, Adrien Luxey-Bitri, Romain Rouvoy |
DAIS | 4 |
| 2024 | A Performance Study of LLM-Generated Code on LeetcodeabstractThis study evaluates the efficiency of code generation by Large Language Models (LLMs) and measures their performance against human-crafted solutions using a dataset from Leetcode. We compare 18 LLMs, considering factors such as model temperature and success rate, and their impact on code performance. This research introduces a novel method for measuring and comparing the speed of LLM-generated code, revealing that LLMs produce code with comparable performance, irrespective of the adopted LLM. We also find that LLMs are capable of generating code that is, on average, more efficient than the code written by humans. The paper further discusses the use of Leetcode as a benchmarking dataset, the limitations imposed by potential data contamination, and the platform’s measurement reliability. We believe that our findings contribute to a better understanding of LLM capabilities in code generation and set the stage for future optimizations in the field. Tristan Coignion, Clément Quinton, Romain Rouvoy |
EASE | 3 |
| 2024 | Challenges & Opportunities in Automating DBMS: A Qualitative StudyabstractBackground. In recent years, the volume and complexity of data handled by Database Management Systems (DBMS) have surged, necessitating greater efforts and resources for efficient administration. In response, numerous automation tools for DBMS administration have emerged, particularly with the progression of AI and machine learning technologies. However, despite these advancements, the industry-wide adoption of such tools remains limited. Pierre Bourhis, Romain Rouvoy, Patrick Royer |
ASE | 3 |
| 2024 | Understanding the Performance-Energy Tradeoffs of Object-Relational Mapping FrameworksabstractObject-Relational Mapping (ORM) frameworks are the cornerstone of online services. To reply to incoming requests, these services often rely on these frameworks as a convenient data access layer. However, such frameworks might also be the source of performance inefficiency when configured and used inappropriately. This paper, therefore, compares different configurations of state-of-the-art Java-based ORM frameworks to unveil their performance efficiency, traditionally evaluated through metrics such as execution time and memory usage. However, rising environmental concerns have brought energy consumption to the forefront of the conversation. Beyond performance-centric measurements, we shed light on the energy consumption of these building blocks and explore the trade-offs that conceal the expected quality of service and environmental concerns. Our empirical results, obtained with an ORM-based version of the reference Transaction Processing Performance Council benchmark C (TPC-C) benchmark, highlight that the adoption of an ORM should be carefully configured by developers to leverage the resources offered by underlying databases. Alexandre Bonvoisin, Clément Quinton, Romain Rouvoy |
SANER | 3 |
| 2024 | Can we spot energy regressions using developers tests?
Benjamin Danglot, Jean-Rémy Falleri, Romain Rouvoy |
Empir. Softw. Eng. | 3 |
| 2024 | TS-Pothole: automated imputation of missing values in univariate time series
Brell Sanwouo, Clément Quinton, Romain Rouvoy |
Neural Comput. Appl. | 3 |
| 2024 | SCROOGEVM: Boosting Cloud Resource Utilization With Dynamic OversubscriptionabstractDespite continuous improvements, cloud physical resources remain underused, hence severely impacting the efficiency of these infrastructures at large. To overcome this inefficiency, Infrastructure-as-a-Service (IaaS) providers usually compensate for oversized Virtual Machines (VMs) by offering more virtual resources than are physically available on a host. However, this technique—known asoversubscription—may hinder performances when a statically-defined oversubscription ratio results in resource contention of hosted VMs. Therefore, instead of setting a static and cluster-wide ratio, this article studies how a greedy increase of the oversubscription ratio per Physical Machine (PM) and resources type can preserve performance goals. Keeping performance unchanged allows our contribution to be more realistically adopted by production-scale IaaS infrastructures. This contribution, namedScroogeVM, leverages the detection of PM stability to carefully increase the associated oversubscription ratios. Based on metrics shared by public cloud providers, we investigate the impact of resource oversubscription on performance degradation. Subsequently, we conduct a comparative analysis ofScroogeVMwith state-of-the-art oversubscription computations. The results demonstrate that our approach outperforms existing methods by leveraging the presence of long-lasting VMs, while avoiding live migration penalties and performance impacts for stakeholders. Pierre Jacquet, Thomas Ledoux, Romain Rouvoy |
IEEE Trans. Sustain. Comput. | 3 |
| 2023 | CloudFactory: An Open Toolkit to Generate Production-like Workloads for Cloud InfrastructuresabstractCloud infrastructures are large-scale and complex platforms designed to host a wide diversity of applications and workloads. Given these complexity and scale factors, simulators and benchmarks are broadly adopted in vitro to study their behaviors, prototype new software components and heuristics, and evaluate their effective performances.However, both state-of-the-art simulations and benchmarks may suffer from a representativeness problem, as the reported results can vary depending on their input workloads. For example, a Infrastructure-as-a-Service (IaaS) platform aims to host Virtual Machines (VMs), whose characteristics (resource configurations, workload intensity, arrival/departure rate, etc.) can greatly differ depending on Cloud providers and public/private deployments. Addressing this IaaS representativeness thus requires Cloud providers to share production-scale datasets, which might be considered sensitive. Moreover, Simulations and benchmarks require a specific experiment scenario that cannot be easily generated from Cloud providers characteristics.To address these issues, this paper introduces CloudFactory, a IaaS workload generator. Our contribution is first composed of a library that can be used by Cloud providers to share IaaS statistics, instead of raw datasets. Then, we introduce a generator designed to produce realistic VM workloads that match these statistics. CloudFactory is made available as open-source software that can be adopted by Cloud providers and researchers to foster the evaluation of new contributions.As an example, we perform an analysis on scheduling evolution for different IaaS workload intensity of two different Cloud providers: Microsoft Azure and Chameleon. We also report on OVHcloud statistics computed from CloudFactory and compare them to other Cloud providers. Pierre Jacquet, Thomas Ledoux, Romain Rouvoy |
IC2E | 3 |
| 2023 | Studying the Energy Consumption of Stream Processing Engines in the CloudabstractReducing the energy consumption of the global IT industry requires one to understand and optimize the large software infrastructures the modern data economy relies on. Among them are the data stream processing systems that are deployed in cloud data centers by companies, such as Twitter, to process billion of events per day in real time. However, studying the energy consumption of such infrastructures is difficult because they rely on a complex virtualized software ecosystem where attributing energy consumption to individual software components is a challenge, and because the space of possible configurations is large. We present GreenFlow, a principled methodology and tool designed to automate the deployment of energy measurement experiments for data stream processing systems in cloud environments. GreenFlow is designed to deliver reproducible results while remaining flexible enough to support a wide range of experiments. We illustrate its usage and show in particular that consolidating a DSP system in the smallest number of servers that are capable of processing it is an effective way to reduce energy consumption. Govind KP, Guillaume Pierre, Romain Rouvoy |
IC2E | 3 |
| 2023 | SFTM: Fast matching of web pages using Similarity-based Flexible Tree Matching
Sacha Brisset, Romain Rouvoy, Lionel Seinturier, Renaud Pawlak |
Inf. Syst. | 2 |
| 2023 | Breaking Bad: Quantifying the Addiction of Web Elements to JavaScriptabstractWhile JavaScript established itself as a cornerstone of the modern web, it also constitutes a major tracking and security vector, thus raising critical privacy and security concerns. In this context, some browser extensions propose to systematically block scripts reported by crowdsourced trackers lists. However, this solution heavily depends on the quality of these built-in lists, which may be deprecated or incomplete, thus exposing the visitor to unknown trackers. In this article, we explore a different strategy by investigating the benefits of disabling JavaScript in the browser. More specifically, by adopting such a strict policy, we aim to quantify the JavaScript addiction of web elements composing a web page through the observation of web breakages. As there is no standard mechanism for detecting such breakages, we introduce a framework to inspect several page features when blocking JavaScript, that we deploy to analyze 6,384 pages, including landing and internal web pages. We discover that 43% of web pages are not strictly dependent on JavaScript and that more than 67% of pages are likely to be usable as long as the visitor only requires the content from the main section of the page, for which the user most likely reached the page, while reducing the number of tracking requests by 85% on average. Finally, we discuss the viability of currently browsing the web without JavaScript and detail multiple incentives for websites to be kept usable without JavaScript. Romain Fouquet, Pierre Laperdrix, Romain Rouvoy |
ACM Trans. Internet Techn. | 3 |
| 2022 | Enabling Dynamic Virtual Frequency Scaling for Virtual Machines in the CloudabstractWith the democratization of the Cloud paradigm, many applications are developed to be executed inside virtual machines hosted by remote data centers providing an Infrastructure-as-a-Service (IaaS). These applications, developed by different users with different goals, tend to have different behaviors, hence a similar treatment on the Cloud provider side seems to be sub-optimal. Indeed, VM are black boxes to which are attached vCPUs, whose frequency are all the same, and are mainly indicative. In our opinion, an important limitation can be noted here. Because the Cloud provider is unaware of the applications that are executed inside the VMs, it has little insight on the behavior of the applications, and how to manage the VMs. For these reasons, Cloud provider can assign too much or too few resources to a VM, and might rely on migration mechanism to cope with that problem. In this paper, we propose to attach a virtual frequency to the VM template, which can be configured by the customer to better describe her expected application requirements, and the associated quality of service. Then, to enforce this virtual frequency, we designed a controller that leverages the Linux cgroup system to dynamically adjust the configuration on the host machine. We evaluate our new controller on a real infrastructure with real CPU-intensive applications executed by VM with different frequencies. We also discuss the benefits of our virtual frequency capping for VM placement. Emile Cadorel, Romain Rouvoy |
CLUSTER | 2 |
| 2022 | DRAWN APART: A Device Identification Technique based on Remote GPU Fingerprinting
Tomer Laor, Naif Mehanna, Antonin Durey, Vitaly Dyadyuk, Pierre Laperdrix, Clémentine Maurice, Yossef Oren, Romain Rouvoy, Walter Rudametkin, Yuval Yarom |
NDSS | 8 |
| 2022 | Erratum: Leveraging Flexible Tree Matching to repair broken locators in web automation scripts
Sacha Brisset, Romain Rouvoy, Lionel Seinturier, Renaud Pawlak |
Inf. Softw. Technol. | 2 |
| 2022 | Fostering the diversity of exploratory testing in web applicationsabstractSummary Exploratory testing (ET) is a software testing approach that complements automated testing by leveraging business expertise. It has gained momentum over the last decades as it appeals testers to exploit their business knowledge to stress the system under test (SUT). Exploratory tests, unlike automated tests, are defined and executed on‐the‐fly by testers. However, testers who perform exploratory tests may be biased by their experience and, incidentally, miss anomalies or unusual interactions proposed by the SUT. This is even more complex in the context of web applications, which typically expose a huge number of interaction paths to their users. As testers of these applications cannot remember all the sequences of interactions they performed, they may fail to deeply explore the application scope. This article, therefore, introduces a new approach to assist testers in widely exploring any web application. In particular, our approach monitors the online interactions performed by the testers to suggest in real‐time the probabilities of performing next interactions. Looking at these probabilities, we claim that the testers who favour interactions that have a low probability (because they were rarely performed), will increase the diversity of their explorations. Our approach defines a prediction model, based on ‐grams, that encodes the history of past interactions and that supports the estimation of the probabilities. Integrated within a web browser extension, it automatically and transparently injects feedback within the application itself. We conduct a controlled experiment and a qualitative study to assess our approach. Results show that it prevents testers to be trapped in already tested loops, and succeeds to assist them in performing deeper explorations of the SUT. Julien Leveau, Xavier Blanc 0001, Laurent Réveillère, Jean-Rémy Falleri, Romain Rouvoy |
Softw. Test. Verification Reliab. | 5 |
| 2021 | SelfWatts: On-the-fly Selection of Performance Events to Optimize Software-defined Power MetersabstractFine-grained power monitoring of software-defined infrastructures is unavoidable to maximize the power usage efficiency of data centers. However, the design of the underlying power models that estimate the power consumption of the monitored software components keeps being a long and fragile process that remains tightly coupled to the host machine and prevents a wider adoption by the industry beyond the rich literature on this topic. To overcome these limitations, this paper introduces SELFWATTS: a lightweight power monitoring system that explores and selects the relevant performance events to automatically optimize the power models to the underlying architecture. Unlike state-of-the-art techniques, SELFWATTS does not require any a priori training phase or specific hardware to configure the power models and can be deployed on a wide range of machines, including heterogeneous environments. Guillaume Fieni, Romain Rouvoy, Lionel Seinturier |
CCGRID | 2 |
| 2021 | FP-Redemption: Studying Browser Fingerprinting Adoption for the Sake of Web Security
Antonin Durey, Pierre Laperdrix, Walter Rudametkin, Romain Rouvoy |
DIMVA | 4 |
| 2021 | Evaluating the Impact of Java Virtual Machines on Energy ConsumptionabstractBackground. The Java Virtual Machine (JVM) platforms have known multiple evolutions along the last decades to enhance both the performance they exhibit and the features they offer. With regards to energy consumption, few studies have investigated the energy consumption of code and data structures. Yet, we keep missing an evaluation of the energy efficiency of existing JVM platforms and an identification of the configurations that minimize the energy consumption of software hosted on the JVM. Zakaria Ournani, Mohammed Chakib Belgaid, Romain Rouvoy, Pierre Rust, Joël Penhoat |
ESEM | 3 |
| 2021 | Evaluating The Energy Consumption of Java I/O APIsabstractThe Java language is rich of native and third-party I/O APIs that most Java applications and software use. Such operations can even be considered core to most software as they allow the interaction with the user and its data in a nonvolatile way. Yet, the I/O captivate a lot of attention due to their importance, but also due to the cost that these relatively slow operations add to read and write precious data, most commonly from/to disks. In this context, the impact of these I/O operations on energy consumption didn't get as much attention. Of course, I/O operations are responsible for energy consumption at the level of the storage medium (HDD or SSD) but they also induce non-negligible costs -both performance and energy-wise- at the CPU level. However, only few works take into account the impact of I/O on the energy consumption, especially at the CPU-level. Hence, this paper elaborates a detailed study with two main objectives. First we aim at assessing the energy consumption of several well-known I/O libraries methods, and investigate if different read/write methods can exhibit different energy consumption. Concretely, we assess -using micro-benchmarks-the energy consumption of 27 I/O methods for several file sizes and establish the truth about the most and least energy efficient methods. The second objective is to validate the results of the first experiments on real Java projects by substituting their default I/O methods and measuring the before/after energy consumption. Our results showed that i) different I/O methods consume very different amounts of energy, such as NIO Channels that are 20% more efficient than other methods for read purposes ii) substituting the I/O method in a software by a more efficient one can save an important amount of energy, 15% of energy saving has been registered for K-nucleotide and 3% for Zip4j. We also showed that choosing the right I/O method can save more than 30% of energy consumption when using the Javax.crypto API. Our work offers direct conclusions and guidelines on which I/O methods to use in which situation (read all data, read specific data, write data, etc.) for a better energy efficiency. It also opens doors for other works to better optimize the energy consumption of the I/O APIs and methods. Zakaria Ournani, Romain Rouvoy, Pierre Rust, Joël Penhoat |
ICSME | 2 |
| 2021 | Tales from the Code #1: The Effective Impact of Code Refactorings on Software Energy Consumption
Zakaria Ournani, Romain Rouvoy, Pierre Rust, Joël Penhoat |
ICSOFT | 2 |
| 2021 | Empowering mobile crowdsourcing apps with user privacy control
Lakhdar Meftah, Romain Rouvoy, Isabelle Chrisment |
J. Parallel Distributed Comput. | 2 |
| 2021 | Android code smells: From introduction to refactoring
Sarra Habchi, Naouel Moha, Romain Rouvoy |
J. Syst. Softw. | 3 |
| 2021 | Déjà vu: Abusing Browser Cache Headers to Identify and Track Online Users
Vikas Mishra, Pierre Laperdrix, Walter Rudametkin, Romain Rouvoy |
Proc. Priv. Enhancing Technol. | 4 |
| 2020 | SmartWatts: Self-Calibrating Software-Defined Power Meter for ContainersabstractFine-grained power monitoring of software activities becomes unavoidable to maximize the power usage efficiency of data centers. In particular, achieving an optimal scheduling of containers requires the deployment of software-defined power meters to go beyond the granularity of hardware power monitoring sensors, such as Power Distribution Units (PDU) or Intel's Running Average Power Limit (RAPL), to deliver power estimations of activities at the granularity of software containers. However, the definition of the underlying power models that estimate the power consumption remains a long and fragile process that is tightly coupled to the host machine.To overcome these limitations, this paper introduces SmartWatts: a lightweight power monitoring system that adopts online calibration to automatically adjust the CPU and DRAM power models in order to maximize the accuracy of runtime power estimations of containers. Unlike state-of-the-art techniques, SmartWatts does not require any a priori training phase or hardware equipment to configure the power models and can therefore be deployed on a wide range of machines including the latest power optimizations, at no cost. Guillaume Fieni, Romain Rouvoy, Lionel Seinturier |
CCGRID | 2 |
| 2020 | Power Budgeting of Big Data Applications in Container-based ClustersabstractEnergy consumption is currently highly regarded on computing systems for many reasons, such as improving the environmental impact and reducing operational costs considering the rising price of energy. Previous works have analysed how to improve energy efficiency from the entire infrastructure down to individual computing instances (e.g., virtual machines). However, the research is more scarce when it comes to controlling energy consumption, specially in real time and at the software level. This paper presents a platform that manages a power budget to cap the energy consumed from users to applications and down to individual instances. Using containers as virtualization technology, the energy limitation is implemented thanks to the platform's ability to monitor container energy consumption and dynamically adjust its CPU resources via vertical scaling as required. Representative Big Data applications have been deployed on the platform to prove the feasibility of this approach for energy control, showing that it is possible to distribute and enforce a power budget among users and applications. Jonatan Enes, Guillaume Fieni, Roberto R. Expósito, Romain Rouvoy, Juan Touriño |
CLUSTER | 4 |
| 2020 | Capturing Privacy-Preserving User Contexts with IndoorHash
Lakhdar Meftah, Romain Rouvoy, Isabelle Chrisment |
DAIS | 2 |
| 2020 | On Reducing the Energy Consumption of Software: From Hurdles to RequirementsabstractBackground. As software took control over hardware in many domains, the question of the energy footprint induced by the software is becoming critical for our society, as the resources powering the underlying infrastructure are finite. Yet, beyond this growing interest, energy consumption remains a difficult concept to master for a developer. Zakaria Ournani, Romain Rouvoy, Pierre Rust, Joël Penhoat |
ESEM | 2 |
| 2020 | Fostering the Diversity of Exploratory Testing in Web ApplicationsabstractExploratory testing (ET) is a software testing approach that complements automated testing by leveraging business expertise. It has gained momentum over the last decades as it appeals testers to exploit their business knowledge to stress the system under test (SUT). Exploratory tests, unlike automated tests, are defined and executed on-the-fly by testers. Testers who perform exploratory tests may be biased by their past experience and therefore may miss anomalies or unusual interactions proposed by the SUT. This is even more complex in the context of web applications, which typically expose a huge number of interaction paths to their users. As testers of these applications cannot remember all the sequences of interactions they performed, they may fail to deeply explore the application scope. This paper therefore introduces a new approach to assist testers in widely exploring any web application. In particular, our approach monitors the online interactions performed by the testers to suggest in real-time the probabilities of performing next interactions. Looking at these probabilities, we claim that the testers who favour interactions that have a low probability (because they were rarely performed), will increase the diversity of their explorations. Our approach defines a prediction model, based on ${n}$-grams, that encodes the history of past interactions and that supports the estimation of the probabilities. Integrated within a web browser extension, it automatically and transparently injects feedback within the application itself. We conduct a controlled experiment and a qualitative study to assess our approach. Results show that it prevents testers to be trapped in already tested loops, and succeeds to assist them in performing deeper explorations of the SUT. Julien Leveau, Xavier Blanc 0001, Laurent Réveillère, Jean-Rémy Falleri, Romain Rouvoy |
ICST | 5 |
| 2020 | Taming Energy Consumption Variations In Systems BenchmarkingabstractThe past decade witnessed the inclusion of power measurements to evaluate the energy efficiency of software systems, thus making energy a prime indicator along with performance. Nevertheless, measuring the energy consumption of a software system remains a tedious task for practitioners. In particular, the energy measurement process may be subject to a lot of variations that hinder the relevance of potential comparisons. While the state of the art mostly acknowledged the impact of hardware factors (chip printing process, CPU temperature), this paper investigates the impact of controllable factors on these variations. More specifically, we conduct an empirical study of multiple controllable parameters that one can easily tune to tame the energy consumption variations when benchmarking software systems. To better understand the causes of such variations, we ran more than a 1,000 experiments on more than 100 nodes with different workloads and configurations. The main factors we studied encompass: experimental protocol, CPU features (C-states, Turbo~Boost, core pinning) and generations, as well as the operating system. Our experiments showed that, for some workloads, it is possible to tighten the energy variation by up to 30x. Finally, we summarize our results as guidelines to tame energy consumption variations. We argue that the guidelines we deliver are the minimal requirements to be considered prior to any energy efficiency evaluation. Zakaria Ournani, Mohammed Chakib Belgaid, Romain Rouvoy, Pierre Rust, Joël Penhoat, Lionel Seinturier |
ICPE | 3 |
| 2020 | Don't Count Me Out: On the Relevance of IP Address in the Tracking EcosystemabstractTargeted online advertising has become an inextricable part of the way Web content and applications are monetized. At the beginning, online advertising consisted of simple ad-banners broadly shown to website visitors. Over time, it evolved into a complex ecosystem that tracks and collects a wealth of data to learn user habits and show targeted and personalized ads. To protect users against tracking, several countermeasures have been proposed, ranging from browser extensions that leverage filter lists, to features natively integrated into popular browsers like Firefox and Brave to combat more modern techniques like browser fingerprinting. Nevertheless, few browsers offer protections against IP address-based tracking techniques. Notably, the most popular browsers, Chrome, Firefox, Safari and Edge do not offer any. Vikas Mishra, Pierre Laperdrix, Antoine Vastel, Walter Rudametkin, Romain Rouvoy, Martin Lopatka |
WWW | 5 |
| 2019 | FOUGERE: User-Centric Location Privacy in Mobile Crowdsourcing Apps
Lakhdar Meftah, Romain Rouvoy, Isabelle Chrisment |
DAIS | 2 |
| 2019 | The rise of Android code smells: who is to blame?abstractThe rise of mobile apps as new software systems led to the emergence of new development requirements regarding performance. Development practices that do not respect these requirements can seriously hinder app performances and impair user experience, they qualify as code smells. Mobile code smells are generally associated with inexperienced developers who lack knowledge about the framework guidelines. However, this assumption remains unverified and there is no evidence about the role played by developers in the accrual of mobile code smells. In this paper, we therefore study the contributions of developers related to Android code smells. To support this study, we propose Sniffer, an open-source toolkit that mines Git repositories to extract developers' contributions as code smell histories. Using Sniffer, we analysed 255k commits from the change history of 324 Android apps. We found that the ownership of code smells is spread across developers regardless of their seniority. There are no distinct groups of code smell introducers and removers. Developers who introduce and remove code smells are mostly the same. Sarra Habchi, Naouel Moha, Romain Rouvoy |
MSR | 3 |
| 2019 | Heats: Heterogeneity-and Energy-Aware Task-Based SchedulingabstractCloud providers usually offer diverse types of hardware for their users. Customers exploit this option to deploy cloud instances featuring GPUs, FPGAs, architectures other than x86 (e.g., ARM, IBM Power8), or featuring certain specific extensions (e.g., Intel SGX). We consider in this work the instances used by customers to deploy containers, nowadays the de facto standard for micro-services, or to execute computing tasks. In doing so, the underlying container orchestrator (e.g., Kubernetes) should be designed so as to take into account and exploit this hardware diversity. In addition, besides the feature range provided by different machines, there is an often overlooked diversity in the energy requirements introduced by hardware heterogeneity, which is simply ignored by default container orchestrator's placement strategies. We introduce Heats, a new task-oriented and energy-aware orchestrator for containerized applications targeting heterogeneous clusters. Heats allows customers to trade performance vs. energy requirements. Our system first learns the performance and energy features of the physical hosts. Then, it monitors the execution of tasks on the hosts and opportunistically migrates them onto different cluster nodes to match the customer-required deployment trade-offs. Our Heats prototype is implemented within Google's Kubernetes. The evaluation with synthetic traces in our cluster indicate that our approach can yield considerable energy savings (up to 8.5%) and only marginally affect the overall runtime of deployed tasks (by at most 7%). Heats is released as open-source. Isabelly Rocha, Christian Göttel, Pascal Felber, Marcelo Pasin, Romain Rouvoy, Valerio Schiavoni |
PDP | 5 |
| 2019 | GreyCat: Efficient what-if analytics for data in motion at scale
Thomas Hartmann 0001, François Fouquet, Assaad Moawad, Romain Rouvoy, Yves Le Traon |
Inf. Syst. | 4 |
| 2019 | AccessiLeaks: Investigating Privacy Leaks Exposed by the Android Accessibility ServiceabstractAbstract To support users with disabilities, Android provides the accessibility services, which implement means of navigating through an app. According to the Android developer’s guide: “Accessibility services should only be used to assist users with disabilities in using Android devices and apps”. However, developers are free to use this service without any restrictions, giving them critical privileges such as monitoring user input or screen content to capture sensitive information. In this paper, we show that simply enabling the accessibility service leaves 72 % of the top finance a nd 80 % of the top social media apps vulnerable to eavesdropping attacks, leaking sensitive information such as logins and passwords. A combination of several tools and recommendations could mitigate the privacy risks: We introduce an analysis technique that detects most of these issues automatically, e.g. in an app store. We also found that these issues can be automatically fixed in almost all cases; our fixes have b een accepted by 70 % of the surveyed developers. Finally, we designed a notification mechanism which would warn users against possible misuses of the accessibility services; 50 % of users would follow these notifications. Mohammad Naseri, Nataniel P. Borges, Andreas Zeller, Romain Rouvoy |
Proc. Priv. Enhancing Technol. | 4 |
| 2018 | On adopting linters to deal with performance concerns in Android appsabstractWith millions of applications (apps) distributed through mobile markets, engaging and retaining end-users challenge Android developers to deliver a nearly perfect user experience. As mobile apps run in resource-limited devices, performance is a critical criterion for the quality of experience. Therefore, developers are expected to pay much attention to limit performance bad practices. On the one hand, many studies already identified such performance bad practices and showed that they can heavily impact app performance. Hence, many static analysers, a.k.a. linters, have been proposed to detect and fix these bad practices. On the other hand, other studies have shown that Android developers tend to deal with performance reactively and they rarely build on linters to detect and fix performance bad practices. In this paper, we therefore perform a qualitative study to investigate this gap between research and development community. In particular, we performed interviews with 14 experienced Android developers to identify the perceived benefits and constraints of using linters to identify performance bad practices in Android apps. Our observations can have a direct impact on developers and the research community. Specifically, we describe why and how developers leverage static source code analysers to improve the performance of their apps. On top of that, we bring to light important challenges faced by developers when it comes to adopting static analysis for performance purposes. Sarra Habchi, Xavier Blanc 0001, Romain Rouvoy |
ASE | 3 |
| 2018 | FP-STALKER: Tracking Browser Fingerprint EvolutionsabstractBrowser fingerprinting has emerged as a technique to track users without their consent. Unlike cookies, fingerprinting is a stateless technique that does not store any information on devices, but instead exploits unique combinations of attributes handed over freely by browsers. The uniqueness of fingerprints allows them to be used for identification. However, browser fingerprints change over time and the effectiveness of tracking users over longer durations has not been properly addressed. In this paper, we show that browser fingerprints tend to change frequently-from every few hours to days-due to, for example, software updates or configuration changes. Yet, despite these frequent changes, we show that browser fingerprints can still be linked, thus enabling long-term tracking. FP-STALKER is an approach to link browser fingerprint evolutions. It compares fingerprints to determine if they originate from the same browser. We created two variants of FP-STALKER, a rule-based variant that is faster, and a hybrid variant that exploits machine learning to boost accuracy. To evaluate FP-STALKER, we conduct an empirical study using 98,598 fingerprints we collected from 1, 905 distinct browser instances. We compare our algorithm with the state of the art and show that, on average, we can track browsers for 54.48 days, and 26 % of browsers can be tracked for more than 100 days. Antoine Vastel, Pierre Laperdrix, Walter Rudametkin, Romain Rouvoy |
IEEE Symposium on Security and Privacy | 4 |
| 2018 | Fp-Scanner: The Privacy Implications of Browser Fingerprint Inconsistencies
Antoine Vastel, Pierre Laperdrix, Walter Rudametkin, Romain Rouvoy |
USENIX Security Symposium | 4 |
| 2018 | The next 700 CPU power models
Maxime Colmant, Romain Rouvoy, Mascha Kurpicz, Anita Sobe, Pascal Felber, Lionel Seinturier |
J. Syst. Softw. | 2 |
| 2017 | WattsKit: Software-Defined Power Monitoring of Distributed SystemsabstractThe design and the deployment of energy-efficient distributed systems is a challenging task, which requires software engineers to consider all the layers of a system, from hardware to software. In particular, monitoring and analyzing the power consumption of a distributed system spanning several-potentially heterogeneous-nodes becomes particularly tedious when aiming at a finer granularity than observing the power consumption of hosting nodes. While the state-of-the-art in software-defined power meters fails to deliver adaptive solutions to offer such service-level perspective and to cope with the diversity of hardware CPU architectures, this paper proposes to automatically learn the power models of the nodes supporting a distributed system, and then to use these inferred power models to better understand how the power consumption of the system's processes is distributed across nodes at runtime. Our solution, named WattsKit, offers a modular toolkit to build software-defined power meters "à la carte", thus dealing with the diversity of user and hardware requirements. Beyond the demonstrated capability of covering a wide diversity of CPU architectures with high accuracy, we illustrate the benefits of adopting software-defined power meters to analyze the power consumption of complex layered and distributed systems. In particular, we illustrate the capability of our approach to monitor the power consumption of a system composed of Docker Swarm, Weave, Elasticsearch, and Apache Zookeeper. Thanks to WattsKit, developers and administrators are now able to identify potential power leaks in their software infrastructure. Maxime Colmant, Pascal Felber, Romain Rouvoy, Lionel Seinturier |
CCGrid | 3 |
| 2017 | GENPACK: A Generational Scheduler for Cloud Data CentersabstractCloud data centers largely rely on virtualization to provision resources and host services across their infrastructure. The scheduling problem has been widely studied and is well understood when the resource requirements and the expected lifetime of services are known beforehand. In contrast, when workloads are not known in advance, effective scheduling of services, and more generally system containers, becomes much more complex. In this paper, we propose GENPACK, a framework for system containers scheduling in cloud data centers that leverages principles from generational garbage collection (GC). It combines runtime monitoring of system containers to learn their requirements and properties, and a scheduler that manages different generations of servers. The population of these generations may vary over time depending on the global load, hence they are subject to being shut down when idle to save energy. We implemented GENPACK and tested it in a dedicated data center, showing that it can be up to 23% more energy-efficient that SWARM's built-in scheduling policies on a real-world trace. Aurelien Havet, Valerio Schiavoni, Pascal Felber, Maxime Colmant, Romain Rouvoy, Christof Fetzer |
IC2E | 5 |
| 2017 | Introducing SECURESTREAMS: Scalable Middleware for Reactive and Secure Data Stream ProcessingabstractWe introduce SECURESTREAMS, a middleware framework for secure stream processing. Its design builds on Intel's Secure Guard Extensions (SGX) to guarantee the privacy and the integrity of the data being processed. Our initial experimental results of SECURESTREAMS are promising: the framework is easy to use, and delivers high throughput, enabling developers to implement complex processing pipelines in a few lines of scripting code. Aurelien Havet, Valerio Schiavoni, Pascal Felber, Romain Rouvoy |
IC2E | 4 |
| 2017 | CloudGC: Recycling Idle Virtual Machines in the CloudabstractCloud computing conveys the image of a pool of unlimited virtual resources that can be quickly and easily provisioned to accommodate the user requirements. However, this flexibility may require to adjust physical resources at the infrastructure level to keep the pace of user requests. While elasticity can be considered as the de facto solution to support this issue, this elasticity can still be broken by budget requirements or physical limitations of a private cloud. In this paper, we therefore explore an alternative, yet complementary, solution to the problem of resource provisioning by adopting the principles of garbage collection in the context of cloud computing. In particular, our approach consists in detecting idle virtual machines to recycle their resources when the cloud infrastructure reaches its limits. We implement this approach, named CloudGC, as a new middleware service integrated within OpenStack and we demonstrate its capacity to stop the waste of cloud resources. CloudGC periodically recycles idle VM instances and automatically recovers them whenever needed. Thanks to CloudGC, cloud infrastructures can even switch between operational configurations depending on periods of activities. Bo Zhang 0013, Yahya Al-Dhuraibi, Romain Rouvoy, Fawaz Paraiso, Lionel Seinturier |
IC2E | 3 |
| 2017 | ANDROFLEET: testing WiFi peer-to-peer mobile apps in the largeabstractWiFi P2P allows mobile apps to connect to each other via WiFi without an intermediate access point. This communication mode is widely used by mobile apps to support interactions with one or more devices simultaneously. However, testing such P2P apps remains a challenge for app developers as i) existing testing frameworks lack support for WiFi P2P, and ii) WiFi P2P testing fails to scale when considering a deployment on more than two devices. In this paper, we therefore propose an acceptance testing framework, named Androfleet, to automate testing of WiFi P2P mobile apps at scale. Beyond the capability of testing point-to-point interactions under various conditions, An-drofleet supports the deployment and the emulation of a fleet of mobile devices as part of an alpha testing phase in order to assess the robustness of a WiFi P2P app once deployed in the field. To validate Androfleet, we demonstrate the detection of failing black-box acceptance tests for WiFi P2P apps and we capture the conditions under which such a mobile app can correctly work in the field. The demo video of Androfleet is made available from https://youtu.be/gJ5_Ed7XL04. Lakhdar Meftah, María Gómez 0001, Romain Rouvoy, Isabelle Chrisment |
ASE | 3 |
| 2017 | Analyzing Complex Data in Motion at Scale with Temporal GraphsabstractModern analytics solutions succeed to understand and predict phenomenons in a large diversity of software systems, from social networks to Internet-of-Things platforms.This success challenges analytics algorithms to deal with more and more complex data, which can be structured as graphs and evolve over time.However, the underlying data storage systems that support large-scale data analytics, such as time-series or graph databases, fail to accommodate both dimensions, which limits the integration of more advanced analysis taking into account the history of complex graphs, for example.This paper therefore introduces a formal and practical definition of temporal graphs.Temporal graphs provide a compact representation of time-evolving graphs that can be used to analyze complex data in motion.In particular, we demonstrate with our open-source implementation, named GREYCAT, that the performance of temporal graphs allows analytics solutions to deal with rapidly evolving large-scale graphs. Thomas Hartmann 0001, François Fouquet, Matthieu Jimenez, Romain Rouvoy, Yves Le Traon |
SEKE | 4 |
| 2017 | Investigating the energy impact of Android smellsabstractAndroid code smells are bad implementation practices within Android applications (or apps) that may lead to poor software quality. These code smells are known to degrade the performance of apps and to have an impact on energy consumption. However, few studies have assessed the positive impact on energy consumption when correcting code smells. In this paper, we therefore propose a tooled and reproducible approach, called HOT-PEPPER, to automatically correct code smells and evaluate their impact on energy consumption. Currently, HOT-PEPPER is able to automatically correct three types of Android-specific code smells: Internal Getter/Setter, Member Ignoring Method, and HashMap Usage. HOT-PEPPER derives four versions of the apps by correcting each detected smell independently, and all of them at once. HOT-PEPPER is able to report on the energy consumption of each app version with a single user scenario test. Our empirical study on five open-source Android apps shows that correcting the three aforementioned Android code smells effectively and significantly reduces the energy consumption of apps. In particular, we observed a global reduction in energy consumption by 4,83% in one app when the three code smells are corrected. We also take advantage of the flexibility of HOT-PEPPER to investigate the impact of three picture smells (bad picture format, compression, and bitmap format) in sample apps. We observed that the usage of optimised JPG pictures with the Android default bitmap format is the most energy efficient combination in Android apps. We believe that developers can benefit from our approach and results to guide their refactoring, and thus improve the energy consumption of their mobile apps. Antonin Carette, Mehdi Adel Ait Younes, Geoffrey Hecht, Naouel Moha, Romain Rouvoy |
SANER | 5 |
| 2016 | Self-Balancing Job Parallelism and Throughput in HadoopabstractIn Hadoop cluster, the performance and the resource consumption of MapReduce jobs do not only depend on the characteristics of these applications and workloads, but also on the appropriate setting of Hadoop configuration parameters. However, when the job workloads are not known a priori or they evolve over time, a static configuration may quickly lead to a waste of computing resources and consequently to a performance degradation. In this paper, we therefore propose an on-line approach that dynamically reconfigures Hadoop at runtime. Concretely, we focus on balancing the job parallelism and throughput by adjusting Hadoop capacity scheduler memory configuration. Our evaluation shows that the approach outperforms vanilla Hadoop deployments by up to 40 % and the best statically profiled configurations by up to 13 %. These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves. Bo Zhang 0013, Filip Krikava, Romain Rouvoy, Lionel Seinturier |
DAIS | 3 |
| 2016 | Mining test repositories for automatic detection of UI performance regressions in Android appsabstractThe reputation of a mobile app vendor is crucial to survive amongst the ever increasing competition. However this reputation largely depends on the quality of the apps, both functional and non-functional. One major non-functional requirement of mobile apps is to guarantee smooth UI interactions, since choppy scrolling or navigation caused by performance problems on a mobile device's limited hardware resources, is highly annoying for end-users. The main research challenge of automatically identifying UI performance problems on mobile devices is that the performance of an app highly varies depending on its context---i.e., the hardware and software configurations on which it runs. María Gómez 0001, Romain Rouvoy, Bram Adams, Lionel Seinturier |
MSR | 2 |
| 2015 | Process-level power estimation in VM-based systemsabstractPower estimation of software processes provides critical indicators to drive scheduling or power capping heuristics. State-of-the-art solutions can perform coarse-grained power estimation in virtualized environments, typically treating virtual machines (VMs) as a black box. Yet, VM-based systems are nowadays commonly used to host multiple applications for cost savings and better use of energy by sharing common resources and assets. Maxime Colmant, Mascha Kurpicz, Pascal Felber, Loïc Huertas, Romain Rouvoy, Anita Sobe |
EuroSys | 5 |
| 2015 | When App Stores Listen to the Crowd to Fight Bugs in the WildabstractApp stores are digital distribution platforms that put available apps that run on mobile devices. Current stores are software repositories that deliver apps upon user requests. However, when an app has a bug, the store continues delivering defective apps until the developer uploads a fixed version, thus impacting on the reputation of both store and app developer. In this paper, we envision a new generation of app stores that: (a) reduce human intervention to maintain mobile apps; and (b) enhance store services with smart and autonomous functionalities to automatically increase the quality of the delivered apps. We sketch a prototype of our envisioned app store and we discuss the functionalities that current stores an enhance by incorporating automatic software repair techniques. María Gómez 0001, Matias Martinez, Martin Monperrus, Romain Rouvoy |
ICSE (2) | 4 |
| 2015 | Tracking the Software Quality of Android Applications Along Their Evolution (T)abstractMobile apps are becoming complex software systems that must be developed quickly and evolve continuously to fit new user requirements and execution contexts. However, addressing these requirements may result in poor design choices, also known as antipatterns, which may incidentally degrade software quality and performance. Thus, the automatic detection and tracking of antipatterns in this apps are important activities in order to ease both maintenance and evolution. Moreover, they guide developers to refactor their applications and thus, to improve their quality. While antipatterns are well-known in object-oriented applications, their study in mobile applications is still in its infancy. In this paper, we analyze the evolution of mobile apps quality on 3, 568 versions of 106 popular Android applications downloaded from the Google Play Store. For this purpose, we use a tooled approach, called PAPRIKA, to identify 3 object-oriented and 4 Android-specific antipatterns from binaries of mobile apps, and to analyze their quality along evolutions. Geoffrey Hecht, Omar Benomar, Romain Rouvoy, Naouel Moha, Laurence Duchien |
ASE | 3 |
| 2015 | Infrastructure as runtime models: Towards Model-Driven resource managementabstractThe importance of continuous delivery and the emergence of tools allowing to treat infrastructure configurations programmatically have revolutionized the way computing resources and software systems are managed. However, these tools keep lacking an explicit model representation of underlying resources making it difficult to introspect, verify or reconfigure the system in response to external events. In this paper, we outline a novel approach that treats system infrastructure as explicit runtime models. A key benefit of using such [email protected] representation is that it provides a uniform semantic foundation for resources monitoring and reconfiguration. Adopting models at runtime allows one to integrate different aspects of system management, such as resource monitoring and subsequent verification into an unified view which would otherwise have to be done manually and require to use different tools. It also simplifies the development of various self-adaptation strategies without requiring the engineers and researchers to cope with low-level system complexities. Filip Krikava, Romain Rouvoy, Lionel Seinturier |
MoDELS | 2 |
| 2015 | Monitoring energy hotspots in software - Energy profiling of software code
Adel Noureddine, Romain Rouvoy, Lionel Seinturier |
Autom. Softw. Eng. | 2 |
| 2013 | Dynamic Deployment of Sensing Experiments in the Wild Using Smartphones
Nicolas Haderer, Romain Rouvoy, Lionel Seinturier |
DAIS | 2 |
| 2013 | The DigiHome Service-Oriented PlatformabstractSUMMARY Nowadays, the computational devices are everywhere. In malls, offices, streets, cars, and even homes, we can find devices providing and consuming functionality to improve the user satisfaction. These devices include sensors that provide information about the environment state (e.g., temperature, occupancy, light levels), service providers (e.g., Internet TVs, GPS), smartphones (that contain user preferences), and actuators that act on the environment (e.g., closing the blinds, activating the alarm, changing the temperature). Although these devices exhibit communication capabilities, their integration into a larger monitoring system remains a challenging task, partly because of the strong heterogeneity of technologies and protocols. Therefore, in this article, we focus on home environments and propose a middleware solution, called DigiHome, that applies the Service Component Architecture (SCA) component model to integrate data and events generated by heterogeneous devices in this kind of environments. DigiHome exploits the SCA extensibility to incorporate the REpresentational State Transfer (REST) architectural style and, in this way, leverages on the integration of multiscale systems‐of‐systems (from wireless sensor networks to the Internet). Additionally, the platform applies Complex Event Processing technology that detects application‐specific situations. We claim that the modularization of concerns fostered by DigiHome and materialized in a service‐oriented architecture, makes it easier to incorporate new services and devices in smart home environments. The benefits of the DigiHome platform are demonstrated on smart home scenarios covering home automation, emergency detection, and energy saving situations. Copyright © 2011 John Wiley & Sons, Ltd. Daniel Romero 0002, Gabriel Hermosillo, Amirhosein Taherkordi, Russel Nzekwa, Romain Rouvoy, Frank Eliassen |
Softw. Pract. Exp. | 5 |
| 2013 | A review of middleware approaches for energy management in distributed environmentsabstractSUMMARY Energy management solutions and approaches for computer systems are becoming broadly available as energy concerns are becoming mainstream. Many approaches have been proposed to manage the energy consumption of the hardware, operating system, or software layers. The widespread usage of ubiquitous devices and the high coverage of networks (Wi‐Fi and 3G) have led to a new generation of communicating and mobile devices that uses complex middleware platform functionalities. Therefore, energy management has emerged as a topic of research interest in the middleware layer, and solutions specific to this layer are proposed along the more traditional ones existing at the other levels. In this article, we report on a review of state‐of‐the‐art approaches for energy management middleware platforms. This article defines also an architectural taxonomy and compares existing approaches on the basis of this taxonomy. In particular, we review middleware platforms and detail a number of approaches where energy management is handled. Finally, we review application scenarios where the energy management concepts at the middleware layer are applied in intelligent environments. Copyright © 2012 John Wiley & Sons, Ltd. Adel Noureddine, Romain Rouvoy, Lionel Seinturier |
Softw. Pract. Exp. | 2 |
| 2013 | Optimizing sensor network reprogramming via in situ reconfigurable componentsabstractWireless reprogramming of sensor nodes is a critical requirement in long-lived wireless sensor networks (WSNs) addressing several concerns, such as fixing bugs, upgrading the operating system and applications, and adapting applications behavior according to the physical environment. In such resource-poor platforms, the ability to efficiently delimit and reconfigure the necessary portion of sensor software—instead of updating the full binary image—is of vital importance. However, most existing approaches in this field have not been adopted widely to date due to the extensive use of WSN resources or lack of generality. In this article, we therefore consider WSN programming models and runtime reconfiguration models as two interrelated factors and we present an integrated approach for addressing efficient reprogramming in WSNs. The middleware solution we propose, Amirhosein Taherkordi, Frédéric Loiret, Romain Rouvoy, Frank Eliassen |
ACM Trans. Sens. Networks | 3 |
| 2012 | A Federated Multi-cloud PaaS InfrastructureabstractCloud platforms are increasingly being used for hosting a broad diversity of services from traditional e-commerce applications to interactive web-based Ides. How-ever, we observe that the proliferation of offers by cloud providers raises several challenges. Developers will not only have to deploy applications for a specific cloud, but will also have to consider migrating services from one cloud to another, and to manage distributed applications spanning multiple clouds. In this paper, we present our federated multi-cloud PaaS infrastructure for addressing these challenges. This infrastructure is based on three foundations: i) an open service model used to design and implement both our multi-cloud PaaSand the SaaS applications running on top of it, ii) a configurable architecture of the federated PaaS, and iii) some infrastructure services for managing both our multi-cloud PaaS and the SaaS applications. We then show how this multi-cloud PaaS can be deployed on top of thirteen existing IaaS/PaaS. We finally report on three distributed SaaS applications developed with and deployed on our federated multi-cloud PaaS infrastructure. Fawaz Paraiso, Nicolas Haderer, Philippe Merle, Romain Rouvoy, Lionel Seinturier |
IEEE CLOUD | 4 |
| 2012 | Connecting Your Mobile Shopping Cart to the Internet-of-Things
Nicolas Petitprez, Romain Rouvoy, Laurence Duchien |
DAIS | 2 |
| 2012 | A Middleware Platform to Federate Complex Event ProcessingabstractDistributed systems like crisis management are subject to the dissemination of a huge volume of heterogeneous events, ranging from low level network data to high level crisis management intelligence, depending on the role of the rescue teams involved. In such systems, Complex Event Processing (CEP) has emerged as a solution to detect and react (in real-time) to complex events, which are correlations of more primitive events. Although various CEP engines implement the support for dealing with the business heterogeneity of events, the technological integration of these events remains uncovered. Therefore, in this paper we introduce DiCEPE (Distributed Complex Event Processing Engine), a platform which focuses on the integration of CEP engines in distributed systems. DiCEPE provides a native support for various communication protocols in order to federate CEP engines and ease the deployment of complex systems-of-systems. We illustrate our proposal using a nuclear crisis management scenario and show how DiCEPE leverages the coordination and the federation of different CEP engines. Fawaz Paraiso, Gabriel Hermosillo, Romain Rouvoy, Philippe Merle, Lionel Seinturier |
EDOC | 3 |
| 2012 | Runtime monitoring of software energy hotspotsabstractGreenIT has emerged as a discipline concerned with the optimization of software solutions with regards to their energy consumption. In this domain, most of the state-of-the-art solutions concentrate on coarse-grained approaches to monitor the energy consumption of a device or a process. However, none of the existing solutions addresses in-process energy monitoring to provide in-depth analysis of a process energy consumption. In this paper, we therefore report on a fine-grained runtime energy monitoring framework we developed to help developers to diagnose energy hotspots with a better accuracy than the state-of-the-art. Adel Noureddine, Aurelien Bourdon, Romain Rouvoy, Lionel Seinturier |
ASE | 3 |
| 2012 | A component-based middleware platform for reconfigurable service-oriented architecturesabstractSUMMARY ThetextitService Component Architecture (SCA) is a technology‐independent standard for developing distributed Service‐oriented Architectures (SOA). The SCA standard promotes the use of components and architecture descriptors, and mostly covers the lifecycle steps of implementation and deployment. Unfortunately, SCA does not address the governance of SCA applications and provides no support for the maintenance of deployed components. This article covers this issue and introduces the F RA SCA TI platform, a run‐time support for SCA with dynamic reconfiguration capabilities and run‐time management features. This article presents the internal component‐based architecture of the F RA SCA TI platform, and highlights its key features. The component‐based design of the F RA SCA TI platform introduces many degrees of flexibility and configurability in the platform itself and it can host the SOA applications. This article reports on micro‐benchmarks highlighting that run‐time manageability in the F RA SCA TI platform does not decrease its performance when compared with the de facto reference SCA implementation: Apache T USCANY . Finally, a smart home scenario illustrates the extension capabilities and the various reconfigurations of the F RA SCA TI platform. Copyright © 2011 John Wiley & Sons, Ltd. Lionel Seinturier, Philippe Merle, Romain Rouvoy, Daniel Romero 0002, Valerio Schiavoni, Jean-Bernard Stefani |
Softw. Pract. Exp. | 3 |
| 2011 | Self-Healing Distributed Scheduling PlatformabstractDistributed systems require effective mechanisms to manage the reliable provisioning of computational resources from different and distributed providers. Moreover, the dynamic environment that affects the behaviour of such systems and the complexity of these dynamics demand autonomous capabilities to ensure the behaviour of distributed scheduling platforms and to achieve business and user objectives. In this paper we propose a self-adaptive distributed scheduling platform composed of multiple agents implemented as intelligent feedback control loops to support policy-based scheduling and expose self-healing capabilities. Our platform leverages distributed scheduling processes by (i) allowing each provider to maintain its own internal scheduling process, and (ii) implementing self-healing capabilities based on agent module recovery. Simulated tests are performed to determine the optimal number of agents to be used in the negotiation phase without affecting the scheduling cost function. Test results on a real-life platform are presented to evaluate recovery times and optimize platform parameters. Marc Frîncu, Norha M. Villegas, Dana Petcu, Hausi A. Müller, Romain Rouvoy |
CCGRID | 5 |
| 2011 | A Generic Component-Based Approach for Programming, Composing and Tuning Sensor SoftwareabstractWireless sensor networks (WSNs) are being extensively deployed today in various monitoring and control applications by enabling rapid deployments at low cost and with high flexibility. However, high-level software development is still one of the major challenges to wide-spread WSN adoption. The success of high-level programming approaches in WSNs is heavily dependent on factors such as ease of programming, code well-structuring, degree of code reusability, required software development effort and the ability to tune the sensor software for a particular application. Component-based programming has been recognized as an effective approach to satisfy such requirements. However, most of the componentization efforts in WSNs were ineffective due to various reasons, such as high resource demand or limited scope of use. In this article, we present Remora, a novel component-based approach to overcome the hurdles of WSN software implementation and configuration. Remora offers a well-structured programming paradigm that fits very well with resource limitations of embedded systems, including WSNs. Furthermore, the special attention to event handling in Remora makes our proposal more practical for embedded applications, which are inherently event-driven. More importantly, the mutualism between Remora and underlying system software promises a new direction towards separation of concerns in WSNs. This feature also offers a practical way to develop sensor middleware services which should be generic and developed close to the operating system. Additionally, it allows the customization of sensor software—deploying only application-required system-level services on nodes, instead of installing a fixed large system software image for any application. Our evaluation results show that the deployed Remora applications have an acceptable memory overhead and a negligible CPU cost compared with the state-of-the-art development models. Amirhosein Taherkordi, Frédéric Loiret, Romain Rouvoy, Frank Eliassen |
Comput. J. | 3 |
| 2010 | RESTful Integration of Heterogeneous Devices in Pervasive Environments
Daniel Romero 0002, Gabriel Hermosillo, Amirhosein Taherkordi, Russel Nzekwa, Romain Rouvoy, Frank Eliassen |
DAIS | 5 |
| 2010 | Service Discovery in Ubiquitous Feedback Control Loops
Daniel Romero 0002, Romain Rouvoy, Lionel Seinturier, Pierre Carton |
DAIS | 2 |
| 2010 | Programming Sensor Networks Using Remora Component Model
Amirhosein Taherkordi, Frédéric Loiret, Azadeh Abdolrazaghi, Romain Rouvoy, Quan Le Trung, Frank Eliassen |
DCOSS | 4 |
| 2010 | Reconfigurable run-time support for distributed service component architecturesabstractSCA (Service Component Architecture) is an OASIS standard for describing service-oriented middleware architectures. In particular, SCA promotes a disciplined way for designing distributed architectures based on a component model and an Architecture Description Language (ADL). However, SCA does not cover the deployment and the run-time management of SCA applications. In this paper, we therefore describe the FraSCAti platform, which provides run-time support, deployment capabilities, and run-time management for SCA. Compared to state-of-the-art platforms, FraSCAti brings a dynamic reflective support to SCA and enables both introspecting and reconfiguring service-oriented architectures at run-time. To achieve this capability, the components are completed by a dedicated container, which is automatically generated by the platform. Furthermore, FraSCAti is a highly configurable platform that can be easily customized by finely selecting the features and functionalities which need to be included. In this way, the platform can be adapted to different application needs and middleware environments. Rémi Mélisson, Philippe Merle, Daniel Romero 0002, Romain Rouvoy, Lionel Seinturier |
ASE | 4 |
| 2009 | WiSeKit: A Distributed Middleware to Support Application-Level Adaptation in Sensor Networks
Amirhosein Taherkordi, Quan Le Trung, Romain Rouvoy, Frank Eliassen |
DAIS | 3 |
| 2008 | Brokering Planning Metadata in a P2P Environment
Johannes Oudenstad, Romain Rouvoy, Frank Eliassen, Eli Gjørven |
DAIS | 2 |
| 2007 | Scalable Processing of Context Information with COSMOS
Denis Conan, Romain Rouvoy, Lionel Seinturier |
DAIS | 2 |
| 2006 | Towards Context-Aware Transaction Services
Romain Rouvoy, Patricia Serrano-Alvarado, Philippe Merle |
DAIS | 1 |
| 2003 | Abstraction of Transaction Demarcation in Component-Oriented Platforms
Romain Rouvoy, Philippe Merle |
Middleware | 1 |