Model Based Safety Analysis with smartIflow
†
Abstract
:1. Introduction
- How can such requirements be described in a formal language?
- How can the simulation be controlled to capture all relevant sequences of events?
- What might a verification result look like?
2. Model Checking
2.1. Linear Temporal Logic
- : ϕ has to hold in the neXt state,
- : ϕ has to hold at each state of the subsequent path (Globally),
- : ϕ has to hold somewhere on the subsequent path (some Future state),
- : ψ has to hold Until ϕ holds,
- : ϕ has hold up to the moment when ψ becomes true (Release).
2.2. Computation Tree Logic
3. Related Work
4. The smartIflow Formalism
4.1. Fundamental Concepts
- C is a set of component instances (subcomponents). This allows for building hierarchical models.
- P is a set of ports. Ports represent the connection points of a component. Ports are typed (only ports with the same type can be connected) and can be marked as inputs or outputs (which affects property propagation). Components are linked through these ports.
- V is a set of state variables. Basically, each component in a system is considered as a finite state machine. Thus, a component consists of a set of state variables that are used to capture the operational and failure modes of a component. Each state variable is defined by a set of possible values (its domain) and also an initial value. State variables can only be accessed inside the component itself.
- E is a set of events. Events are used to stimulate a system externally, for example to change the operational mode of a component.
- B describes the state-dependent behavior of a component. The state-dependent behavior is described in terms of modifications to connection structure and also by adding properties to ports. Actually, properties are key-value pairs that provide a quite flexible mechanism to abstract from physical flow information. During simulation, properties are propagated through the connection structure. There are two types of connections: undirected channels for physical links and unidirectional channels for logical signals. Built-in primitives enable flow direction determination. The information about flow direction is available at each port by means of a reserved property (e.g., flow.dir = In).
- T describes the state transitions of a component. State changes are either performed after external events or after signal changes at ports initiated by other components (internal events). The condition of a state transition is a logical expression where propagated properties and state variables can be referenced. State transitions are positive edge triggered, which means that the transition is only performed when the result of a condition changes from to . Additionally, guard conditions are supported, as is usual in finite state machines.
4.2. The smartIflow Language
5. Formal Verification of Safety Requirements with smartIflow
5.1. Simulation
- vstate(s) describes the state of all state variables. It maps each variable to its current value.
- cstate(s) describes the truth value of all event conditions without guards of the parent state. It is a set and contains all fulfilled when-conditions from the Transitions and EventHandlers sections.
- pstate(s) describes the properties of all ports. Each port is mapped to the set of key-value pairs that are currently present at the port. When initializing a new state, each port is mapped to the empty set.
Algorithm 1 The simulation algorithm |
|
5.2. Requirements Verification
- “It is always possible to reach a state within which some condition ϕ holds”.
- “After pressing button X, the system must react in a special way Y”.
6. Example
- If the pump is broken, there will not be any flow at all and consequently the consumer is not supplied with fluid.
- If the primary tank is empty and the valve is stuck at the first position (connected to the primary tank), the controller tries to switch to the secondary tank, which is obviously not possible. Consequently, the consumer is not supplied with fluid.
- A faulty flow meter delivers incorrect values to the controller. Therefore, the controller does not recognize the situation when the primary tank is empty.
- A defective controller does not respond to signal changes from the sensor. As a consequence, the system does not react to an empty tank.
7. Discussion
8. Conclusions
Acknowledgments
Author Contributions
Conflicts of Interest
Abbreviations
CTL | Computation tree logic |
FI | Failure injection |
FLM | Failure logic modeling |
FMEA | Failure mode and effects analysis |
FSM | Finite state machine |
FTA | Fault tree analysis |
LTL | Linear temporal logic |
MBSA | Model-Based Safety Analysis |
smartIflow | State Machines for Automation of Reliability-related Tasks using Information FLOWs |
References
- Federal Aviation Administration (FAA). Chapter 9: Analysis Techniques. In FAA System Safety Handbook; Federal Aviation Administration: Washington, DC, USA, 2000. [Google Scholar]
- Lunde, K.; Lunde, R.; Münker, B. Model-Based Failure Analysis with RODON. In Proceedings of the 2006 Conference on ECAI 2006: 17th European Conference on Artificial Intelligence, Riva Del Garda, Italy, 29 August 29–1 September 2006; IOS Press: Amsterdam, The Netherlands, 2006; pp. 647–651. [Google Scholar]
- Batteux, M.; Prosvirnova, T.; Rauzy, A.; Kloul, L. The AltaRica 3.0 project for model-based safety assessment. In Proceedings of the 2013 11th IEEE International Conference on Industrial Informatics (INDIN), Bochum, Germany, 29–31 July 2013; pp. 741–746.
- Papadopoulos, Y.; McDermid, J.A. Hierarchically Performed Hazard Origin and Propagation Studies. In Computer Safety, Reliability and Security; Springer: Berlin/Heidelberg, Germany, 1999; pp. 139–152. [Google Scholar]
- Hönig, P.; Lunde, R. A New Modeling Approach for Automated Safety Analysis Based on Information Flows. In Proceedings of the 25th International Workshop on Principles of Diagnosis (DX14), Graz, Austria, 8–11 September 2014.
- Baier, C.; Katoen, J.P. Principles of Model Checking (Representation and Mind Series); The MIT Press: Cambridge, MA, USA, 2008. [Google Scholar]
- NuSMV 2.5 User Manual. Available online: http://nusmv.fbk.eu/NuSMV/userman/v25/nusmv.pdf (accessed on 29 December 2016).
- Huth, M.; Ryan, M. Logic in Computer Science: Modelling and Reasoning about Systems; Cambridge University Press: New York, NY, USA, 2004. [Google Scholar]
- Lisagor, O.; Kelly, T.; Niu, R. Model-based safety assessment: Review of the discipline and its challenges. In Proceedings of the 2011 9th International Conference on Reliability, Maintainability and Safety (ICRMS), Guiyang, China, 12–15 June 2011; pp. 625–632.
- Simscape. Available online: https://www.mathworks.com/products/simscape.html (accessed on 28 December 2016).
- Fenelon, P.; McDermid, J.; Nicholson, M.; Pumfrey, D. Towards Integrated Integrated Safety Analysis and Design. ACM Appl. Comput. Rev. 1994, 2, 21–32. [Google Scholar] [CrossRef]
- Struss, P.; Dobi, S. Automated Functional Safety Analysis of Vehicles Based on Qualitative Behavior Models and Spatial Representations. In Proceedings of the 24th International Workshop on Principles of Diagnosis (DX-2013), Jerusalem, Israel, 1–4 October 2013; pp. 85–91.
- Simulink. Available online: https://www.mathworks.com/products/simulink/ (accessed on 28 December 2016).
- Joshi, A.; Whalen, M.; Heimdahl, M.P. ModelBased Safety Analysis: Final Report; Technical Report; University of Minnesota: Minneapolis, MN, USA, 2005. [Google Scholar]
- Bozzano, M.; Cimatti, A.; Katoen, J.P.; Nguyen, V.Y.; Noll, T.; Roveri, M. The COMPASS Approach: Correctness, Modelling and Performability of Aerospace Systems. In Proceedings of the 28th International Conference on Computer Safety, Reliability, and Security, SAFECOMP 2009, Hamburg, Germany, 15–18 September 2009; Springer: Berlin/Heidelberg, Germany, 2009; pp. 173–186. [Google Scholar]
- Gudemann, M.; Ortmeier, F. A Framework for Qualitative and Quantitative Formal Model-Based Safety Analysis. In Proceedings of the 2010 IEEE 12th International Symposium on High-Assurance Systems Engineering (HASE), San Jose, CA, USA, 3–4 November 2010; pp. 132–141.
- Lunde, R. Towards Model-Based Engineering: A Constraint-Based Approach; Shaker: Aachen, Germany, 2006. [Google Scholar]
- Hönig, P.; Lunde, R.; Holzapfel, F. Modeling Technical Systems with smartIflow for Safety Related Tasks. In Proceedings of the International Workshop on Applications in Information Technology (IWAIT-2015), Aizu-Wakamatsu, Japan, 8–10 October 2015.
- Beyene, T.A.; Popeea, C.; Rybalchenko, A. Efficient CTL Verification via Horn Constraints Solving. In Proceedings of the 3rd Workshop on Horn Clauses for Verification and Synthesis, San Francisco, CA, USA, 3 April 2016.
- Snooke, N.A.; Lee, M.H. Qualitative Order of Magnitude Energy-Flow-Based Failure Modes and Effects Analysis. J. Artif. Intell. Res. 2013, 46, 413–447. [Google Scholar]
Level of Abstraction | Connection Modeling | Model Construction | Semantics of Component Interface | |
---|---|---|---|---|
AltaRica 3.0 | quite high | undirected | standalone model | FEM/FLM |
HiP-HOPS | extremely high | directional | partial usage of design models | FLM |
Joshi & Heimdahl | low-high | directional | standalone model | FEM/FLM |
SLIM | low-high | directional | standalone model | FEM/FLM |
SAML | low-high | directional | partial usage of design models | FEM/FLM |
FPTN | very high | directional | standalone model | FLM |
Rodon | rather low | undirected | partial usage of design models | FEM |
Level of Abstraction | Connection Modeling | Model Construction | Semantics of Component Interface | |
---|---|---|---|---|
smartIflow | rather high | undirected | partial usage of design models | FEM/FLM |
With Event Trigger Specification | Without Restricting External Events | |
---|---|---|
Node count | 351 | 3331 |
Simulation time (ms) | 493 | 1387 |
Verification time (ms) | 5 | 13 |
Counterexamples | 15 | 15 |
© 2017 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license ( http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Hönig, P.; Lunde, R.; Holzapfel, F.
Model Based Safety Analysis with smartIflow
. Information 2017, 8, 7.
https://doi.org/10.3390/info8010007
Hönig P, Lunde R, Holzapfel F.
Model Based Safety Analysis with smartIflow
. Information. 2017; 8(1):7.
https://doi.org/10.3390/info8010007
Hönig, Philipp, Rüdiger Lunde, and Florian Holzapfel.
2017. "Model Based Safety Analysis with smartIflow
" Information 8, no. 1: 7.
https://doi.org/10.3390/info8010007
Hönig, P., Lunde, R., & Holzapfel, F.
(2017). Model Based Safety Analysis with smartIflow
. Information, 8(1), 7.
https://doi.org/10.3390/info8010007