Abstract
A safety shell pattern was defined based on a re-configuration management pattern and inspired by the architectural specifications in Specification PEARL. It is meant to be used for real-time applications to be developed with UML-RT as described. The implementation of the safety shell features as defined in Kornecki and Zalewski (Software Development for Real-Time Safety—Critical Applications. Software Engineering Workshop—Tutorial Notes, 29th Annual IEEE/NASA 03, pp 1–95, 2005), namely, its timing and state guards as well as I/O protection and exception handling mechanisms, is explained. The pattern is parameterised by defining the properties of its components as well as by defining the mapping between software and hardware architectures. Initial and alternative execution scenarios as well as the method for switching between them are defined. The goal pursued with the safety shell is to obtain clearly specified operation scenarios with well-defined transitions between them. To achieve safe and timely operation, the pattern must provide safety shell mechanisms for an application designed, i.e., enable its predictable deterministic and temporally predictable operation now and in the future.
Similar content being viewed by others
References
Eisenring M, Platzner M, Thiele L (1999) Communication synthesis for reconfigurable embedded systems. In: Lysaght P, Irvine J, Hartenstein RW (eds) Field-programmable logic and applications, proc. Springer, Berlin, pp 205–214
Gumzej R, Colnarič M, Halang WA (2009) A reconfiguration pattern for distributed embedded systems. Softw Syst Model 8(1): 145–161
Hofmeister CR (1993) Dynamic Reconfiguration of Distributed Applications. Ph.D. thesis, University of Maryland
Hutchings BL, Wirthlin MJ (1995) Implementation approaches for reconfigurable logic applications. In: Field-Programmable logic and applications, proc. Springer, Berlin, pp 419–428
Jean J, Tomko K, Yavgal V, Cook R, Shah J (1998) Dynamic reconfiguration to support concurrent applications. IEEE symposium on fpgas for custom computing machines, proc. Los IEEE Computer Society Press, Alamitos, pp 302–303
Kalbarczyk ZT, Iyer RK, Bagchi S, Whisnant K (1999) Chameleon: a software infrastructure for adaptive fault tolerance. IEEE Trans Paral Distrib Syst 10(6)
van Katwijk J, Toetenel H, Sahraoui A, Anderson E, Zalewski J (2000) Specification and verification of a safety shell with statecharts and extended timed graphs. Computer safety, reliability and security. LNCS 1943. Springer, Berlin, pp 37–52
Kornecki AJ, Zalewski J (2005) Software development for real-time safety—critical applications. Software engineering workshop—Tutorial notes. 29th Annual IEEE/NASA 03, pp 1–95
Kramer J, Magee J (1985) Dynamic configuration for distributed systems. IEEE Trans Softw Eng 11(4)
Object Management Group: unified modeling language: Superstructure. Version 2.0. OMG document formal/2005-07-04 (2005)
Rust C, Stappert F, Bernhardi-Grisson R (2002) Petri net design of reconfigurable embedded real-time systems. IFIP 17th world computer congress—design and analysis of distributed embedded systems, Proc. Kluwer, Dordrecht, pp 41–50
Selić B, Rumbaugh J (1998) Using UML for modeling complex real-time systems. Rational Software Corporation, White Paper (1998) http://www.rational.com/media/whitepapers/umlrt.pdf
Shaw AC (1992) Communicating Real-Time state machines. IEEE Trans Softw Eng 18(9): 805–816
Wolf W (2003) A decade of hardware/software codesign. IEEE Comput 36(4)
Zuberek WM (1991) Timed Petri nets—definitions, properties, and applications. Microelectron Reliab 31(4): 627–644
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Gumzej, R., Halang, W.A. A safety shell for UML-RT projects structure and methods of the corresponding UML pattern. Innovations Syst Softw Eng 5, 97–105 (2009). https://doi.org/10.1007/s11334-009-0084-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-009-0084-5