Integration of safety analysis in model-driven software development

Safety critical software requires integrating verification techniques in software development methods. Software architectures must guarantee that developed systems will meet safety requirements and safety analyses are frequently used in the assessment. Safety engineers and software architects must reach a common understanding on an optimal architecture from both perspectives. Currently both groups of engineers apply different modelling techniques and languages: safety analysis models and software modelling languages. The solutions proposed seek to integrate both domains coupling the languages of each domain. It constitutes a sound example of the use of language engineering to improve efficiency in a software-related domain. A model-driven development approach and the use of a platform-independent language are used to bridge the gap between safety analyses (failure mode effects and criticality analysis and fault tree analysis) and software development languages (e.g. unified modelling language). Language abstract syntaxes (metamodels), profiles, language mappings (model transformations) and language refinements, support the direct application of safety analysis to software architectures for the verification of safety requirements. Model consistency and the possibility of automation are found among the benefits.

[1]  Massood Towhidnejad,et al.  Fault tree analysis for software design , 2002, 27th Annual NASA Goddard/IEEE Software Engineering Workshop, 2002. Proceedings..

[2]  Alejandro Alonso,et al.  Application of Safety Analyses in Model Driven Development , 2007, SEUS.

[3]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[4]  Hany H. Ammar,et al.  Architectural-Level Risk Analysis Using UML , 2003, IEEE Trans. Software Eng..

[5]  Joanne Bechta Dugan,et al.  Automatic synthesis of dynamic fault trees from UML system models , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[6]  W E Vesely,et al.  Fault Tree Handbook , 1987 .

[7]  Malathi Veeraraghavan,et al.  Reliability modeling: an overview for system designers , 1991, Computer.

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

[9]  Khaled M. Khan,et al.  Composing Security-Aware Software , 2002, IEEE Softw..

[10]  William R. Dunn Designing Safety-Critical Computer Systems , 2003, Computer.

[11]  Miguel A. de Miguel,et al.  Model-based integration of safety analysis and reliable software development , 2005, 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems.

[12]  F. R. Frola,et al.  System Safety in Aircraft Acquisition , 1984 .

[13]  O Lisagor,et al.  Safety Analysis of Software Architectures – " Lightweight Pssa " , .

[14]  John A. McDermid,et al.  Issues in the Conduct of PSSA , 2001 .

[15]  Nancy G. Leveson,et al.  Safeware: System Safety and Computers , 1995 .

[16]  Gregory Zoughbi,et al.  A UML profile for developing airworthiness-compliant (RTCA DO-178B), safety-critical software , 2007, MODELS'07.

[17]  Nancy G. Leveson,et al.  Analyzing Software Safety , 1983, IEEE Transactions on Software Engineering.