Artificial Intelligence
Information Processing Letters
Acme: architectural description of component-based systems
Foundations of component-based systems
Visualization of test information to assist fault localization
Proceedings of the 24th International Conference on Software Engineering
Software Rejuvenation: Analysis, Module and Applications
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Scalable statistical bug isolation
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Architecture-based self-adaptation in the presence of multiple objectives
Proceedings of the 2006 international workshop on Self-adaptation and self-managing systems
Statistical Debugging: A Hypothesis Testing-Based Approach
IEEE Transactions on Software Engineering
Microreboot — A technique for cheap recovery
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
An observation-based model for fault localization
WODA '08 Proceedings of the 2008 international workshop on dynamic analysis: held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2008)
A rigorous architectural approach to adaptive software engineering
Journal of Computer Science and Technology
Evaluating Models for Model-Based Debugging
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
A new bayesian approach to multiple intermittent fault diagnosis
IJCAI'09 Proceedings of the 21st international jont conference on Artifical intelligence
Diagnosing multiple persistent and intermittent faults
IJCAI'09 Proceedings of the 21st international jont conference on Artifical intelligence
Spectrum-Based Multiple Fault Localization
ASE '09 Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering
Diagnosing multiple intermittent failures using maximum likelihood estimation
Artificial Intelligence
The reliability estimation, prediction and measuring of component-based software
Journal of Systems and Software
Architecture-based run-time fault diagnosis
ECSA'11 Proceedings of the 5th European conference on Software architecture
Architecture-based self-protecting software systems
Proceedings of the 9th international ACM Sigsoft conference on Quality of software architectures
Hi-index | 0.00 |
Self-diagnosis is a fundamental capability of self-adaptive systems. In order to recover from faults, systems need to know which part is responsible for the incorrect behavior. In previous work we showed how to apply a design-time diagnosis technique at run time to identify faults at the architectural level of a system. Our contributions address three major shortcomings of our previous work: 1) we present an expressive, hierarchical language to describe system behavior that can be used to diagnose when a system is behaving different to expectation; the hierarchical language facilitates mapping low level system events to architecture level events; 2) we provide an automatic way to determine how much data to collect before an accurate diagnosis can be produced; and 3) we develop a technique that allows the detection of correlated faults between components. Our results are validated experimentally by injecting several failures in a system and accurately diagnosing them using our algorithm.