We give an overview of the S# (pronounced "safety sharp") framework for rigorous, model-based analysis of safety-critical systems. We introduce S#'s expressive modeling language based on the C# programming language, showing how S#'s fault modeling and flexible model composition capabilities can be used to model a case study from the transportation sector with multiple design variants. A formal semantics for executable probabilistic models is given. Fully automated qualitative and quantitative safety analyses are conducted for the case study using algorithms of the model checkers LTSmin and MRMC. The results of the quantitative analyses are discussed in comparison with results obtained by using traditional techniques.
Keywords Safety analysis• Model checking • Quantitative analysis • Executable models • Formal methods B Johannes Leupolz