Demo Data from VLDB 2026 / reviewers in the wild / expert
Naeem Esfahani
dblp:29/7423
· DBLP profile ↗
16ranked-venue papers
10as first author
0since 2021 · last 2017
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 14 · 9 first-authorSystems, architecture and hardware · 2 · 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
9 papers |
Requirements engineering and software design · 62% Runtime systems and virtual machines · 12% Program analysis · 12% |
Topics — the 8 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Requirements engineering and software design › software architecture
self-adaptive systems |
0.6 | 5 | 2013 | A Learning-Based Framework for Engineering Feature-Oriented Self-Adaptive Software Systems · IEEE Trans. Software Eng. 2013 Taming uncertainty in self-adaptive software · SIGSOFT FSE 2011 A framework for managing uncertainty in self-adaptive software systems · ASE 2011 |
Requirements engineering and software design
software architecture |
0.6 | 5 | 2013 | GuideArch: guiding the exploration of architectural solution space under uncertainty · ICSE 2013 Dealing with uncertainty in early software architecture · SIGSOFT FSE 2012 Taming uncertainty in self-adaptive software · SIGSOFT FSE 2011 |
Requirements engineering and software design › software architecture › architectural design
architectural decision making |
0.3 | 2 | 2013 | GuideArch: guiding the exploration of architectural solution space under uncertainty · ICSE 2013 Dealing with uncertainty in early software architecture · SIGSOFT FSE 2012 |
Program analysis › static analysis
dependency analysis |
0.3 | 1 | 2017 | Ensuring the Consistency of Adaptation through Inter- and Intra-Component Dependency Analysis · ACM Trans. Softw. Eng. Methodol. 2017 |
Runtime systems and virtual machines
dynamic adaptation |
0.3 | 1 | 2017 | Ensuring the Consistency of Adaptation through Inter- and Intra-Component Dependency Analysis · ACM Trans. Softw. Eng. Methodol. 2017 |
Software maintenance and evolution › dynamic software updating
runtime adaptation |
0.2 | 2 | 2013 | Mining the execution history of a software system to infer the best time for its adaptation · SIGSOFT FSE 2012 A Learning-Based Framework for Engineering Feature-Oriented Self-Adaptive Software Systems · IEEE Trans. Software Eng. 2013 |
Empirical software engineering
mining software repositories |
0.0 | 1 | 2012 | Mining the execution history of a software system to infer the best time for its adaptation · SIGSOFT FSE 2012 |
Services computing and microservices
service-oriented architecture |
0.0 | 1 | 2010 | Social computing networks: a new paradigm for engineering self-adaptive pervasive software systems · ICSE (2) 2010 |
Methods — techniques the papers use, named apart from their topics
online learning · 0.3quantitative exploration · 0.2fuzzy math · 0.2feature models · 0.2uncertainty modeling · 0.1stochastic modeling · 0.1component dependency inference · 0.1possibility theory · 0.1mathematical modeling of uncertainty · 0.1service-oriented computing · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Ensuring the Consistency of Adaptation through Inter- and Intra-Component Dependency AnalysisabstractDynamic adaptation should not leave a software system in an inconsistent state, as it could lead to failure. Prior research has used inter-component dependency models of a system to determine a safe interval for the adaptation of its components, where the most important tradeoff is between disruption in the operations of the system and reachability of safe intervals. This article presents Savasana, which automatically analyzes a software system’s code to extract both inter- and intra-component dependencies. In this way, Savasana is able to obtain more fine-grained models compared to previous approaches. Savasana then uses the detailed models to find safe adaptation intervals that cannot be determined using techniques from prior research. This allows Savasana to achieve a better tradeoff between disruption and reachability. The article demonstrates how Savasana infers safe adaptation intervals for components of a software system under various use cases and conditions. Naeem Esfahani, Sam Malek |
ACM Trans. Softw. Eng. Methodol. | 2 |
| 2016 | Inferring Software Component Interaction Dependencies for Adaptation SupportabstractA self-managing software system should be able to monitor and analyze its runtime behavior and make adaptation decisions accordingly to meet certain desirable objectives. Traditional software adaptation techniques and recent “models@runtime” approaches usually require an a priori model for a system’s dynamic behavior. Oftentimes the model is difficult to define and labor-intensive to maintain, and tends to get out of date due to adaptation and architecture decay. We propose an alternative approach that does not require defining the system’s behavior model beforehand, but instead involves mining software component interactions from system execution traces to build a probabilistic usage model, which is in turn used to analyze, plan, and execute adaptations. In this article, we demonstrate how such an approach can be realized and effectively used to address a variety of adaptation concerns. In particular, we describe the details of one application of this approach for safely applying dynamic changes to a running software system without creating inconsistencies. We also provide an overview of two other applications of the approach, identifying potentially malicious (abnormal) behavior for self-protection, and improving deployment of software components in a distributed setting for performance self-optimization. Finally, we report on our experiments with engineering self-management features in an emergency deployment system using the proposed mining approach. Naeem Esfahani, Eric Yuan, Kyle R. Canavera, Sam Malek |
ACM Trans. Auton. Adapt. Syst. | 1 |
| 2014 | Mining the Categorized Software Repositories to Improve the Analysis of Security VulnerabilitiesabstractSecurity has become the Achilles’ heel of most modern software systems. Techniques ranging from the manual inspection to automated static and dynamic analyses are commonly employed to identify security vulnerabilities prior to the release of the software. However, these techniques are time consuming and cannot keep up with the complexity of ever-growing software repositories (e.g., Google Play and Apple App Store). In this paper, we aim to improve the status quo and increase the efficiency of static analysis by mining relevant information from vulnerabilities found in the categorized software repositories. The approach relies on the fact that many modern software systems are developed using rich application development frameworks (ADF) , allowing us to raise the level of abstraction for detecting vulnerabilities and thereby making it possible to classify the types of vulnerabilities that are encountered in a given category of application. We used open-source software repositories comprising more than 7 million lines of code to demonstrate how our approach can improve the efficiency of static analysis, and in turn, vulnerability detection. Naeem Esfahani, Sam Malek |
FASE | 2 |
| 2014 | A Systematic Survey of Self-Protecting Software SystemsabstractSelf-protecting software systems are a class of autonomic systems capable of detecting and mitigating security threats at runtime. They are growing in importance, as the stovepipe static methods of securing software systems have been shown to be inadequate for the challenges posed by modern software systems. Self-protection, like other self-* properties, allows the system to adapt to the changing environment through autonomic means without much human intervention, and can thereby be responsive, agile, and cost effective. While existing research has made significant progress towards autonomic and adaptive security, gaps and challenges remain. This article presents a significant extension of our preliminary study in this area. In particular, unlike our preliminary study, here we have followed a systematic literature review process, which has broadened the scope of our study and strengthened the validity of our conclusions. By proposing and applying a comprehensive taxonomy to classify and characterize the state-of-the-art research in this area, we have identified key patterns, trends and challenges in the existing approaches, which reveals a number of opportunities that will shape the focus of future research efforts. Eric Yuan, Naeem Esfahani, Sam Malek |
ACM Trans. Auton. Adapt. Syst. | 2 |
| 2013 | GuideArch: guiding the exploration of architectural solution space under uncertaintyabstractA system's early architectural decisions impact its properties (e.g., scalability, dependability) as well as stakeholder concerns (e.g., cost, time to delivery). Choices made early on are both difficult and costly to change, and thus it is paramount that the engineer gets them “right”. This leads to a paradox, as in early design, the engineer is often forced to make these decisions under uncertainty, i.e., not knowing the precise impact of those decisions on the various concerns. How could the engineer make the “right” choices in such circumstances? This is precisely the question we have tackled in this paper. We present GuideArch, a framework aimed at quantitative exploration of the architectural solution space under uncertainty. It provides techniques founded on fuzzy math that help the engineer with making informed decisions. Naeem Esfahani, Sam Malek, Kaveh Razavi |
ICSE | 1 |
| 2013 | A Learning-Based Framework for Engineering Feature-Oriented Self-Adaptive Software SystemsabstractSelf-adaptive software systems are capable of adjusting their behavior at runtime to achieve certain functional or quality-of-service goals. Often a representation that reflects the internal structure of the managed system is used to reason about its characteristics and make the appropriate adaptation decisions. However, runtime conditions can radically change the internal structure in ways that were not accounted for during their design. As a result, unanticipated changes at runtime that violate the assumptions made about the internal structure of the system could degrade the accuracy of the adaptation decisions. We present an approach for engineering self-adaptive software systems that brings about two innovations: 1) a feature-oriented approach for representing engineers' knowledge of adaptation choices that are deemed practical, and 2) an online learning-based approach for assessing and reasoning about adaptation decisions that does not require an explicit representation of the internal structure of the managed software system. Engineers' knowledge, represented in feature-models, adds structure to learning, which in turn makes online learning feasible. We present an empirical evaluation of the framework using a real-world self-adaptive software system. Results demonstrate the framework's ability to accurately learn the changing dynamics of the system while achieving efficient analysis and adaptation. Naeem Esfahani, Ahmed M. Elkhodary, Sam Malek |
IEEE Trans. Software Eng. | 1 |
| 2012 | Mining the execution history of a software system to infer the best time for its adaptationabstractAn important challenge in dynamic adaptation of a software system is to prevent inconsistencies (failures) and disruptions in its operations during and after change. Several prior techniques have solved this problem with various tradeoffs. All of them, however, assume the availability of detailed component dependency models. This paper presents a complementary technique that solves this problem in settings where such models are either not available, difficult to build, or outdated due to the evolution of the software. Our approach first mines the execution history of a software system to infer a stochastic component dependency model, representing the probabilistic sequence of interactions among the system's components. We then demonstrate how this model could be used at runtime to infer the "best time" for adaptation of the system's components. We have thoroughly evaluated this research on a multi-user real world software system and under varying conditions. Kyle R. Canavera, Naeem Esfahani, Sam Malek |
SIGSOFT FSE | 2 |
| 2012 | Dealing with uncertainty in early software architectureabstractChanging early architectural decisions of a system is both difficult and costly. It is very important for the architect to get them "right". However, in early design, the architect is often forced to make these decisions under uncertainty, i.e., not knowing the precise impact of those decisions on system's properties (e.g., scalability) as well as stakeholder concerns (e.g., cost). In this paper, we provide an overview of GuideArch, a framework aimed at systematic exploration of the architectural solution space under uncertainty to help with making early architectural decisions. Naeem Esfahani, Kaveh Razavi, Sam Malek |
SIGSOFT FSE | 1 |
| 2012 | Utilizing architectural styles to enhance the adaptation support of middleware platforms
Naeem Esfahani, Sam Malek |
Inf. Softw. Technol. | 1 |
| 2011 | A framework for managing uncertainty in self-adaptive software systemsabstractSelf-adaptation endows a software system with the ability to satisfy certain objectives by automatically modifying its behavior. While many promising approaches for the construction of self-adaptive software systems have been developed, the majority of them ignore the uncertainty underlying the adaptation decisions. This has been one of the key inhibitors to widespread adoption of self-adaption techniques in risk-averse real-world settings. In this research abstract I outline my ongoing effort in the development of a framework for managing uncertainty in self-adaptation. This framework employs state-of-the-art mathematical approaches to model and assess uncertainty in adaptation decisions. Preliminary results show that knowledge about uncertainty allows self-adaptive software systems to make better decisions. Naeem Esfahani |
ASE | 1 |
| 2011 | Taming uncertainty in self-adaptive softwareabstractSelf-adaptation endows a software system with the ability to satisfy certain objectives by automatically modifying its behavior. While many promising approaches for the construction of self-adaptive software systems have been developed, the majority of them ignore the uncertainty underlying the adaptation decisions. This has been one of the key obstacles to wide-spread adoption of self-adaption techniques in risk-averse real-world settings. In this paper, we describe an approach, called POssIbilistic SElf-aDaptation (POISED), for tackling the challenge posed by uncertainty in making adaptation decisions. POISED builds on possibility theory to assess both the positive and negative consequences of uncertainty. It makes adaptation decisions that result in the best range of potential behavior. We demonstrate POISED's application to the problem of improving a software system's quality of service via runtime reconfiguration of its customizable software components. We have extensively evaluated POISED using a prototype of a robotic software system. Naeem Esfahani, Ehsan Kouroshfar, Sam Malek |
SIGSOFT FSE | 1 |
| 2010 | On the Role of Architectural Styles in Improving the Adaptation Support of Middleware Platforms
Naeem Esfahani, Sam Malek |
ECSA | 1 |
| 2010 | Social computing networks: a new paradigm for engineering self-adaptive pervasive software systemsabstractSoftware systems are increasingly permeating a variety of domains including medical, industrial automation, and emergency response. The advances in portable and embedded computing devices and the recent advances in wireless network connectivity have paved the way for the proliferation of smart spaces in such domains. At the same time, the emergence of service-oriented technology (e.g., web services [10]) and interoperability standards (e.g., WSDL [11], UDDI [5]) has made it possible to develop pervasive software systems intended for execution in smart spaces that were not even conceivable a few years back. Naeem Esfahani, Sam Malek |
ICSE (2) | 1 |
| 2010 | Process Patterns for MDA-Based Software DevelopmentabstractInformation systems are expected to satisfy increasingly ambitious requirements, while reducing time-to-market has become a primary objective. This trend has necessitated the advent of development approaches that are better equipped and flexible enough to cope with modern challenges. Model-Driven Architecture (MDA) and Situational Method Engineering (SME) are approaches addressing this requirement: MDA provides promising means for automating the software process, and revitalizes the role of modeling in software development, SME focuses on project-specific methodology construction, mainly through assembling reusable method fragments (process patterns) retrieved from a method base. We provide a set of high-level process patterns for model-driven development which have been derived from a study of six prominent MDA-based methodologies, and which form the basis for a proposed generic MDA Software Process (MDASP). These process patterns can promote SME by providing classes of common process components which can be used for assembling, tailoring, and extending MDA-based methodologies. Mohsen Asadi, Naeem Esfahani, Raman Ramsin |
SERA | 2 |
| 2010 | FUSION: a framework for engineering self-tuning self-adaptive software systemsabstractSelf-adaptive software systems are capable of adjusting their behavior at run-time to achieve certain objectives. Such systems typically employ analytical models specified at design-time to assess their characteristics at run-time and make the appropriate adaptation decisions. However, prior to system's deployment, engineers often cannot foresee the changes in the environment, requirements, and system's operational profile. Therefore, any analytical model used in this setting relies on underlying assumptions that if not held at run-time make the analysis and hence the adaptation decisions inaccurate. We present and evaluate FeatUre-oriented Self-adaptatION (FUSION) framework, which aims to solve this problem by learning the impact of adaptation decisions on the system's goals. The framework (1) allows for automatic online fine-tuning of the adaptation logic to unanticipated conditions, (2) reduces the upfront effort required for building such systems, and (3) makes the run-time analysis of such systems very efficient. Ahmed M. Elkhodary, Naeem Esfahani, Sam Malek |
SIGSOFT FSE | 2 |
| 2009 | A Modeling Language for Activity-Oriented Composition of Service-Oriented Software Systems
Naeem Esfahani, Sam Malek, João Pedro Sousa, Hassan Gomaa, Daniel A. Menascé |
MoDELS | 1 |