.
This commit is contained in:
parent
da51a2981e
commit
54935771fa
@ -500,6 +500,11 @@ verification checks in the process can be stated formally.
|
||||
|
||||
\clearpage
|
||||
\subsection{Algorithmic Description of Symptom Abstraction \\ Determine Failure Modes to examine}
|
||||
|
||||
The first stage is to find the failure modes to consider for
|
||||
analysis.
|
||||
Let $FG$ be the set of components in the functional group under analysis, and $c$
|
||||
be components that are members of it.
|
||||
%%
|
||||
%% Algorithm 1
|
||||
%%
|
||||
@ -515,9 +520,9 @@ verification checks in the process can be stated formally.
|
||||
%\STATE Determine functional groups $fg_n \subset S$ of components, where n is an index number and the number of functional groups found.
|
||||
|
||||
\STATE { Let $FG$ be a set of components } \COMMENT{ The functional group should be chosen to be minimally sized collections of components that perform a specific function}
|
||||
\STATE { Let $C$ represent a component}
|
||||
\STATE { Let $c$ represent a component}
|
||||
|
||||
\ENSURE{ Each component $C \in FG $ has a known set of failure modes i.e. $FM(C) \neq \emptyset$ }
|
||||
\ENSURE{ Each component $c \in FG $ has a known set of failure modes i.e. $ \forall c \in FG | FM(c) \neq \emptyset$ }
|
||||
|
||||
\STATE {let $F=FM(FG)$ be a set of all failure modes to consider for the functional~group $FG$}
|
||||
|
||||
@ -537,6 +542,13 @@ in the analysis stages.
|
||||
|
||||
\clearpage
|
||||
\subsection{Algorithmic Description of Symptom Abstraction \\ Determine Test Cases}
|
||||
|
||||
From the failure modes associated with the functional~group
|
||||
we now need to determine test cases.
|
||||
The test cases are collections of failure modes.
|
||||
These could be formed from single failure modes or failure modes in combination.
|
||||
Let $TC$ be the set of test cases associated withthe functional group $FG$.
|
||||
|
||||
%%
|
||||
%% Algorithm 2
|
||||
%%
|
||||
@ -556,18 +568,7 @@ in the analysis stages.
|
||||
\STATE { Let $TC$ be a set of test cases }
|
||||
\STATE { Let $tc_j$ be set of component failure modes where $j$ is an index of $J$}
|
||||
\COMMENT { Each set $tc_j$ is a `test case' }
|
||||
\STATE { $ \forall j \in J | tc_j \in TC $ }
|
||||
|
||||
%\STATE { $ \bigcup_{j=1...N} tc_j = \bigcup TC $ }
|
||||
%\COMMENT { All $tc_j$ test cases sets belong to $TC$ }
|
||||
|
||||
%\REQUIRE { $ TC \subset \bigcup (FM_{cfm}) $ }
|
||||
%\COMMENT { $TC$ is the set of all test_cases
|
||||
% Let TC be a subset of the powerset of the failure modes $ FG_{cfm} $,
|
||||
%i.e. only failure modes present in $ FG_{cfm} $ are present in sets belonging to $ TC $}
|
||||
|
||||
|
||||
\COMMENT { Ensure the test cases are complete and unique }
|
||||
\STATE { $ \forall j \in J | tc_j \in TC $ } \COMMENT {Ensure the test cases are complete and unique}
|
||||
|
||||
\FORALL { $tc_j \in TC$ }
|
||||
%\ENSURE {$ tc_j \in \bigcap FG_{cfm} $}
|
||||
@ -582,12 +583,16 @@ in the analysis stages.
|
||||
\STATE { let $f$ represet a component failure mode }
|
||||
\REQUIRE { That all failure modes are represented in at least one test case }
|
||||
\ENSURE { $ \forall f | (f \in F)) \wedge (f \in \bigcup TC) $ }
|
||||
\COMMENT { This corresponds to checking that at least each failure mode is considered at least once in the analysis; some european standards
|
||||
imply checking all double fault combinations\cite{en298} }
|
||||
\COMMENT { This corresponds to checking that at least each failure mode is considered at
|
||||
least once in the analysis; more rigorous cardinality constraint
|
||||
checks may be required for some safety standards}
|
||||
|
||||
% some european standards
|
||||
% imply checking all double fault combinations\cite{en298} }
|
||||
|
||||
%\hline
|
||||
Algorithm \ref{alg:sympabs22} has taken the set of failure modes $ F=FM(FG) $ and returned a set of test cases $TC$.
|
||||
The next stages is to analyse the effect of each test case on the functional group.
|
||||
The next stage is to analyse the effect of each test case on the functional group.
|
||||
|
||||
\end{algorithmic}
|
||||
\end{algorithm}
|
||||
@ -597,6 +602,9 @@ The next stages is to analyse the effect of each test case on the functional gro
|
||||
%%
|
||||
%% Algorithm 3
|
||||
%%
|
||||
The test cases are now analysed for their impact on the behaviour of the functional~group.
|
||||
Let $R$ be a set of results indexed by $j$ (the same index used to identify the test cases $tc_{j}$).
|
||||
|
||||
|
||||
\begin{algorithm}[h+]
|
||||
~\label{alg:sympabs3}
|
||||
@ -605,9 +613,9 @@ The next stages is to analyse the effect of each test case on the functional gro
|
||||
\STATE { let r be a `test case result'}
|
||||
\STATE { Let the function $Analyse : tc \mapsto r $ } \COMMENT { This analysis is a human activity, examining the failure~modes in the test case and determining how the functional~group will fail under those conditions}
|
||||
\STATE { $ R $ is a set of test case results $r_j \in R$ where the index $j$ corresponds to $tc_j \in TC$}
|
||||
\FORALL { $tc_j \in TC$ }
|
||||
\FORALL { $tc_j \in TC$ }
|
||||
\STATE { $ rc_j = Analyse(tc_j) $} \COMMENT {this is Fault Mode Effects Analysis (FMEA) applied in the context of the functional group}
|
||||
\STATE { $ rc_j \in R $ }
|
||||
\STATE { $ rc_j \in R $ } \COMMENT{Add $rc_j$ to the set R}
|
||||
\ENDFOR
|
||||
|
||||
%\hline
|
||||
@ -621,6 +629,9 @@ Algorithm \ref{alg:sympabs33} has built the set $R$, the sub-system/functional g
|
||||
%%
|
||||
%% Algorithm 4
|
||||
%%
|
||||
This stage analyses the results from bottom-up FMEA analysis ($R$), and collects
|
||||
results that, from the perspective of the functional~group, have the same failure symptom.
|
||||
Let set $SP$ be the set of symptoms for the functional group $FG$.
|
||||
|
||||
\begin{algorithm}[h+]
|
||||
~\label{alg:sympabs4}
|
||||
@ -667,6 +678,10 @@ We now have a set $SP$ of the symptoms of failure.
|
||||
%%
|
||||
%% Algorithm 5
|
||||
%%
|
||||
This final stage, is the creation of the derived component.
|
||||
This derived component may now be used to build
|
||||
new functional groups at higher levels of fault abstraction.
|
||||
Let $DC$ be a derived component with its own set of failure~modes.
|
||||
|
||||
\begin{algorithm}[h+]
|
||||
~\label{alg:sympabs5}
|
||||
@ -693,7 +708,10 @@ Hierarchies of fault abstraction can be built that can model an entire SYSTEM.
|
||||
|
||||
\section{To conclude}
|
||||
|
||||
The technique provides a methodology for bottom-up analysis of the fault behaviour of complex safety critical systems.
|
||||
The symptom abstraction technique allows us to take a functional group of components, analyse the failure
|
||||
mode behaviour and create a new entity, a derived~component, that has its own set of failure modes.
|
||||
This process naturally takes one step to building a hierarchical failure mode model
|
||||
from the bottom-up.
|
||||
|
||||
\subsection{Hierarchical Simplification}
|
||||
|
||||
@ -717,3 +735,7 @@ Minimal cut sets \cite{nasafta} can be determined from these, and by
|
||||
analysing the statistical likelyhood of the component failures,
|
||||
the MTTF and SIL\cite{en61508} levels can be automatically calculated.
|
||||
|
||||
|
||||
\vspace{40pt}
|
||||
\today
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user