<?xml version="1.0" encoding="UTF-8"?><xml><records><record><source-app name="Biblio" version="6.x">Drupal-Biblio</source-app><ref-type>47</ref-type><contributors><authors><author><style face="normal" font="default" size="100%">Casanova, Paulo</style></author><author><style face="normal" font="default" size="100%">Garlan, David</style></author><author><style face="normal" font="default" size="100%">Schmerl, Bradley</style></author><author><style face="normal" font="default" size="100%">Rui Abreu</style></author></authors></contributors><titles><title><style face="normal" font="default" size="100%">Diagnosing architectural run-time failures</style></title><secondary-title><style face="normal" font="default" size="100%">SEAMS - Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems</style></secondary-title></titles><dates><year><style  face="normal" font="default" size="100%">2013</style></year><pub-dates><date><style  face="normal" font="default" size="100%">May</style></date></pub-dates></dates><urls><related-urls><url><style face="normal" font="default" size="100%">https://haslab.uminho.pt/sites/default/files/ruimaranhao/files/darf.pdf</style></url></related-urls></urls><publisher><style face="normal" font="default" size="100%">IEEE Press</style></publisher><pub-location><style face="normal" font="default" size="100%">San Francisco, CA, USA</style></pub-location><pages><style face="normal" font="default" size="100%">103–112</style></pages><language><style face="normal" font="default" size="100%">eng</style></language><abstract><style face="normal" font="default" size="100%">&lt;p&gt;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 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.&lt;/p&gt;
</style></abstract></record></records></xml>