Abstract
This paper addresses the problems appearing in component-based development of safety-critical systems. We aim at efficient reasoning about safety at system level while adding or replacing components. For safety-related reasoning it does not suffice to consider functioning components in their ”intended” environments but also the behaviour of components in presence of single or multiple faults.
Our contribution is a formal component model that includes the notion of a safety interface. It describes how the component behaves with respect to violation of a given system-level property in presence of faults in its environment. We also present an algorithm for deriving safety interfaces given a particular safety property and fault modes for the component. Moreover, we present compositional proof rules that can be applied to reason about the fault tolerance of the composed system by analyzing the safety interfaces of the components. Finally, we evaluate the above technique in a real aerospace application.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abadi, M., Lamport, L.: Composing specifications. ACM Transactions on Programming Languages and Systems 15(1), 73–132 (1993)
Åkerlund, O., Nadjm-Tehrani, S., Stålmarck, G.: Integration of formal methods into system safety and reliability analysis. In: Proceedings of 17th International Systems Safety Conference, pp. 326–336 (1999)
Alur, R., Henzinger, T.A.: Reactive modules. In: Proc. 11th Symposium on Logic in Computer Science, pp. 207–218. IEEE Computer Society, Los Alamitos (1996)
Aßman, U.: Invasive Software Composition. Springer, Heidelberg (2003)
Berry, G.: The Esterel v5 Language Primer. CMA. Sophia Antipolis (2000)
Bondavalli, A., Simoncini, L.: Failures classification with respect to detection. In: Proc. of 2nd IEEE Workshop on Future Trends in Distributed Computing Systems, pp. 47–53. IEEE Computer Society, Los Alamitos (1990)
Bozzano, M., et al.: ESACS: an integrated methodology for design and safety analysis of complex systems. In: ESREL 2003, Balkema, June 2003, pp. 237–245 (2003)
Burns, A., Wellings, A.J.: HRT-HOOD: a structured design method for hard real-time systems. Real-Time Systems 6(1), 73–114 (1994)
Crnkovic, I., Stafford, J., Schmidt, H., Wallnau, K. (eds.): CBSE 2004. LNCS, vol. 3054. Springer, Heidelberg (2004)
de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.): FMCO 2004. LNCS, vol. 3657. Springer, Heidelberg (2005)
Elmqvist, J., Nadjm-Tehrani, S.: Intents and upgrades in component-based high-assurance systems. In: Model-driven Software Development. Springer, Heidelberg (2005)
Fenelon, P., McDermid, J.A., Nicolson, M., Pumfrey, D.J.: Towards integrated safety analysis and design. SIGAPP Applied Computing Review 2(1), 21–32 (1994)
Grunske, L., Kaiser, B., Ruessner, R.H.: Specification and evaluation of safety properties in a component-based software engineering process. In: Embedded system development with components. Springer, Heidelberg (2005), (to appear)
Halbwachs, N., Lagnier, F., Raymond, P.: Synchronous observers and the verification of reactive systems. In: Proc. AMAST 1993, pp. 83–96. Springer, Heidelberg (1994)
Hammarberg, J., Nadjm-Tehrani, S.: Formal verification of fault tolerance in safety-critical configurable modules. International Journal of Software Tools for Technology Transfer, Online First Issue (December 14, 2004)
Henley, E., Kumamoto, H.: Reliability Engineering and Risk Assessment. Prentice Hall, Englewood Cliffs (1981)
Henzinger, T.A., Qadeer, S., Rajamani, S.K., Taşiran, S.: An assume-guarantee rule for checking simulation. In: Proc. 2nd Int. Conf. FMCAD, pp. 421–432 (1998)
Jones, C.B.: Development Methods for Computer Programs Including a Notion of Interference. PhD thesis, Oxford University (1981)
Jürjens, J.: Developing safety-critical systems with UML. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 360–372. Springer, Heidelberg (2003)
Lala, J.H., Harper, R.E.: Architectural principles for safety-critical real-time applications. Proc. of the IEEE 82(1), 25–40 (1994)
Li, H.C., Krishnamurthi, S., Fisler, K.: Interfaces for modular feature verification. In: Proc. of the 17th IEEE Int. Conf. on Automated Software Engineering, pp. 195–204. IEEE Computer Society, Los Alamitos (2002)
Manna, Z., Pnueli, A.: The temporal logic of reactive and concurrent systems: Specification. Springer, Heidelberg (1992)
Misra, J., Chandy, K.M.: Proofs of networks of processes. IEEE Transactions on Software Engineering 7(4), 417–426 (1981)
Papadopoulos, Y., McDermid, J.A., Sasse, R., Heiner, G.: Analysis and synthesis of the behaviour of complex programmable electronic systems in conditions of failure. Reliability Engineering and System Safety 71(3), 229–247 (2001)
Pumfrey, D.J.: The Principled Design of Computer System Safety Analyses. PhD thesis, Department of Computer Science, University of York (2000)
Rauzy, A.: Mode automata and their compilation into fault trees. Reliability Engineering and System Safety 78, 1–12 (2002)
Stankovic, J.A.: Vest - a toolset for constructing and analyzing component based embedded systems. In: Henzinger, T.A., Kirsch, C.M. (eds.) EMSOFT 2001. LNCS, vol. 2211, pp. 390–402. Springer, Heidelberg (2001)
Stewart, D.B., Volpe, R.A., Khosla, P.K.: Design of dynamically reconfigurable real-time software using port-based objects. IEEE Transactions on Software Engineering 23(12), 759–776 (1997)
Strunk, E.A., Knight, J.C.: Assured reconfiguration of embedded real-time software. In: Proc. International Conference on Dependable Systems and Networks, pp. 367–376. IEEE Computer Society, Los Alamitos (2004)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley, Reading (2002)
Tesanovic, A., Nadjm-Tehrani, S., Hansson, J.: Modular verification of reconfigurable components. In: Embedded System Development with Components. Springer, Heidelberg (2005), (to appear)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Elmqvist, J., Nadjm-Tehrani, S., Minea, M. (2005). Safety Interfaces for Component-Based Systems. In: Winther, R., Gran, B.A., Dahll, G. (eds) Computer Safety, Reliability, and Security. SAFECOMP 2005. Lecture Notes in Computer Science, vol 3688. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11563228_19
Download citation
DOI: https://doi.org/10.1007/11563228_19
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29200-5
Online ISBN: 978-3-540-32000-5
eBook Packages: Computer ScienceComputer Science (R0)