AFChecker: Effective model checking for context-aware adaptive applications

  • Authors:
  • Yepang Liu;Chang Xu;S. C. Cheung

  • Affiliations:
  • Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Kowloon, Hong Kong, China;State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, Jiangsu, China and Department of Computer Science and Technology, Nanjing University, Nanjing, Jiangsu, China;Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Kowloon, Hong Kong, China

  • Venue:
  • Journal of Systems and Software
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Context-aware adaptive applications continually sense and adapt to their changing environments. A large body of such applications relies on user-configured adaptation rules to customize their behavior. We call them rule-based context-aware applications (or RBAs for short). Due to the complexity required for adequately modeling environmental dynamics, adaptation faults are common in these RBAs. One promising approach to detecting such faults is to build a state transition model for an RBA, and exhaustively explore the model's state space. However, it can suffer from numerous false positives. For example, 78.6% of 784 reported faults for one popular RBA - PhoneAdapter, turn out to be false in a real deployment. In this paper, we address this false positive problem by inferring a domain model and an environment model for an RBA. The two models capture the hidden features inside user-configured adaptation rules as well as the RBA's running environment. We formulate these features as deterministic constraints and probabilistic constraints to prune false positives and effectively prioritize remaining faults. Our experiments on two real RBAs report that this approach successfully removes 46.5% of false positives and ranks 86.2% of true positives to the top of the fault list.