ADAM: Identifying defects in context-aware adaptation

被引:31
作者
Xu, Chang [1 ,2 ]
Cheung, S. C. [3 ]
Ma, Xiaoxing [1 ,2 ]
Cao, Chun [1 ,2 ]
Lu, Jian [1 ,2 ]
机构
[1] Nanjing Univ, Dept Comp Sci & Technol, Nanjing, Jiangsu, Peoples R China
[2] Nanjing Univ, State Key Lab Novel Software Technol, Nanjing, Jiangsu, Peoples R China
[3] Hong Kong Univ Sci & Technol, Dept Comp Sci & Engn, Kowloon, Hong Kong, Peoples R China
基金
美国国家科学基金会;
关键词
Context-aware adaptation; Defect; Error detection; Failure; MOBILE; SYSTEM; LOGIC;
D O I
10.1016/j.jss.2012.04.078
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Context-aware applications, as a typical type of self-adaptive software systems, are receiving increasing attention. These applications continually adapt to environmental changes in an autonomic way. However, their adaptation may contain defects when the complexity of modeling all environmental changes is beyond a developer's ability. Such defects can cause failure to the adaptation and result in application crash or freezing. Relating these failures back to responsible defects is challenging. In this paper we propose a novel approach, called ADAM, to assist identifying defects in the context-aware adaptation. ADAM monitors runtime errors for an application, logs relevant error information, and relates them to responsible defects in this application. To make our ADAM approach feasible, we investigate the error types that are commonly exhibited by various failures reported in context-aware applications. ADAM detects these errors in order to identify responsible defects in context-aware applications. To detect these errors, ADAM formally models the adaptation semantics for context-aware applications, and integrates into them a set of assertion checkers with respect to these error types. We experimentally evaluated ADAM through three context-aware applications. The experiments reported promising results that ADAM can effectively detect errors, identify their responsible defects in applications, and give useful hints on how these defects can be fixed. (C) 2012 Elsevier Inc. All rights reserved.
引用
收藏
页码:2812 / 2828
页数:17
相关论文
共 38 条
[1]   Amit - the situation manager [J].
Adi, A ;
Etzion, O .
VLDB JOURNAL, 2004, 13 (02) :177-203
[2]  
Agrawal J., 2008, SIGMOD 08, P147
[3]  
Andersson J, 2009, LECT NOTES COMPUT SC, V5525, P27, DOI 10.1007/978-3-642-02161-9_2
[4]  
[Anonymous], 2008, P 28 IARCS C FDN SOF, DOI [DOI 10.4230/LIPICS.FSTTCS.2008.1740, 10.4230/LIPIcs.FSTTCS.2008.1740]
[5]  
Bu YY, 2006, INT CONF QUAL SOFTW, P193
[6]   CARISMA: Context-aware reflective mlddleware system for mobile applications [J].
Capra, L ;
Emmerich, W ;
Mascolo, C .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2003, 29 (10) :929-945
[7]  
Chang X., 2005, Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering (ESEC/FSE-13). ACM, New York, NY, P336, DOI DOI 10.1145/1095430.1081759
[8]  
Chang Xu, 2006, 28th International Conference on Software Engineering Proceedings, P292
[9]   Software Engineering for Self-Adaptive Systems: A Research Roadmap [J].
Cheng, Betty H. C. ;
de Lemos, Rogerio ;
Giese, Holger ;
Inverardi, Paola ;
Magee, Jeff ;
Andersson, Jesper ;
Becker, Basil ;
Bencomo, Nelly ;
Brun, Yuriy ;
Cukic, Bojan ;
Serugendo, Giovanna Di Marzo ;
Dustdar, Schahram ;
Finkelstein, Anthony ;
Gacek, Cristina ;
Geihs, Kurt ;
Grassi, Vincenzo ;
Karsai, Gabor ;
Kienle, Holger M. ;
Kramer, Jeff ;
Litoiu, Marin ;
Malek, Sam ;
Mirandola, Raffaela ;
Mueller, Hausi A. ;
Park, Sooyong ;
Shaw, Mary ;
Tichy, Matthias ;
Tivoli, Massimo ;
Weyns, Danny ;
Whittle, Jon .
SOFTWARE ENGINEERING FOR SELF-ADAPTIVE SYSTEMS, 2009, 5525 :1-+
[10]  
Chomicki J, 2003, IEEE T KNOWL DATA EN, V15, P244, DOI 10.1109/TKDE.2003.1161596