• DocumentCode
    1443083
  • Title

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

  • Author

    Sama, Michele ; Elbaum, Sebastian ; Raimondi, Franco ; Rosenblum, David S. ; Wang, Zhimin

  • Author_Institution
    Dept. of Comput. Sci., Univ. Coll. London, London, UK
  • Volume
    36
  • Issue
    5
  • fYear
    2010
  • Firstpage
    644
  • Lastpage
    661
  • Abstract
    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.
  • Keywords
    finite state machines; formal logic; mobile computing; program verification; software fault tolerance; A-FSM analysis; adaptation finite-state machine; asynchronous information updating; cell phone; context-aware adaptive applications; fault detection; fault pattern adaptation; mobile devices; validation techniques; Algorithm design and analysis; Computer science; Context modeling; Data structures; Fault detection; Fault diagnosis; Global Positioning System; Handheld computers; Lead; Personal digital assistants; Adaptation; context-awareness; fault detection; mobile computing; model checking; model-based analysis; ordered binary decision diagrams; symbolic verification; ubiquitous computing.;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2010.35
  • Filename
    5432224