ACM Home Page
Please provide us with feedback. Feedback
Modular verification of dynamically adaptive systems
Full text PdfPdf (567 KB)
Source
Aspect-oriented software development archive
Proceedings of the 8th ACM international conference on Aspect-oriented software development table of contents
Charlottesville, Virginia, USA
SESSION: Testing and verification table of contents
Pages 161-172  
Year of Publication: 2009
ISBN:978-1-60558-442-3
Authors
Ji Zhang  Michigan State University, East Lansing, MI, USA
Heather J. Goldsby  Michigan State University, East Lansing, MI, USA
Betty H.C. Cheng  Michigan State University, East Lansing, MI, USA
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 19,   Downloads (12 Months): 142,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1509239.1509262
What is a DOI?

ABSTRACT

Cyber-physical systems increasingly rely on dynamically adaptive programs to respond to changes in their physical environment; examples include ecosystem monitoring and disaster relief systems. These systems are considered high-assurance since errors during execution could result in injury, loss of life, environmental impact, and/or financial loss. In order to facilitate the development and verification of dynamically adaptive systems, we separate functional concerns from adaptive concerns. Specifically, we model a dynamically adaptive program as a collection of (non-adaptive) steady-state programs and a set of adaptations that realize transitions among steady state programs in response to environmental changes. We use Linear Temporal Logic (LTL) to specify properties of the non-adaptive portions of the system, and we use A-LTL (an adapt-operator extension toLTL) to concisely specify properties that hold during the adaptation process. Model checking offers an attractive approach to automatically analyzing models for adherence to formal properties and thus providing assurance. However, currently, model checkers are unable to verify properties specified using A-LTL. Moreover, as the number of steady-state programs and adaptations increase, the verification costs (in terms of space and time) potentially become unwieldy. To address these issues, we propose a modular model checking approach to verifying that a formal model of an adaptive program satisfies its requirements specified in LTL and A-LTL, respectively.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
R. Allen, R. Douence, and D. Garlan. Specifying and analyzing dynamic software architectures. In Proceedings of the 1998 Conference on Fundamental Approaches to Software Engineering (FASE'98), Lisbon, Portugal, March 1998.
2
 
3
 
4
 
5
 
6
B. H. C. Cheng, H. J. Goldsby, and J. Zhang. Amoeba-RT: Run-time verification of adaptive software. In In Holger Giese, editor, Models in Software Engineering Workshops and Symposia at MoDELS 2007, Nashville, TN, USA, October 2007. Springer Verlag.
 
7
C. Clifton and G. T. Leavens. Observers and assistants: A proposal for modular aspect-oriented reasoning. In In Foundations of Aspect Languages, pages 33--44, 2002.
8
 
9
10
11
 
12
C. Flanagan and S. Qadeer. Thread--modular model checking. In SPIN 03: SPIN Workshop, LNCS 2648, pages 213--225. Springer-Verlag, 2003.
13
 
14
K. Havelund and G. Rosu. Monitoring Java programs with Java PathExplorer. In Proceedings of the 1st Workshop on Runtime Verification, Paris, France, July 2001.
 
15
T. A. Henzinger, R. Jhala, R. Ma jumdar, and M. A. Sanvido. Extreme model checking. Verification: Theory and Practice, Lecture Notes in Computer Science 2772, Springer-Verlag, pages 332--358, 2004.
 
16
17
 
18
 
19
20
 
21
S. Kulkarni and K. Biyani. Correctness of component-based adaptation. In Proceedings of International Symposium on Component-based Software Engineering, May 2004.
 
22
23
24
 
25
26
 
27
P. K. McKinley. RAPIDware. http://www.cse.msu.edu/rapidware/. Software Engineering and Network Systems Laboratory, Department of Computer Science and Engineering, Michigan State Computer Science and Engineering, Michigan State
28
 
29
 
30
M. Vardi and P. Wolper. An automata-theoretic approach to automatic program verification. In Proceedings of the 1st Symposium on Logic in Computer Science, pages 322--331, Cambridge, England, 1986.
31
 
32
J. Zhang and B. H. C. Cheng. Modular model checking of dynamically adaptive programs. Technical Report MSU-CSE-06-18, Computer Science and Engineering, Michigan State University, East Lansing, Michigan, March 2006. http://www.cse.msu.edu/ hjg/Zhang06Modular.pdf.
 
33
J. Zhang and B. H. C. Cheng. Using temporal logic to specify adaptive program semantics. Journal of Systems and Software (JSS), Architecting Dependable Systems, 79(10):1361--1369, 2006.
 
34
J. Zhang, B. H. C. Cheng, Z. Yang, and P. K. McKinley. Enabling safe dynamic component-based software adaptation. Architecting Dependable Systems, Lecture Notes in Computer Science, pages 194--211, 2005.


Collaborative Colleagues:
Ji Zhang: colleagues
Heather J. Goldsby: colleagues
Betty H.C. Cheng: colleagues