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
Link To Document