From 0af81ebb3f71c6df1b038f7f3a1d1df90b9e0d36 Mon Sep 17 00:00:00 2001 From: Robin Clark Date: Wed, 1 Dec 2010 09:05:39 +0000 Subject: [PATCH] wed morn edit --- fmmd_data_model/fmmd_data_model.tex | 97 +++++++++++++++++------------ 1 file changed, 58 insertions(+), 39 deletions(-) diff --git a/fmmd_data_model/fmmd_data_model.tex b/fmmd_data_model/fmmd_data_model.tex index bfca813..c4aa7f2 100644 --- a/fmmd_data_model/fmmd_data_model.tex +++ b/fmmd_data_model/fmmd_data_model.tex @@ -111,11 +111,14 @@ two different functional groups. For the sake of example, let our temperature environment for the SYSTEM be ${{0}\oc}$ to ${{125}\oc}$, but let the component -type `K' have a de-graded performance failure mode between -${{80}\oc}$ and ${{125}\oc}$\footnote{ A real world example of +type `K' have a de-graded performance +\footnote{ A real world example of degraded performace with temperature is the isolating opto coupler. These can typically only cope with lower baud rate ranges -at high temperatures \cite{tlp181}.}. We can term this +at high temperatures \cite{tlp181}.}. + failure mode between +${{80}\oc}$ and ${{125}\oc}$. +We can term this degraded performance of component `K' as failure mode `d'. @@ -125,8 +128,8 @@ Again for the sake of example, let us say that each functional group has one or two symptoms again subscripted by $a$ and $b$. %Applying symptom abstraction to $FG^0_1$ i.e. $\bowtie fm ( FG^0_1 ) = \{ FG^0_{1 a}, FG^0_{1 b} \} $ -%We can now create a new derived component, $DC^1_1$, whose failure -%modes are the symptoms of $FG^0_1 $ thus $ fm ( {DC}^1_1 ) = \{ FG^0_{1 a}, FG^0_{1 b} \} $. +%We can now create a new derived component, $C^1_1$, whose failure +%modes are the symptoms of $FG^0_1 $ thus $ fm ( {C}^1_1 ) = \{ FG^0_{1 a}, FG^0_{1 b} \} $. \paragraph{Building the Object Model} @@ -142,6 +145,22 @@ We shall begin with the $FG^0$ level functional groups $ FG^0_1, FG^0_2 $ and $ \label{fig:cfg2fmmd_data} \end{figure} +The UML model shows the relationships between data types (or classes) that +are used in the FMMD process. +The purpose of failure mode analysis, is to tie SYSTEM level failures +to their possible causes in the base components. +By doing this accurate statistics can be obtained for SYSTEM level +failures, and an insight into how we can make the system safer +can be determined. +In order to do this, we need to be able to trace the component +failure modes from the functional groups, to the symptoms +they cause, and to the failure modes in the {\dcs}. +We can use graph theory to represent this. +As it would make no sense for a derived component to +derive failure modes form itsself, we can apply an acyclic constraint +to the graph. This means the graph must be a Directed Acylic +Graph (DAG). + % %\begin{figure}[h] % \centering % \includegraphics[width=400pt,keepaspectratio=true]{./fmmd_data_model/cfg2.jpg} @@ -158,9 +177,9 @@ We must check this against all components used. For our example, we component `K' which has an extra failure mode for degraded performance `d'. Thus applying the function $fm$ to component type `K' under these temperature range conditions -gives the following failure modes, $fm{K} =\{ K_a, K_b, K_d \}$. +gives the following failure modes, $fm{K} =\{ K^0_a, K^0_b, K^0_d \}$. Were our system specified for a ${{0}\oc}$ to ${{80}\oc}$ range -we could say $fm{K} =\{ K_a, K_b \}$. +we could say $fm{K} =\{ K^0_a, K^0_b \}$. \pagebreak[3] \paragraph{Get the failure modes from the functional groups.} @@ -171,9 +190,9 @@ constraint applied to component type `K', yields %%$$ FG^0_2 = \{C_1, C_3, K_4\},$$ %%$$ FG^0_3 = \{C_5, C_6, K_7\}.$$ -$$ fm(FG^0_1) = \{C_{1 a}, C_{1 b}, C_{2 a}, C_{2 b}\},$$ -$$ fm(FG^0_2) = \{C_{1 a}, C_{1 b}, C_{3 a}, C_{3 b}, K_{4 a}, K_{4 b}, K_{4 d}\},$$ -$$ fm(FG^0_3) = \{C_{5 a}, C_{5 b}, C_{6 a}, C_{6 b}, K_{7 a}, K_{7 b}, K_{7 d}\}.$$ +$$ fm(FG^0_1) = \{C^0_{1 a}, C^0_{1 b}, C^0_{2 a}, C^0_{2 b}\},$$ +$$ fm(FG^0_2) = \{C^0_{1 a}, C^0_{1 b}, C^0_{3 a}, C^0_{3 b}, K^0_{4 a}, K^0_{4 b}, K^0_{4 d}\},$$ +$$ fm(FG^0_3) = \{C^0_{5 a}, C^0_{5 b}, C^0_{6 a}, C^0_{6 b}, K^0_{7 a}, K^0_{7 b}, K^0_{7 d}\}.$$ The next stage is to look at the failure modes from the perspective of the functional groups, rather than the components. @@ -188,9 +207,9 @@ its range and {\dc} as its domain. For the sake of example let us determine some arbitary collections into symptoms. Let us group the symptoms from $ FG^0_1 $ as the following -$ s1 = \{ C_{1 a}, C_{2 b} \}$ and $ s2 = \{ C_{1 b}, C_{2 a} \}$. +$ s1 = \{ C^0_{1 a}, C^0_{2 b} \}$ and $ s2 = \{ C^0_{1 b}, C^0_{2 a} \}$. We can represent the relationships between the failure modes, and desired failure modes or symptoms -as a directed acyclic graph (see figure \ref{fig:dag0}). +as a DAG (see figure \ref{fig:dag0}). \def\layersep{2.5cm} @@ -288,14 +307,14 @@ In this case all components were base components and therefore have an $\alpha$ Our derived component can thus take an $\alpha$ value of one. Our newly derived component can be -$$ DC^1_1 = \bowtie fm(FG^0_1) .$$ +$$ C^1_1 = \bowtie fm(FG^0_1) .$$ Applying $fm$ to our new derived component will give us our symptoms from functional group $ FG^0_1 $ thus -$$ fm(DC^1_1) = \{s1, s2 \}.$$ +$$ fm(C^1_1) = \{s1, s2 \}.$$ -We can represent $ DC^1_1 $ as an addition to the DAG (see figure \ref{fig:dag1}). +We can represent $ C^1_1 $ as an addition to the DAG (see figure \ref{fig:dag1}). @@ -380,25 +399,25 @@ We can represent $ DC^1_1 $ as an addition to the DAG (see figure \ref{fig:dag1} \node[annot,right of=s](dcl) {Derived Component}; \end{tikzpicture} % End of code - \caption{DAG representing failure modes and symptoms $FG^0_1 \rightarrow DC^1_1$} + \caption{DAG representing failure modes and symptoms $FG^0_1 \rightarrow C^1_1$} \label{fig:dag1} \end{figure} - +\clearpage \subsection{ Creating Derived components from $FG^0_2$ and $FG^0_3$ } Applying the FMMD process for $FG^0_2$ and $FG^0_3$. \paragraph{Applying FMMD $ \bowtie fm(FG^0_2) $:} -The failure modes $fm(FG^0_2) = \{C_{1 a}, C_{1 b}, C_{3 a}, C_{3 b}, K_{4 a}, K_{4 b}, K_{4 d}\}.$ -Let us say new symptom s3 can be caused by failure modes $\{C_{1 a}, C_{3 b}, K_{4 b} \}$ -, let us say new symptom s4 can be caused by failure modes $\{C_{1 b}, C_{3 a}, K_{4 d} \}$ -and let us say new symptom s5 can be caused by failure mode $\{K_{4 a} \}$. +The failure modes $fm(FG^0_2) = \{C^0_{1 a}, C^0_{1 b}, C^0_{3 a}, C^0_{3 b}, K^0_{4 a}, K^0_{4 b}, K^0_{4 d}\}.$ +Let us say new symptom s3 can be caused by failure modes $\{C^0_{1 a}, C^0_{3 b}, K^0_{4 b} \}$ +, let us say new symptom s4 can be caused by failure modes $\{C^0_{1 b}, C^0_{3 a}, K^0_{4 d} \}$ +and let us say new symptom s5 can be caused by failure mode $\{K^0_{4 a} \}$. -We can create a derived component $DC^1_2$ using -$\bowtie fm(FG^0_2) = DC^1_2$. -Applying $fm$ to our {\dcs} gives $fm(DC^1_2) = \{ s3,s4,s5 \}$. +We can create a derived component $C^1_2$ using +$\bowtie fm(FG^0_2) = C^1_2$. +Applying $fm$ to our {\dcs} gives $fm(C^1_2) = \{ s3,s4,s5 \}$. We can respresent this in the DAG in figure \ref{fig:dag2}. @@ -510,7 +529,7 @@ We can respresent this in the DAG in figure \ref{fig:dag2}. \node[annot,right of=s](dcl) {Derived Component}; \end{tikzpicture} % End of code - \caption{DAG representing failure modes and symptoms $FG^0_1 \rightarrow DC^1_1$ and $FG^0_2 \rightarrow DC^1_2$} + \caption{DAG representing failure modes and symptoms $FG^0_1 \rightarrow C^1_1$ and $FG^0_2 \rightarrow C^1_2$} \label{fig:dag2} \end{figure} @@ -518,16 +537,16 @@ We can respresent this in the DAG in figure \ref{fig:dag2}. - +%/\clearpage \paragraph{Applying FMMD $\bowtie fm(FG^0_3) $ :} Let us say new symptom s6 can be caused by failure modes $\{C_{5 a}, C_{6 b}, K_{4 b} \}$ , let us say new symptom s7 can be caused by failure modes $\{C_{5 b}, C_{6 a}, K_{7 d} \}$ and let us say new symptom s8 can be caused by failure mode $\{K_{7 a} \}$. -We can create a derived component $DC^1_3$ using -$\bowtie fm(FG^0_3) = DC^1_3$ -where $fm(DC^1_3) = \{ s6,s7,s8 \}$. +We can create a derived component $C^1_3$ using +$\bowtie fm(FG^0_3) = C^1_3$ +where $fm(C^1_3) = \{ s6,s7,s8 \}$. We can now represent the first stage of FMMD, all base component failure modes analysed and our first set of derived components determined. @@ -575,9 +594,9 @@ This is shown in the DAG in figure \ref{fig:dag3}. \node[failure] (C-5b) at (\layersep,-11) {b}; \node[failure] (C-6a) at (\layersep,-12) {a}; \node[failure] (C-6b) at (\layersep,-13) {b}; - \node[failure] (K-7a) at (\layersep,-15) {a}; - \node[failure] (K-7b) at (\layersep,-16) {b}; - \node[failure] (K-7d) at (\layersep,-17) {d}; + \node[failure] (K-7a) at (\layersep,-14) {a}; + \node[failure] (K-7b) at (\layersep,-15) {b}; + \node[failure] (K-7d) at (\layersep,-16) {d}; % Draw the output layer node @@ -672,14 +691,14 @@ This is shown in the DAG in figure \ref{fig:dag3}. \node[annot,right of=s](dcl) {Derived Component}; \end{tikzpicture} % End of code - \caption{DAG representing failure modes and symptoms $FG^0_1 \rightarrow DC^1_1$ and $FG^0_2 \rightarrow DC^1_2$} + \caption{DAG representing failure modes and symptoms $FG^0_1 \rightarrow C^1_1$ and $FG^0_2 \rightarrow C^1_2$} \label{fig:dag3} \end{figure} -\clearpage +%\clearpage %\pagebreak[4] \subsection{Using Derived Components in Functional Groups} @@ -689,9 +708,9 @@ We can apply $fm$ to the derived components and this returns the failure modes. We can notate these with $a$ and $b$ etc as before, but can give them a subscript representing the symptom they were sourced from thus: -$$ fm(DC^1_1) = \{ a_{s1}, b_{s2} \}, $$ -$$ fm(DC^1_2) = \{ a_{s3}, b_{s4}, c_{s5} \}, $$ -$$ fm(DC^1_3) = \{ a_{s6}, b_{s7}, c_{s8} \}. $$ +$$ fm(C^1_1) = \{ a_{s1}, b_{s2} \}, $$ +$$ fm(C^1_2) = \{ a_{s3}, b_{s4}, c_{s5} \}, $$ +$$ fm(C^1_3) = \{ a_{s6}, b_{s7}, c_{s8} \}. $$ In order to determine SYSTEM level symptoms, we need to use the derived components to form a higher level functional @@ -702,10 +721,10 @@ can use all three derived components to create a top~level functional group. Let -$ FG^1_1 = \{ DC^1_1, DC^1_1, DC^1_1 \} $. +$ FG^1_1 = \{ C^1_1, C^1_1, C^1_1 \} $. Applying $fm(FG^1_1) = \{ a_{s1}, b_{s2}, a_{s3}, b_{s4}, c_{s5}, a_{s6}, b_{s7}, c_{s8} \}$. -To get our system level derived component we can apply $ \bowtie fm(FG^1_1) = DC^2_1 $. +To get our system level derived component we can apply $ \bowtie fm(FG^1_1) = C^2_1 $. NOW THINK ABOUT THIS