VLDB 2026 Research / reviewers in the wild / expert
Emma Söderberg
dblp:42/9170
· DBLP profile ↗
18ranked-venue papers
6as first author
10since 2021 · last 2026
0000-0001-7966-4560ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 16 · 6 first-author · 8 since 2021Graphics, computer vision, multimedia, augmented reality and games · 2 · 2 since 2021Human-computer interaction and ubiquitous computing · 2 · 2 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Echoes of AI: Investigating the downstream effects of AI assistants on software maintainabilityabstractAbstract Context AI assistants, like GitHub Copilot and Cursor, are transforming software engineering. While several studies highlight productivity improvements, their impact on maintainability requires further investigation. Objective This study investigates whether co-development with AI assistants affects software maintainability, specifically how easily other developers can evolve the resulting source code. Method We conducted a two-phase, preregistered controlled experiment involving 151 participants, 95% of whom were professional developers. In Phase 1, participants added a new feature to a Java web application, with or without AI assistance. In Phase 2, a randomized controlled trial, new participants evolved these solutions without AI assistance. Results Phase 2 revealed no significant differences in subsequent evolution with respect to completion time or code quality. Bayesian analysis suggests that any speed or quality improvements from AI use were at most small and highly uncertain. Observational results from Phase 1 corroborate prior research: using an AI assistant yielded a 30.7% median reduction in completion time, and habitual AI users showed an estimated 55.9% speedup. Conclusions Overall, we did not detect systematic maintainability advantages or disadvantages when other developers evolved code co-developed with AI assistants. Within the scope of our tasks and measures, we observed no consistent warning signs of degraded code-level maintainability. Future work should examine risks such as code bloat from excessive code generation and cognitive debt as developers offload more mental effort to assistants. Markus Borg, Dave Hewett, Nadim Hagatulah, Noric Couderc, Emma Söderberg, Donald Graham, Uttam Kini, Dave Farley |
Empir. Softw. Eng. | 5 |
| 2026 | Code review as decision-making - building a cognitive model from the questions asked during code reviewabstractAbstract Code review is a well-established and valued practice in the software engineering community contributing to both code quality and interpersonal benefits. However, there are challenges in both tools and processes that give rise to misalignments and frustrations. Recent research seeks to address this by automating code review entirely, but we believe that this risks losing the majority of the interpersonal benefits such as knowledge transfer and shared ownership. We believe that by better understanding the cognitive processes involved in code review, it would be possible to improve tool support, with or without AI, and make code review both more efficient, more enjoyable, while increasing or maintaining all of its benefits. In this paper, we conduct an ethnographic think-aloud study involving 10 participants and 34 code reviews. We build a cognitive model of code review bottom up through thematic, statistical, temporal, and sequential analysis of the transcribed material. Through the data, the similarities between the cognitive process in code review and decision-making processes, especially recognition-primed decision-making, become apparent. The result is the Code Review as Decision-Making ( CRDM ) model that shows how the developers move through two phases during the code review; first an orientation phase to establish context and rationale and then an analytical phase to understand, assess, and plan the rest of the review. Throughout the process several decisions must be taken, on writing comments, finding more information, voting, running the code locally, verifying continuous integration results, etc. Analysis software and process-coded data publicly available at: https://doi.org/10.5281/zenodo.15758266 Lo Gullstrand Heander, Emma Söderberg, Christofer Rydenfält |
Empir. Softw. Eng. | 2 |
| 2025 | Exploring the Performance of ML Model Size for Classification in Relation to Energy Consumption
Andreas Bexell, Lo Gullstrand Heander, Emma Söderberg, Sigrid Eldh, Per Runeson |
PROFES | 3 |
| 2025 | AI Alignment for Ethical Compliance and Risk Mitigation in Industrial Applications
Rushali Gupta, Qunying Song, Matthias Wagner 0008, Emelie Engström, Emma Söderberg, Markus Borg, Per Runeson |
PROFES | 5 |
| 2023 | Classification-based Static Collection Selection for Java: Effectiveness and AdaptabilityabstractCarefully selecting the right collection datastructure can significantly improve the performance of a Java program. Unfortunately, the performance impact of a certain collection selection can be hard to estimate. To assist developers, there exist tools that recommend collections to use based on static and/or dynamic information about a program. The majority of existing collection selection tools for Java pick their selections dynamically, which means that they must trade off sophistication in their selection algorithm against its run time overhead. For static collection selection, the Brainy tool has demonstrated that complex, machine-dependent models can produce substantial performance improvements, albeit only for C++ so far. Noric Couderc, Christoph Reichenbach, Emma Söderberg |
EASE | 3 |
| 2023 | Applying Machine Learning to Gaze Data in Software Development: a Mapping StudyabstractEye tracking has been used as part of software engineering and computer science research for a long time, and during this time new techniques for machine learning (ML) have emerged. Some of those techniques are applicable to the analysis of eye-tracking data, and to some extent have been applied. However, there is no structured summary available on which ML techniques are used for analysis in different types of eye-tracking research studies. Peng Kuang, Emma Söderberg, Diederick Christian Niehorster, Martin Höst |
ETRA | 2 |
| 2023 | GANDER: a Platform for Exploration of Gaze-driven Assistance in Code ReviewabstractGaze-control and gaze-assistance in software development tools have so far been explored in the setting of code editing, but other developer activities like code review could also benefit from this kind of tool support. In this paper, we present GANDER, a platform for user studies on gaze-assisted code review. As a proof of concept, we extend the platform with an assistant that highlights name relationships in the code under review based on gaze behavior, and we perform a user study with 7 participants. While the participants experience the interaction as overwhelming and lacking explicit actions (seen in other similar user studies), the study demonstrates the platform’s capability for mobility, real-time gaze interaction, data logging, replay and analysis. William Saranpää, Felix Apell Skjutar, Lo Gullstrand Heander, Emma Söderberg, Diederick Christian Niehorster, Olivia Mattsson, Hedda Klintskog, Luke Church |
ETRA | 4 |
| 2022 | Understanding the Experience of Code Review: Misalignments, Attention, and Units of AnalysisabstractCode review is a common practice in software development and numerous studies have described different aspects of the process; its characteristics, the expectations on that process, issues around reviewer allocation, and more. However, one aspect that has not been studied to a large extent is the experience of the developers in the code review process. This is unfortunate given the significant amount of time that developers spend on this activity, where problems that degrade developers’ experience on a daily basis can create work environment issues. Emma Söderberg, Luke Church, Jürgen Börstler, Diederick Christian Niehorster, Christofer Rydenfält |
EASE | 1 |
| 2021 | Open Data-driven Usability Improvements of Static Code Analysis and its ChallengesabstractContext: Software development is moving towards a place where data about development is gathered in a systematic fashion in order to improve the practice, for example, in tuning of static code analysis. However, this kind of data gathering has so far primarily happened within organizations, which is unfortunate as it tends to favor larger organizations with more resources for maintenance of developer tools. Objective: Over the years, we have seen a lot of benefits from open source and recently there has been a lot of development in open data. We see this as an opportunity for cross-organisation community building and wonder to what extent the views on using and sharing open source software developer tools carry across to open data-driven tuning of software development tools. Method: An exploratory study with 11 participants divided into 3 focus groups discussing using and sharing of static code analyzers and data about these analyzers. Results: While using and sharing open-source code (analyzers in this case) is perceived in a positive light as part of the practice of modern software development, sharing data is met with skepticism and uncertainty. Developers are concerned about threats to the company brand, exposure of intellectual property, legal liabilities, and to what extent data is context-specific to a certain organisation. Conclusions: Sharing data in software development is different from sharing data about software development. We need to better understand how we can provide solutions for sharing of software development data in a fashion that reduces risk and enables openness. Emma Söderberg, Luke Church, Martin Höst |
EASE | 1 |
| 2021 | JavaDL: automatically incrementalizing Java bug pattern detectionabstractStatic checker frameworks support software developers by automatically discovering bugs that fit general-purpose bug patterns. These frameworks ship with hundreds of detectors for such patterns and allow developers to add custom detectors for their own projects. However, existing frameworks generally encode detectors in imperative specifications, with extensive details of not only what to detect but also how . These details complicate detector maintenance and evolution, and also interfere with the framework’s ability to change how detection is done, for instance, to make the detectors incremental. In this paper, we present JavaDL, a Datalog-based declarative specification language for bug pattern detection in Java code. JavaDL seamlessly supports both exhaustive and incremental evaluation from the same detector specification. This specification allows developers to describe local detector components via syntactic pattern matching , and nonlocal (e.g., interprocedural) reasoning via Datalog-style logical rules . We compare our approach against the well-established SpotBugs and Error Prone tools by re-implementing several of their detectors in JavaDL. We find that our implementations are substantially smaller and similarly effective at detecting bugs on the Defects4J benchmark suite, and run with competitive runtime performance. In our experiments, neither incremental nor exhaustive analysis can consistently outperform the other, which highlights the value of our ability to transparently switch execution modes. We argue that our approach showcases the potential of clear-box static checker frameworks that constrain the bug detector specification language to enable the framework to adapt and enhance the detectors. Alexandru Dura, Christoph Reichenbach, Emma Söderberg |
Proc. ACM Program. Lang. | 3 |
| 2020 | Principles and patterns of JastAdd-style reference attribute grammarsabstractReference attribute grammars (RAGs) have reached a level of maturity where they are supported by several tools, and have gained traction in both academic and industrial language tool development. However, despite a lot of accumulated knowledge of how to best develop RAGs in practice, there is limited support to guide practitioners. Niklas Fors, Emma Söderberg, Görel Hedin |
SLE | 2 |
| 2018 | Continuous model validation using reference attribute grammarsabstractJust like current software systems, models are characterised by increasing complexity and rate of change. Yet, these models only become useful if they can be continuously evaluated and validated. To achieve sufficiently low response times for large models, incremental analysis is required. Reference Attribute Grammars (RAGs) offer mechanisms to perform an incremental analysis efficiently using dynamic dependency tracking. However, not all features used in conceptual modelling are directly available in RAGs. In particular, support for non-containment model relations is only available through manual implementation. We present an approach to directly model uni- and bidirectional non-containment relations in RAGs and provide efficient means for navigating and editing them. This approach is evaluated using a scalable benchmark for incremental model editing and the JastAdd RAG system. Our work demonstrates the suitability of RAGs for validating complex and continuously changing models of current software systems. Johannes Mey, René Schöne, Görel Hedin, Emma Söderberg, Thomas Kühn 0001, Niklas Fors, Jesper Öqvist, Uwe Aßmann |
SLE | 4 |
| 2015 | Tricorder: Building a Program Analysis EcosystemabstractStatic analysis tools help developers find bugs, improve code readability, and ensure consistent style across a project. However, these tools can be difficult to smoothly integrate with each other and into the developer workflow, particularly when scaling to large codebases. We present Tricorder, a program analysis platform aimed at building a data-driven ecosystem around program analysis. We present a set of guiding principles for our program analysis tools and a scalable architecture for an analysis platform implementing these principles. We include an empirical, in-situ evaluation of the tool as it is used by developers across Google that shows the usefulness and impact of the platform. Caitlin Sadowski, Jeffrey van Gogh, Ciera Jaspan, Emma Söderberg, Collin Winter |
ICSE (1) | 4 |
| 2015 | Declarative rewriting through circular nonterminal attributes
Emma Söderberg, Görel Hedin |
Comput. Lang. Syst. Struct. | 1 |
| 2013 | Circular Higher-Order Reference Attribute Grammars
Emma Söderberg, Görel Hedin |
SLE | 1 |
| 2013 | Extensible intraprocedural flow analysis at the abstract syntax tree level
Emma Söderberg, Torbjörn Ekman 0001, Görel Hedin, Eva Magnusson |
Sci. Comput. Program. | 1 |
| 2012 | Natural and Flexible Error Recovery for Generated Modular Language EnvironmentsabstractIntegrated Development Environments (IDEs) increase programmer productivity, providing rapid, interactive feedback based on the syntax and semantics of a language. Unlike conventional parsing algorithms, scannerless generalized-LR parsing supports the full set of context-free grammars, which is closed under composition, and hence can parse languages composed from separate grammar modules. To apply this algorithm in an interactive environment, this article introduces a novel error recovery mechanism. Our approach is language independent, and relies on automatic derivation of recovery rules from grammars. By taking layout information into consideration it can efficiently suggest natural recovery suggestions. Maartje de Jonge, Lennart C. L. Kats, Eelco Visser, Emma Söderberg |
ACM Trans. Program. Lang. Syst. | 4 |
| 2010 | Automated Selective Caching for Reference Attribute Grammars
Emma Söderberg, Görel Hedin |
SLE | 1 |