Eduard Enoiu

Dr. Eduard Enoiu

Mälardalen University

Research Focus & Metrics

Academic Career Length

13Years (2014-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
21 November 2014 in International Journal on Software Tools for Technology Transfer
Verified
Journal Article
Closed access
PDF file
Eduard EnoiuEduard Enoiu
Eduard Enoiu
AČAdnan Čaušević
Adnan Čaušević
TOThomas J. Ostrand
Thomas J. Ostrand
EWElaine J. Weyuker
Elaine J. Weyuker
DSDaniel Sundmark
Daniel Sundmark
PPPaul Pettersson
Paul Pettersson

18 January 2022 in Requirements Engineering
Verified
Journal Article
Open access
PDF file
MAMuhammad Abbas
Muhammad Abbas
Alessio FerrariAlessio Ferrari
Alessio Ferrari
ASAnas Shatnawi
Anas Shatnawi
Eduard EnoiuEduard Enoiu
Eduard Enoiu
MSMehrdad Saadatmand
Mehrdad Saadatmand
DSDaniel Sundmark
Daniel Sundmark
Recommender systems for requirements are typically built on the assumption that similar requirements can be used as proxies to retrieve similar software. When a stakeholder proposes a new requirement, natural language processing (NLP)-based similarity metrics can be exploited to retrieve existing requirements, and in turn, identify previously developed code. Several NLP approaches for similarity computation between requirements are available. However, there is little empirical evidence on their effectiveness for code retrieval. This study compares different NLP approaches, from lexical ones to semantic, deep-learning techniques, and correlates the similarity among requirements with the similarity of their associated software. The evaluation is conducted on real-world requirements from two industrial projects from a railway company. Specifically, the most similar pairs of requirements across two industrial projects are automatically identified using six language models. Then, the trace links between requirements and software are used to identify the software pairs associated with each requirements pair. The software similarity between pairs is then automatically computed with JPLag. Finally, the correlation between requirements similarity and software similarity is evaluated to see which language model shows the highest correlation and is thus more appropriate for code retrieval. In addition, we perform a focus group with members of the company to collect qualitative data. Results show a moderately positive correlation between requirements similarity and software similarity, with the pre-trained deep learning-based BERT language model with preprocessing outperforming the other models. Practitioners confirm that requirements similarity is generally regarded as a proxy for software similarity. However, they also highlight that additional aspect comes into play when deciding software reuse, e.g., domain/project knowledge, information coming from test cases, and trace links. Our work is among the first ones to explore the relationship between requirements and software similarity from a quantitative and qualitative standpoint. This can be useful not only in recommender systems but also in other requirements engineering tasks in which similarity computation is relevant, such as tracing and change impact analysis.

25 February 2020 in Soft Computing
Verified
Journal Article
Open access
PDF file
Bestoun S. AhmedBestoun S. Ahmed
Bestoun S. Ahmed
Eduard EnoiuEduard Enoiu
Eduard Enoiu
WAWasif Afzal
Wasif Afzal
KZKamal Z. Zamli
Kamal Z. Zamli
Hyper-heuristic is a new methodology for the adaptive hybridization of meta-heuristic algorithms to derive a general algorithm for solving optimization problems. This work focuses on the selection type of hyper-heuristic, called the exponential Monte Carlo with counter (EMCQ). Current implementations rely on the memory-less selection that can be counterproductive as the selected search operator may not (historically) be the best performing operator for the current search instance. Addressing this issue, we propose to integrate the memory into EMCQ for combinatorial t-wise test suite generation using reinforcement learning based on the Q-learning mechanism, called Q-EMCQ. The limited application of combinatorial test generation on industrial programs can impact the use of such techniques as Q-EMCQ. Thus, there is a need to evaluate this kind of approach against relevant industrial software, with a purpose to show the degree of interaction required to cover the code as well as finding faults. We applied Q-EMCQ on 37 real-world industrial programs written in Function Block Diagram (FBD) language, which is used for developing a train control management system at Bombardier Transportation Sweden AB. The results show that Q-EMCQ is an efficient technique for test case generation. Addition- ally, unlike the t-wise test suite generation, which deals with the minimization problem, we have also subjected Q-EMCQ to a maximization problem involving the general module clustering to demonstrate the effectiveness of our approach. The results show the Q-EMCQ is also capable of outperforming the original EMCQ as well as several recent meta/hyper-heuristic including modified choice function, Tabu high-level hyper-heuristic, teaching learning-based optimization, sine cosine algorithm, and symbiotic optimization search in clustering quality within comparable execution time.

4 April 2023
Verified
Book Chapter
Closed access
PDF file
SBSarmad Bashir
Sarmad Bashir
MAMuhammad Abbas
Muhammad Abbas
MSMehrdad Saadatmand
Mehrdad Saadatmand
Eduard EnoiuEduard Enoiu
Eduard Enoiu
MBMarkus Bohlin
Markus Bohlin
PLPernilla Lindberg
Pernilla Lindberg

19 October 2020
Verified
Conference Paper
Open access
MAMuhammad Abbas
Muhammad Abbas
RJRobbert Jongeling
Robbert Jongeling
CLClaes Lindskog
Claes Lindskog
Eduard EnoiuEduard Enoiu
Eduard Enoiu
MSMehrdad Saadatmand
Mehrdad Saadatmand
DSDaniel Sundmark
Daniel Sundmark
The software system controlling a train is typically deployed on various hardware architectures and must process various signals across those deployments. The increase of such customization scenarios and the needed adherence of the software to various safety standards in different application domains has led to the adoption of product line engineering within the railway domain. This paper explores the current state-of-practice of software product line development within a team developing industrial embedded software for a train propulsion control system. Evidence is collected using a focus group session with several engineers and through inspection of archival data. We report several benefits and challenges experienced during product line adoption and deployment. Furthermore, we identify and discuss improvement opportunities, focusing mainly on product line evolution and test automation.

30 March 2022 in International Journal on Software Tools for Technology Transfer
Verified
Journal Article
Open access
PDF file
RGRong Gu
Rong Gu
PJPeter G. Jensen
Peter G. Jensen
DPDanny B. Poulsen
Danny B. Poulsen
CSCristina Seceleanu
Cristina Seceleanu
Eduard EnoiuEduard Enoiu
Eduard Enoiu
KLKristina Lundqvist
Kristina Lundqvist
Path planning and task scheduling are two challenging problems in the design of multiple autonomous agents. Both problems can be solved by the use of exhaustive search techniques such as model checking and algorithmic game theory. However, model checking suffers from the infamous state-space explosion problem that makes it inefficient at solving the problems when the number of agents is large, which is often the case in realistic scenarios. In this paper, we propose a new version of our novel approach called MCRL that integrates model checking and reinforcement learning to alleviate this scalability limitation. We apply this new technique to synthesize path planning and task scheduling strategies for multiple autonomous agents. Our method is capable of handling a larger number of agents if compared to what is feasibly handled by the model-checking technique alone. Additionally, MCRL also guarantees the correctness of the synthesis results via post-verification. The method is implemented in UPPAAL STRATEGO and leverages our tool MALTA for model generation, such that one can use the method with less effort of model construction and higher efficiency of learning than those of the original MCRL. We demonstrate the feasibility of our approach on an industrial case study: an autonomous quarry, and discuss the strengths and weaknesses of the methods.