VLDB 2026 Research / reviewers in the wild / expert
Amal Elkharraz
dblp:66/326
· DBLP profile ↗
5ranked-venue papers
3as first author
1since 2021 · last 2023
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Artificial intelligence and machine learning · 2 · 2 first-authorSoftware engineering, systems software and programming languages · 2 · 1 since 2021Theory of computation · 1 · 1 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Software maintenance and evolution · 77% Requirements engineering and software design · 23% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution
refactoring |
0.7 | 1 | 2023 | Discovering Reusable Functional Features in Legacy Object-Oriented Systems · IEEE Trans. Software Eng. 2023 |
Software maintenance and evolution
software reuse |
0.7 | 1 | 2023 | Discovering Reusable Functional Features in Legacy Object-Oriented Systems · IEEE Trans. Software Eng. 2023 |
Requirements engineering and software design › object-oriented analysis and design
object-oriented design |
0.2 | 1 | 2023 | Discovering Reusable Functional Features in Legacy Object-Oriented Systems · IEEE Trans. Software Eng. 2023 |
Requirements engineering and software design
software architecture |
0.2 | 1 | 2023 | Discovering Reusable Functional Features in Legacy Object-Oriented Systems · IEEE Trans. Software Eng. 2023 |
Methods — techniques the papers use, named apart from their topics
static analysis · 0.7footprint identification · 0.7
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Discovering Reusable Functional Features in Legacy Object-Oriented SystemsabstractTypical object-oriented (OO) systems implement several functional features that are interwoven into class hierarchies. In the absence of aspect-oriented techniques to develop and compose these features, developers resort to object-oriented design and programming idioms to separate features as well as possible. Given a legacy OO system, discovering existing functional features helps understand the design of the system and extract these features to ease their maintenance and reuse. We want to discover candidate functional features in OO systems. We first define functional features and then discuss the footprints that such features are likely to leave in an OO system. We identify three such footprints: (1) multiple inheritance, (2) delegation, and (3) ad-hoc. We develop a set of algorithms for identifying such footprints in OO code and implemented them for the Java language using Eclipse JDT. In this article, we present the algorithms, and the results of applying the corresponding tools on five open-source systems: FreeMind, JavaWebMail, JHotDraw, JReversePro, and Lucene. Our experimental results show that: (1) the different algorithms can identify interesting and useful candidate functional features in OO systems, (2) they can identify opportunities for refactoring, and (3) they are complementary and could help developers. Hafedh Mili, Imen Benzarti, Amal Elkharraz, Ghizlane El-Boussaidi, Yann-Gaël Guéhéneuc, Petko Valtchev |
IEEE Trans. Software Eng. | 3 |
| 2010 | Concept Analysis as a Framework for Mining Functional Features from Legacy Code
Amal Elkharraz, Petko Valtchev, Hafedh Mili |
ICFCA | 1 |
| 2009 | Using Concepts Analysis for Mining Functional Features from Legacy CodeabstractLegacy OO applications typically implement a number of functional features. In the absence of aspect-oriented development techniques to separately develop and maintain these features, they end up embodied in the same class hierarchies. That embodiement depends on the design technique used to implement them. We identified three such design techniques: a) multiple inheritance– or simulations thereof, b) delegation, and c) what we referred to as adhoc implementation. We are interested in developing techniques for identifying and isolating code fragments that implement distinct functional features. Here, we explore the use of concept analysis to detect ad-hoc implementations of features. We present the principles underlying our overall approach, a concrete method for identifying functional features in legacy code, and the results of preliminary experimentation. Amal Elkharraz, Petko Valtchev, Hafedh Mili |
ICTAI | 1 |
| 2008 | Mining Functional Aspects from Legacy CodeabstractAspect-oriented software development builds upon object-oriented (OO) development by offering additional abstraction boundaries that help us separate different types of requirements into so-called aspects. Given a legacy OO application, it pays to identify existing aspects to help understand the structure of the application and potentially to extract those aspects into separate software modules that can be maintained and reused individually. We are interested in the extraction and repackaging of functional aspects. We first characterize what we mean by functional aspect, and then explore the properties that such aspects are likely to exhibit in a legacy application that integrate such aspects. Next, we present algorithms for extracting such aspects, and the preliminary results we obtained. We conclude by discussing directions for future research. Amal Elkharraz, Hafedh Mili, Petko Valtchev |
ICTAI (2) | 1 |
| 2006 | Concerned About Separation
Hafedh Mili, Houari Sahraoui, Hakim Lounis, Hamid Mcheick, Amal Elkharraz |
FASE | 5 |