- Software Reliability and Analysis Research
- Software Engineering Research
- Software System Performance and Reliability
- Software Testing and Debugging Techniques
- Distributed systems and fault tolerance
- Advanced Software Engineering Methodologies
- Cloud Computing and Resource Management
- Advanced Data Storage Technologies
- IoT and Edge/Fog Computing
- Adversarial Robustness in Machine Learning
- Radiation Effects in Electronics
- Anomaly Detection Techniques and Applications
- Reliability and Maintenance Optimization
- Age of Information Optimization
- Safety Systems Engineering in Autonomy
- Model-Driven Software Engineering Techniques
- Machine Learning and Data Classification
- Software Engineering Techniques and Practices
- Advanced Neural Network Applications
- Autonomous Vehicle Technology and Safety
- AI-based Problem Solving and Planning
- Smart Grid Security and Resilience
- Cloud Data Security Solutions
- Reinforcement Learning in Robotics
- Engineering and Test Systems
University of Naples Federico II
2016-2025
Ingegneria dei Trasporti (Italy)
2014-2024
Hiroshima University of Economics
2021
The University of Queensland
2021
Federico II University Hospital
2013-2019
University of Campania "Luigi Vanvitelli"
2017
Consorzio Interuniversitario Nazionale per l'Informatica
2017
University of Illinois Urbana-Champaign
2010
Huawei Technologies (United States)
2010
University of Waterloo
2010
Software aging is a phenomenon plaguing many long-running complex software systems, which exhibit performance degradation or an increasing failure rate. Several strategies based on the proactive rejuvenation of state have been proposed to counteract and prevent failures. This survey article provides overview studies Aging Rejuvenation (SAR) that appeared in major journals conference proceedings, with respect statistical approaches used forecast phenomena plan rejuvenation, kind systems...
The spread of the Internet Things (IoT) involving an uncountable number applications, combined with rise Machine Learning (ML), has enabled rapid growth pervasive and intelligent systems in a variety domains, including healthcare, environment, railway transportation Industry 4.0. While this opens up favorable scenarios, it also raises new challenges. huge amount data collected processed by ML applications requires efficient scalable solutions that contrast constrained capabilities IoT...
Software systems running continuously for a long time tend to show degrading performance and an increasing failure occurrence rate, due error conditions that accrue over eventually lead the system failure. This phenomenon is usually referred as Aging. Several long-running mission safety critical applications have been reported experience catastrophic aging-related failures. aging sources (i.e., bugs) may be hidden in several layers of complex software system, ranging from Operating System...
With software systems becoming increasingly large and complex, many difficulties in coping with bugs arise for developers. Despite good development practices, thorough testing, proper maintenance policies, a non-negligible number of remain the released software. Understanding type residual is fundamental adopting countermeasures current future releases. Depending on fault triggering conditions that lead to failure, developers can introduce fault-tolerance mechanisms plan verification...
In Continuous Integration (CI), regression testing is constrained by the time between commits. This demands for careful selection and/or prioritization of test cases within suites too large to be run entirely. To this aim, some Machine Learning (ML) techniques have been proposed, as an alternative deterministic approaches. Two broad strategies ML-based are learning-to-rank and what we call ranking-to-learn (i.e., reinforcement learning). Various ML algorithms can applied in each strategy....
With software systems increasingly being employed in critical contexts, assuring high reliability levels for large, complex can incur huge verification costs. Existing standards usually assign predefined risk to components the design phase, provide some guidelines verification. It is a rough-grained assignment that does not consider costs and sufficient modeling basis let engineers quantitatively optimize resources usage. Software allocation models partially address such issues, but they...
After 16 years, a significant body of knowledge has been established in the area Software Aging and Rejuvenation (SAR). In this paper, we survey papers about SAR that appeared IEEE conferences journals, identify where research mostly focused, highlight some aspects deserving more attention, with aim to provoke constructive discussion among researches arrived it should be headed next future.
Mobile devices are significantly complex, feature-rich, and heavily customized, thus they prone to software reliability performance issues. This paper considers the problem of aging in Android mobile OS, which causes device gradually degrade responsiveness, eventually fail. We present a methodology identify factors (such as workloads configurations) resource utilization metrics that correlated with aging. Moreover, we performed an empirical analysis recent devices, finding actually affects...
In numerous contexts, ranging from systems safety assessment to finance and medical diagnosis, a relevant causal inference task is predict unseen rare events – the so-called black swans . These are plausible, high-impact, but unexpected for whose prediction probabilistic-based falls short. For instance, analyst needs hypothesize potential co-causes that could lead an accident, so as manage most failures besides more obvious ones. Given effect, we use abduction support generation of plausible...
This work presents an empirical analysis aiming at investigating what kind of relationship exists between software aging and several static features the software. While past studies on focused predicting effects by monitoring analytically modeling resource consumption runtime, this study intends to explore if software, as derived its source code, potential relationships with aging. We adopt a set common metrics concerning program structure, such size cyclomatic complexity, along some...
The phenomenon of software aging is increasingly recognized as a relevant problem long-running systems. Numerous experiments have been carried out in the last decade to empirically analyze aging. Such experiments, besides highlighting relevance phenomenon, shown that tightly related applied workload. However, due differences among experimented applications and experimental conditions, results past studies are not comparable each other. This prevent from drawing general conclusions (e.g.,...
We investigate the dependence of software failure reproducibility on environment in which is executed. The existence such ascertained literature, but so far it not fully characterized. In this paper we pinpoint some environmental components that can affect a and show influence through an experimental campaign conducted My SQL Server system. set failures interest drawn from SQL's reports database experiment designed for each these failures. experiments expose disk usage level concurrency...
Mandelbugs are faults that triggered by complex conditions, such as interaction with hardware and other software, timing or ordering of events. These considerably difficult to detect traditional testing techniques, since it can be challenging control their triggering conditions in a environment. Therefore, is necessary adopt specific verification and/or fault-tolerance strategies for dealing them cost-effective way. In this paper, we investigate how predict the location software systems,...
Testing software to assess or improve reliability presents several practical challenges. Conventional operational testing is a fundamental strategy that simulates the real usage of system in order expose failures with highest occurrence probability. However, practitioners find it unsuitable for assessing/achieving very high levels; also, they do not see adoption "real" profile estimate as sensible idea, being source non-quantifiable uncertainty. Oppositely, debug aims many possible, but...
Abstract To enter the production stage, in DevOps practices candidate software releases have to pass quality gates, where they are assessed meet established target values for key indicators of interest. We believe reliability should be an important such indicator, as it greatly contributes end‐user satisfaction. propose DevOpRET , approach testing part acceptance stage DevOps. relies on operational‐profile–based testing, a common assessment technique. leverages usage and failure data...
Microservice Architectures (MSA) are nowadays largely adopted by companies in several domains to provide on-demand services. The reliability of microservices is fundamental avoid failures compromising the business functionalities. MSA automated testing possible thanks well-defined service interfaces specified open formats like OpenAPI/Swagger. To support functional and non-functional testing, we define a framework that: (i) generates test cases with valid invalid inputs, executes monitors...
Multi-access Edge Computing (MEC) is an emerging computing model that provides the necessary on-demand resources and services to edge of network, ensuring powerful computing, storage capacity, mobility, location, context awareness support Internet Things (IoT) applications. Nonetheless, its complex hierarchical introduces new architectural interdependencies, which can influence resilience IoT applications against cyber attacks. Although application has been investigated in cloud existing...
SUMMARY In this work, a software ageing analysis of Java‐based systems is conducted. The JVM the core layer in systems, and its dependability greatly affects overall system quality. Starting from an experimental campaign on real‐world test bed, work isolates contribution to trend, identifies, through statistical methods, which workload parameters are most relevant dynamics. Results revealed presence several dynamics JVM, including (i) throughput loss trend mainly dependent execution unit,...
This paper addresses the challenge of reliability-driven testing, i.e., testing software systems with specific objective increasing its operational reliability. We first examined most relevant approach oriented toward this goal, namely testing. The main issues that in past hindered wide-scale adoption and practical application are discussed, followed by analysis performance under different conditions configurations. Then, a new conceived to overcome limits delivering high reliability is...