Context-Aware Adaptive Applications: Fault Patterns and Their Automated Identification

被引:62
|
作者
Sama, Michele [1 ]
Elbaum, Sebastian [2 ]
Raimondi, Franco [3 ]
Rosenblum, David S. [1 ]
Wang, Zhimin [2 ]
机构
[1] Univ London Univ Coll, Dept Comp Sci, London WC1E 6BT, England
[2] Univ Nebraska, Dept Comp Sci, Lincoln, NE 68588 USA
[3] Middlesex Univ, Sch Engn & Informat Sci, London NW4 4BT, England
基金
美国国家科学基金会; 英国工程与自然科学研究理事会;
关键词
Adaptation; context-awareness; fault detection; mobile computing; model-based analysis; model checking; ordered binary decision diagrams; symbolic verification; ubiquitous computing;
D O I
10.1109/TSE.2010.35
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Applications running on mobile devices are intensely context-aware and adaptive. Streams of context values continuously drive these applications, making them very powerful but, at the same time, susceptible to undesired configurations. Such configurations are not easily exposed by existing validation techniques, thereby leading to new analysis and testing challenges. In this paper, we address some of these challenges by defining and applying a new model of adaptive behavior called an Adaptation Finite-State Machine (A-FSM) to enable the detection of faults caused by both erroneous adaptation logic and asynchronous updating of context information, with the latter leading to inconsistencies between the external physical context and its internal representation within an application. We identify a number of adaptation fault patterns, each describing a class of faulty behaviors. Finally, we describe three classes of algorithms to detect such faults automatically via analysis of the A-FSM. We evaluate our approach and the trade-offs between the classes of algorithms on a set of synthetically generated Context-Aware Adaptive Applications (CAAAs) and on a simple but realistic application in which a cell phone's configuration profile changes automatically as a result of changes to the user's location, speed, and surrounding environment. Our evaluation describes the faults our algorithms are able to detect and compares the algorithms in terms of their performance and storage requirements.
引用
收藏
页码:644 / 661
页数:18
相关论文
共 50 条
  • [31] ContextErlang: A language for distributed context-aware self-adaptive applications
    Salvaneschi, Guido
    Ghezzi, Carlo
    Pradella, Matteo
    SCIENCE OF COMPUTER PROGRAMMING, 2015, 102 : 20 - 43
  • [32] Design patterns for context-aware services
    Jeongkyu Park
    Keung Hae Lee
    Multimedia Tools and Applications, 2015, 74 : 2337 - 2358
  • [33] Context-aware annotation patterns for teachers
    Azouaou, Faical
    Desmoulins, Cyrille
    INTELLIGENT TUTORING SYSTEMS, PROCEEDINGS, 2006, 4053 : 801 - 803
  • [34] Design patterns for context-aware adaptation
    Rossi, G
    Gordillo, S
    Lyardet, F
    2005 SYMPOSIUM ON APPLICATIONS AND THE INTERNET WORKSHOPS, PROCEEDINGS, 2005, : 170 - 173
  • [35] Design patterns for context-aware services
    Park, Jeongkyu
    Lee, Keung Hae
    MULTIMEDIA TOOLS AND APPLICATIONS, 2015, 74 (07) : 2337 - 2358
  • [36] Context-aware Media Player (CaMP): Developing context-aware applications with Separation of Concerns
    Paspallis, Nearchos
    Achilleos, Achilleas
    Kakousis, Konstantinos
    Papadopoulos, George A.
    2010 IEEE GLOBECOM WORKSHOPS, 2010, : 1684 - 1689
  • [37] A Framework for Mobile, Context-Aware Applications
    De, Suparna
    Moessner, Klaus
    2009 INTERNATIONAL CONFERENCE ON TELECOMMUNICATIONS (ICT), 2009, : 232 - 237
  • [38] Current trends in context-aware applications
    Loayza, Andrea
    Proano, Rodrigo
    Ordonez Camacho, Diego
    ENFOQUE UTE, 2013, 4 (02): : 95 - 110
  • [39] An architecture for interactive context-aware applications
    Rehman, Kasim
    Stajano, Frank
    Coulouris, George
    IEEE PERVASIVE COMPUTING, 2007, 6 (01) : 73 - 80
  • [40] Context-Aware Trace Alignment with Automated Planning
    Acitelli, Giacomo
    Angelini, Marco
    Bonomi, Silvia
    Maggi, Fabrizio M.
    Marrella, Andrea
    Palma, Alessandro
    2022 4TH INTERNATIONAL CONFERENCE ON PROCESS MINING (ICPM 2022), 2022, : 104 - 111