Propagation, Transformation and Refinement of Safety Requirements

Safety requirements are an important artifact in the development of safety critical systems. They are used by experts as a basis for appropriate selection and implementation of fault detection mechanisms. Various research groups have worked on their formal modeling with the goal of determining if a system can meet these requirements. In this paper, we propose the application of formal models of safety requirements throughout all constructive development phases of a modeldriven development process to automatically generate appropriate fault detection mechanisms. The main contribution of this paper is a rigorous formal specification of safety requirements that allows the automatic propagation, transformation and refinement of safety requirements and the derivation of appropriate fault detection mechanisms. This is an important step to guarantee consistency and completeness in the critical transition from requirements engineering to software design, where a lot of errors can be introduced into a system by using conventional, nonformal techniques.

[1]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[2]  Constance L. Heitmeyer,et al.  Software Cost Reduction , 2002 .

[3]  Anish Arora,et al.  Detectors and correctors: a theory of fault-tolerance components , 1998, Proceedings. 18th International Conference on Distributed Computing Systems (Cat. No.98CB36183).

[4]  Mario Trapp,et al.  Conditional safety certificates in open systems , 2010, EDCC-CARS.

[5]  Carl E. Landwehr,et al.  Basic concepts and taxonomy of dependable and secure computing , 2004, IEEE Transactions on Dependable and Secure Computing.

[6]  Martin Walker,et al.  Automatic allocation of safety integrity levels , 2010, EDCC-CARS.

[7]  A.C. Tribble,et al.  Software intensive systems safety analysis , 2004, IEEE Aerospace and Electronic Systems Magazine.

[8]  John C. Knight,et al.  Assurance Based Development of Critical Systems , 2007, 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN'07).

[9]  Alejandro Alonso,et al.  Integration of Safety Analysis and Software Development Methods , 2006 .

[10]  Mohammad Zulkernine,et al.  On Failure Propagation in Component-Based Software Systems , 2008, 2008 The Eighth International Conference on Quality Software.

[11]  András Pataricza,et al.  Checking General Safety Criteria on UML Statecharts , 2001, SAFECOMP.

[12]  Steven P. Miller,et al.  A proposal for model-based safety analysis , 2005, 24th Digital Avionics Systems Conference.

[13]  Richard F. Paige,et al.  Probabilistic Failure Propagation and Transformation Analysis , 2009, SAFECOMP.

[14]  John A. McDermid,et al.  A development of hazard analysis to aid software design , 1994, Proceedings of COMPASS'94 - 1994 IEEE 9th Annual Conference on Computer Assurance.

[15]  Malcolm Wallace,et al.  Modular Architectural Representation and Analysis of Fault Propagation and Transformation , 2005, FESCA@ETAPS.

[16]  Tim Kelly,et al.  The Goal Structuring Notation – A Safety Argument Notation , 2004 .

[17]  Robert Hanmer,et al.  Patterns for Fault Tolerant Software , 2007 .

[18]  Christian Buckl,et al.  Model-based development of fault-tolerant real-time systems , 2008 .

[19]  Alois Knoll,et al.  Model-Based Analysis and Development of Dependable Systems , 2007, Model-Based Engineering of Embedded Real-Time Systems.