VLDB 2026 Research / reviewers in the wild / expert
Déaglán Connolly Bree
dblp:276/3404
· DBLP profile ↗
5ranked-venue papers
5as first author
5since 2021 · last 2025
0000-0001-9038-2134ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 5 first-author · 5 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | How Software Design Affects Energy Performance: A Systematic Literature ReviewabstractABSTRACT Interest in the energy consumption of software has grown with rising energy costs and greater environmental awareness. Many approaches to research in this area have been proposed, from the examination of hardware and compiler optimizations to platform specific software modifications. However, the impact of general software design on energy efficiency remains unclear. The goal of this research is to summarize the findings of studies that empirically examine the impact of design patterns, code smells, and refactorings (which we collectively describe as design elements) on energy consumption. Our secondary goal is to provide an overview of the impact of these aspects of software design on energy performance and discuss the current state of the art. We present a systematic literature review (SLR) of papers that examine the impact of the aforementioned design elements on energy consumption. We perform a search through four major databases, a manual search through publications of eight conferences and five journals from 2010 through 2023, in addition to snowballing. We extract relevant data from the literature and present an overview of each experiment's setup, the data reported, and results for each design element studied. Beginning with a set of 8684 papers, we select 24 that include studies of these design elements. Overall, they provide data on 22 design patterns, 17 code smells, and 31 refactorings. Many studies are preliminary in nature, and contradictory findings are frequent. We present three main findings: (i) a wide array of design patterns, code smells, and refactorings have been examined from an energy performance perspective; (ii) many of these studies are preliminary in nature and indicate the need for further research; (iii) there has been little growth recently in publications empirically examining these aspects of software design. Déaglán Connolly Bree, Mel Ó Cinnéide |
J. Softw. Evol. Process. | 1 |
| 2023 | Energy efficiency of the Visitor Pattern: contrasting Java and C++ implementationsabstractAbstract Design patterns are applied frequently during software evolution in order to make the software more flexible and amenable to extension. One little-studied aspect of design patterns is their propensity to increase run-time energy consumption due to the indirection and additional structure they introduce. In this paper we study the impact of the Visitor pattern on energy efficiency. The Visitor pattern separates an algorithm from the objects it acts upon and improves maintainability by placing each algorithm within a single visitor class. This is at the cost of increased indirection due to the double dispatch required when the algorithm is invoked. We experimentally investigate the energy impact of varying the implementation of this pattern, and of removing the pattern entirely from software written in Java and C++. In our results we observe energy consumption reductions greater than 7% in a Java-based textbook example when the pattern is implemented using reflective dispatch, and reductions of over 10% when experimenting with an open source Java project, JavaParser. The complete removal of the pattern yields more complex results, with little impact in the textbook example but reductions of over 7% in the JavaParser study. To explore the generalisability of our findings, we subsequently apply the same transformations to the C++ based CppParser. Total pattern removal here sees energy consumption reductions of over 66% while the reflective dispatch approach increases energy consumption by up to 2012%. Our results highlight the energy savings that can be achieved when the Visitor pattern is removed both in Java and C++ implementations, and also show that some language specific features can allow for further energy savings when the implementation of the pattern is varied. Déaglán Connolly Bree, Mel Ó Cinnéide |
Empir. Softw. Eng. | 1 |
| 2022 | The Energy Cost of the Visitor PatternabstractDesign patterns are applied frequently during software evolution in order to make the software more flexible and amenable to extension. One little-studied aspect of design patterns is their propensity to increase run time energy consumption due to the indirection and additional structure they introduce. In this paper we study the impact of the Visitor pattern on energy efficiency. The Visitor pattern separates an algorithm from the objects it acts upon and improves maintainability by placing each algorithm within a single visitor class, at the cost of increased indirection due to the double dispatch required when the algorithm is invoked. We experimentally investigate the energy impact of varying the implementation of this pattern, and of removing the pattern entirely from the software. In our results we observe energy consumption reductions of greater than 7% in the textbook example when the pattern is implemented using reflective casting, and reductions of over 10% when experimenting with an open source project, JavaParser. The complete removal of the pattern yields more complex results, with little impact in the textbook example but reductions of over 7% in the JavaParser study. Our results highlight the energy savings that may be achieved when the Visitor pattern is removed, and show that energy savings may also be achieved by varying the implementation of the pattern. Déaglán Connolly Bree, Mel Ó Cinnéide |
ICSME | 1 |
| 2022 | Removing Decorator to Improve Energy EfficiencyabstractWith growing concerns regarding climate change and rising energy costs, there is an increased focus on improving the energy efficiency of software. One relevant avenue of research is the transformation of software designs in order to increase efficiency and reduce energy consumption. Design Patterns are of interest here as the indirection they introduce is likely to have a detrimental effect on energy consumption. In this paper we report on our investigations into the impact on energy consumption of the Decorator pattern, which is a structural design pattern used to enable additional behaviour to be attached to an individual component dynamically. Application of this pattern improves the maintainability of software at the cost of increased indirection and redundancy, which may reduce energy efficiency. In this paper we explore features of the Decorator pattern that impact on its systematic removal, with a future goal of removing this pattern using automated refactoring. We subsequently examine experimentally the Decorator pattern's impact on energy consumption in Java and find its implementation results in an increased number of instantiated objects and method invocations at run-time. The removal of the pattern can result in up to a 96% reduction in energy consumption in a best-case scenario with a textbook example, and up to a 5% reduction in energy consumption in an open-source project with a case study examining JUnit, a popular unit testing framework for Java. These results demonstrate the energy savings achievable with the removal of Decorator pattern instances and open the way for similar investigations of other design patterns. Déaglán Connolly Bree, Mel Ó Cinnéide |
SANER | 1 |
| 2021 | Automated Refactoring for Energy-Aware SoftwareabstractExecuting software consumes energy, usually in the form of electricity. The amount of electricity expended on running software is not trivial. With the growth of mobile computing and much of our electricity being generated from non-renewable sources, a greater focus is being placed on energy consumption habits and how consumption can be reduced. This work aims to explore the ways in which higher-level features of software, e.g. design patterns and code smells, can be refactored to reduce the energy consumed by software during execution. This project will clarify the impact these features have on energy efficiency and direct future research into the development of an automated refactoring tool. Déaglán Connolly Bree, Mel Ó Cinnéide |
ICSME | 1 |