Suppressing detection of inconsistency hazards with pattern learning - Xi, Wang; Xu, Chang; Yang, Wenhua; Ma, Xiaoxing; Yu, Ping; Lu, Jian (Information and software technology, 2016)
Context: Inconsistency detection and resolution is critical for context-aware applications to ensure their normal execution. Contexts, which refer to pieces of environmental information used by applications, are checked against consistency constraints for potential errors. However, not all detected inconsistencies are caused by real context problems. Instead, they might be triggered by improper checking timing. Such inconsistencies are ephemeral and usually harmless. Their detection and resolution is unnecessary, and may even be detrimental. We name them inconsistency hazards. Objective: Inconsistency hazards should be prevented from being detected or resolved, but it is not straightforward since their occurrences resemble real inconsistencies. In this article, we present SHAP, a pattern-learning based approach to suppressing the detection of such hazards automatically. Method: Our key insight is that detection of inconsistency hazards is subject to certain patterns of context changes. Although such patterns can be difficult to specify manually, they may be learned effectively with data mining techniques. With these patterns, we can reasonably schedule inconsistency detections. Results: The experimental results show that SHAP can effectively suppress the detection of most inconsistency hazards (over 90%) with negligible overhead. Conclusions: Comparing with other approaches, our approach can effectively suppress the detection of inconsistency hazards, and at the same time allow real inconsistencies to be detected and resolved timely.