In this paper, we present our experience and lessons learnt in applying a multi-level reflective approach to the design and implementation of an industrial embedded dependable system. We reflect in particular on the process by which ideal academic results and assumptions may be mapped to a concrete industrial context. More precisely, our reflection is based on our experience in building an adaptive defense software for a multilayer embedded plat-form in the automotive industry. This defense software provides a safety bag and is based on computational reflection, an advanced architectural mechanism to separate crosscutting concerns. Our implementation uses the AUTOSAR middleware, the automotive standard for modular embedded software, and relies on software sensors to observe the behavior of the system, executable assertions to check on-line properties, and software actuators to per-form recovery actions. This leads to defense software that is uncoupled from the real functional system and can be adjusted and specialized according to the needs of the system integrator.
ACM Copyright Notice: © ACM, 2011. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Proceedings of the 2011 ACM Symposium on Applied Computing (SAC'2011).complete documentdoi:http://doi.org/10.1145/1982185.1982237 (publisher's link)