Model-Based Self-Adaptive Embedded Programs with Temporal Logic Specifications

We propose a model-based framework for developing a self-adaptive embedded program, which monitors its own execution and reconfigures itself at runtime to avoid failure and improve performance. Our approach uses formal methods at different design stages to reduce the complexity of developing a self-adaptive embedded program. In our framework system requirement is rigidly encoded in temporal logics, and the original embedded system behavior is captured in a hybrid automaton-based model. We introduce the reconfiguration specification language REDL to specify reconfiguration requirements, and define a formal semantics of reconfiguration in context of hybrid automaton. Using formal methods also helps automate design and implementation: we use model-based runtime verification techniques introduced by Tan et al. (2001) to extend a system model to a self-monitoring model based on its temporal logic requirements; we then extend the self-monitoring model with a reconfiguration mechanism based on its REDL specification. Our approach works with models, and hence it may be incorporated into existing model-based design workflow: the resulting self-adaptive model can be analyzed using an existing model simulator and may be used to generate a self-adaptive embedded program for targeted platform

[1]  Li Tan,et al.  Model-based self-monitoring embedded programs with temporal logic specifications , 2005, ASE.

[2]  Mahesh Viswanathan,et al.  Java-MaC: a Run-time Assurance Tool for Java Programs , 2001, RV@CAV.

[3]  Zohar Manna,et al.  From Timed to Hybrid Systems , 1991, REX Workshop.

[4]  Wang Yi,et al.  Uppaal in a nutshell , 1997, International Journal on Software Tools for Technology Transfer.

[5]  Vijay Kumar,et al.  Hierarchical modeling and analysis of embedded systems , 2003, Proc. IEEE.

[6]  Mahesh Viswanathan,et al.  Runtime Assurance Based On Formal Specifications , 1999, PDPTA.

[7]  John C. Knight,et al.  Dependability through Assured Reconfiguration in Embedded System Software , 2006, IEEE Transactions on Dependable and Secure Computing.

[8]  Insup Lee,et al.  Testing and Monitoring Model-based Generated Program , 2003, Electron. Notes Theor. Comput. Sci..

[9]  Thomas A. Henzinger,et al.  The Algorithmic Analysis of Hybrid Systems , 1995, Theor. Comput. Sci..

[10]  Insup Lee,et al.  Generating embedded software from hierarchical hybrid models , 2003, LCTES '03.

[11]  Aloysius K. Mok,et al.  Safety analysis of timing properties in real-time systems , 1986, IEEE Transactions on Software Engineering.

[12]  Insup Lee,et al.  Model-based testing and monitoring for hybrid embedded systems , 2004, Proceedings of the 2004 IEEE International Conference on Information Reuse and Integration, 2004. IRI 2004..

[13]  Communism,et al.  University of Pennsylvania , 1847, Medical History.

[14]  Thomas A. Henzinger,et al.  HYTECH: a model checker for hybrid systems , 1997, International Journal on Software Tools for Technology Transfer.

[15]  Apple Hill Model-Based Self-Monitoring Embedded Programs With Temporal Logic Specifications , 2005 .

[16]  Peyman Oreizy,et al.  An architecture-based approach to self-adaptive software , 1999, IEEE Intell. Syst..

[17]  Gabor Karsai,et al.  An Approach to Self-adaptive Software Based on Supervisory Control , 2001, IWSAS.