diff --git a/submission_thesis/CH4_FMMD/cfg2.dia b/submission_thesis/CH4_FMMD/cfg2.dia index fefc0ad..531295d 100644 Binary files a/submission_thesis/CH4_FMMD/cfg2.dia and b/submission_thesis/CH4_FMMD/cfg2.dia differ diff --git a/submission_thesis/CH4_FMMD/copy.tex b/submission_thesis/CH4_FMMD/copy.tex index 54b3f5a..088944a 100644 --- a/submission_thesis/CH4_FMMD/copy.tex +++ b/submission_thesis/CH4_FMMD/copy.tex @@ -413,11 +413,11 @@ fault behaviour. The UML representation (in figure \ref{fig:cfg}) shows a `functional group' having a one to one relationship with a derived~component. -The symbol $\bowtie$ is used to indicate the analysis process that takes a +The symbol $\derivec$ is used to indicate the analysis process that takes a functional group and converts it into a new component. \begin{definition} With $\mathcal{\FG}$ representing the set of all functional groups, and $\mathcal{{\DC}}$ the set of all derived components, -this can be expressed as $$ \bowtie : \mathcal{\FG} \rightarrow \mathcal{{\DC}} $$ . +this can be expressed as $$ \derivec : \mathcal{\FG} \rightarrow \mathcal{{\DC}} $$ . \end{definition} \begin{figure}[h] @@ -442,7 +442,7 @@ objects, functional~groups formed with derived~components, and after symptom~abs derived components yet higher up in the structure. % To keep track of the level in the hierarchy (i.e. how many stages of component -derivation `$\bowtie$' have lead to the current derived component) +derivation `$\derivec$' have lead to the current derived component) we can add an attribute to the component data type. This can be a natural number called the level variable $\abslev \in \mathbb{N}$. % J. Howse says zero is a given in comp sci. This can be a natural number called the level variable $\alpha \in \mathbb{N}_0$. @@ -468,10 +468,10 @@ would have an $\abslev$ value of 1. % % $$ FunctionalGroup \stackrel{has}{\longrightarrow} Components $$ % -% Using the symbol $\bowtie$ to indicate an analysis process that takes a +% Using the symbol $\derivec$ to indicate an analysis process that takes a % functional group and converts it into a new component. % -% $$ \bowtie ( FG ) \rightarrow DerivedComponent $$ +% $$ \derivec ( FG ) \rightarrow DerivedComponent $$ % \subsection{Relationships between functional~groups and failure modes} @@ -1209,17 +1209,17 @@ We can apply symptom abstraction to a {\fg} to find its symptoms. %We are interested in the failure modes %of all the components in the {\fg}. An analysis process -We define the symptom abstraction process with the symbol `$\bowtie$'.% is applied to the {\fg}. +We define the symptom abstraction process with the symbol `$\derivec$'.% is applied to the {\fg}. % -The $\bowtie$ function takes a {\fg} +The $\derivec$ function takes a {\fg} as an argument and returns a newly created {\dc}. % -%The $\bowtie$ analysis, a symptom extraction process, is described in chapter \ref{chap:sympex}. +%The $\derivec$ analysis, a symptom extraction process, is described in chapter \ref{chap:sympex}. The symptom abstraction process must always raise the abstraction level for the newly created {\dc}. Using $\abslev$ (as described in~\ref{sec:alpha}) to symbolise the fault abstraction level, we can now state: -$$ \bowtie({\FG}^{\abslev}) \rightarrow c^{{\abslev}+N} | N \ge 1. $$ +$$ \derivec({\FG}^{\abslev}) \rightarrow c^{{\abslev}+N} | N \ge 1. $$ \paragraph{Functional Groups may be indexed.} We will typically have more than one {\fg} on each level of FMMD hierarchy ( expect the top level where there will only be one) @@ -1227,12 +1227,27 @@ we could index the {\fgs} with a sub-script, and can then uniquely identify them For example ${\FG}^{3}_{2}$ would be the second {\fg} at the third level of abstraction in an FMMD hierarchy. \paragraph{The symptom abstraction process in outline.} -The $\bowtie$ function processes each component in the {\fg} and -extracts all the component failure modes. -With all the failure modes, an analyst can -determine how each failure mode will affect the {\fg}, and then collect common symptoms. -A new {\dc} is created -where its failure modes, are the symptoms from {\fg}. +The $\derivec$ function processes a functional group and returns a derived component. +Firstly, all the failure modes from all the components in the {\fg} +are used to create failure scenarios, which can be single failure modes +or combinations of failure modes (where unitray state failure mode constraints do not apply). +% +With all the failure scenarios, an analyst can +determine how each scenario will affect the {\fg}. +This will give one failure mode behaviour result for each failure scenario. +With these results, we collect common symptoms. +That is to say, that many of the resultant failure modes, will ehibit the same symptom of failure from the perspective +of a user of the {\fg}. +% +We now can treat the functional group as a sort of `super~component'. +% +In order to make this new `super~component' usable, it needs to be in the form of a +component, that is it has a name, and a set of failure modes. +We can do this by creating a new {\dc} and assigning a name to it, as as its set of +failure modes, the failure symptoms from the {\fg} from which it was derived. +%A new {\dc} is created +%where its failure modes, are the symptoms from {\fg}. +% Note that the component must have a higher abstraction level than the {\fg} it was derived from. @@ -2278,20 +2293,20 @@ consider DC as being in the set of components i.e. $DC \in \mathcal{C}$ Where $\mathcal{FG}$ is the set of all sets of functional groups, and $\mathcal{DC}$ is the set of all derived components, we can define the symptom abstraction process thus: $$ -%\bowtie : SubSystemComponentFaultModes \rightarrow DerivedComponent -\bowtie : \mathcal{FG} \rightarrow \mathcal{DC} . +%\derivec : SubSystemComponentFaultModes \rightarrow DerivedComponent +\derivec : \mathcal{FG} \rightarrow \mathcal{DC} . $$ Given by -$ \bowtie ( FG ) = DC $ +$ \derivec ( FG ) = DC $ as per the example in precedeing section \ref{theoreticalsx}. -\paragraph{Extending $\bowtie$ to {\dcs}} +\paragraph{Extending $\derivec$ to {\dcs}} -It is useful to further define the $\bowtie$ function, to +It is useful to further define the $\derivec$ function, to take the failure modes from derived components (as well as base components) and return a new derived component. -This generalises the function $\bowtie$ and allows us to build +This generalises the function $\derivec$ and allows us to build hierarchical failure mode models. Where a {\fg} is composed of derived components, for sake of example @@ -2301,7 +2316,7 @@ $FG_{derived} = \{ DC_1, DC_2, DC_3 \}$. $DCFM$ is a set of failure modes from the new {\fg} $FG_{derived},$ $DCFM = fm(FG_{derived})$. -We can apply the symptom abstraction process $\bowtie$ +We can apply the symptom abstraction process $\derivec$ to the {\fg} comprised of derived components because we can obtain a failure mode set, (the failure mode set we have named $DCFM$). @@ -2312,24 +2327,24 @@ $FG_{derived}$ shown in equation \ref{eqn:fgderived}. \begin{equation} \label{eqn:fgderived} - \bowtie ( FG_{derived} ) = DC_{derived} + \derivec ( FG_{derived} ) = DC_{derived} \end{equation} The case where a {\fg} has been created from {\dcs} -using function `$\bowtie$' leads us to +using function `$\derivec$' leads us to {\dc}s at a higher level of failure mode abstraction. A notation will be described in the next section to keep track of the abstraction level of a {\dc}. %%$$ -%\bowtie : SubSystemComponentFaultModes \rightarrow DerivedComponent -%%\bowtie : FG_{derived} \rightarrow DC +%\derivec : SubSystemComponentFaultModes \rightarrow DerivedComponent +%%\derivec : FG_{derived} \rightarrow DC %%$$ % %\begin{equation} -% \bowtie(FG_{cfm}) = DC +% \derivec(FG_{cfm}) = DC %\end{equation} % %or applying the function $fm$ to obtain the $FG_{cfm}$ set @@ -2338,7 +2353,7 @@ to keep track of the abstraction level of a {\dc}. %%we may state the process of %%analysing the failure modes in the {\fg} and returning a {\dc} thus: %%\begin{equation} -%% \bowtie((FG)) = DC +%% \derivec((FG)) = DC %%\end{equation} @@ -2350,7 +2365,7 @@ with each iteration the model becomes more abstract will eventually reach the SYSTEM level. %The $SS_{fm}$ set of fault modes can be represented as a diagram with each fault~mode of $SS$ being a contour. -%The derivation of $SS_{fm}$ is represented graphically using the `$\bowtie$' symbol, as in figure \ref{fig:gensubsys4} +%The derivation of $SS_{fm}$ is represented graphically using the `$\derivec$' symbol, as in figure \ref{fig:gensubsys4} % \begin{figure}[h+] % \centering @@ -2388,8 +2403,8 @@ fm : FG \rightarrow \mathcal{F} Where $\mathcal{FG}$ is the set of all sets of functional groups, and $\mathcal{DC}$ is the set of all derived components, we can define the symptom abstraction process thus: $$ -%\bowtie : SubSystemComponentFaultModes \rightarrow DerivedComponent -\bowtie : \mathcal{FG} \rightarrow \mathcal{DC} . +%\derivec : SubSystemComponentFaultModes \rightarrow DerivedComponent +\derivec : \mathcal{FG} \rightarrow \mathcal{DC} . $$ The next section describes the details of the symptom extraction process. @@ -2406,7 +2421,7 @@ this section %describes the symptom abstraction process using set theory and procedural descriptions. % -The {\em symptom abstraction process} (given the symbol `$\bowtie$') takes a functional group $FG$ +The {\em symptom abstraction process} (given the symbol `$\derivec$') takes a functional group $FG$ and a new derived~component/sub-system $DC$. %The sub-system $SS$ is a collection %of failure~modes of the sub-system. @@ -2422,7 +2437,7 @@ as a component with a known set of failure modes. We can assign an attribute of abstraction level $\abslev$ to components, where $\abslev$ is a natural number, ($\abslev \in \mathbb{N}_0$). For a base component, let the abstraction level be zero. -If we apply the symptom abstraction process $\bowtie$, +If we apply the symptom abstraction process $\derivec$, the resulting derived~component will have an $\abslev$ value one higher that the highest $\abslev$ value of any of the components in the functional group used to derive it. @@ -2453,7 +2468,7 @@ naturally formed with the abstraction levels increasing with each tier. %\ENDFOR -The algorithm, represented by the symbol `$\bowtie$', has been broken down into five consecutive stages. +The algorithm, represented by the symbol `$\derivec$', has been broken down into five consecutive stages. %These are described using the Algorithm environment in the next section \ref{algorithms}. By defining the process and describing it using set theory. Constraints and verification checks in the process are stated formally. @@ -2463,11 +2478,11 @@ verification checks in the process are stated formally. \section{Algorithmic Description of Symptom Abstraction} %\clearpage -$$ \bowtie: \mathcal{FG} \rightarrow \mathcal{DC} $$ +$$ \derivec: \mathcal{FG} \rightarrow \mathcal{DC} $$ \begin{algorithm}[h+] -\caption{Derive new `Component' from Functional Group: $\bowtie(FG)$} \label{alg66} +\caption{Derive new `Component' from Functional Group: $\derivec(FG)$} \label{alg66} \begin{algorithmic}[1] diff --git a/submission_thesis/CH5_Examples/Makefile b/submission_thesis/CH5_Examples/Makefile index 2e44bc8..012686d 100644 --- a/submission_thesis/CH5_Examples/Makefile +++ b/submission_thesis/CH5_Examples/Makefile @@ -32,3 +32,7 @@ copy: $(PNG_DIA) bib: bibtex discussion_doc #makeindex opamps.glo -s opamps.ist -t opamps.glg -o opamps.gls + + +clean: + rm ${PNG_DIA} diff --git a/submission_thesis/CH5_Examples/circuit1_dag.png b/submission_thesis/CH5_Examples/circuit1_dag.png index bfdeef4..d918dc8 100644 Binary files a/submission_thesis/CH5_Examples/circuit1_dag.png and b/submission_thesis/CH5_Examples/circuit1_dag.png differ diff --git a/submission_thesis/CH5_Examples/circuit2h.dia b/submission_thesis/CH5_Examples/circuit2h.dia index e9a6417..21976db 100644 Binary files a/submission_thesis/CH5_Examples/circuit2h.dia and b/submission_thesis/CH5_Examples/circuit2h.dia differ diff --git a/submission_thesis/CH5_Examples/circuit2h.png b/submission_thesis/CH5_Examples/circuit2h.png index c40c795..72b976e 100644 Binary files a/submission_thesis/CH5_Examples/circuit2h.png and b/submission_thesis/CH5_Examples/circuit2h.png differ diff --git a/submission_thesis/CH5_Examples/copy.tex b/submission_thesis/CH5_Examples/copy.tex index e862f3a..804cb36 100644 --- a/submission_thesis/CH5_Examples/copy.tex +++ b/submission_thesis/CH5_Examples/copy.tex @@ -475,7 +475,7 @@ mode model of the system under investigation. \end{figure} Figure~\ref{fig:treeabslev} shows an FMMD hierarchy, where the process of creating a {\dc} from a {\fg} -is shown as a `$\bowtie$' symbol. +is shown as a `$\derivec$' symbol. diff --git a/submission_thesis/CH5_Examples/dubsim1.dia b/submission_thesis/CH5_Examples/dubsim1.dia index 20163df..5c3d96c 100644 Binary files a/submission_thesis/CH5_Examples/dubsim1.dia and b/submission_thesis/CH5_Examples/dubsim1.dia differ diff --git a/submission_thesis/CH5_Examples/poss1finalbubba.dia b/submission_thesis/CH5_Examples/poss1finalbubba.dia index 6576d54..0d861de 100644 Binary files a/submission_thesis/CH5_Examples/poss1finalbubba.dia and b/submission_thesis/CH5_Examples/poss1finalbubba.dia differ diff --git a/submission_thesis/CH5_Examples/poss2finalbubba.dia b/submission_thesis/CH5_Examples/poss2finalbubba.dia index 79126ce..8fcaacd 100644 Binary files a/submission_thesis/CH5_Examples/poss2finalbubba.dia and b/submission_thesis/CH5_Examples/poss2finalbubba.dia differ diff --git a/submission_thesis/CH5_Examples/shared_component.dia b/submission_thesis/CH5_Examples/shared_component.dia index 0b6dcae..39ce541 100644 Binary files a/submission_thesis/CH5_Examples/shared_component.dia and b/submission_thesis/CH5_Examples/shared_component.dia differ diff --git a/submission_thesis/CH5_Examples/three_tree.dia b/submission_thesis/CH5_Examples/three_tree.dia index 716fdbe..6b1b5a0 100644 Binary files a/submission_thesis/CH5_Examples/three_tree.dia and b/submission_thesis/CH5_Examples/three_tree.dia differ diff --git a/submission_thesis/CH5_Examples/tree_abstraction_levels.dia b/submission_thesis/CH5_Examples/tree_abstraction_levels.dia index 8abbb57..c21f352 100644 Binary files a/submission_thesis/CH5_Examples/tree_abstraction_levels.dia and b/submission_thesis/CH5_Examples/tree_abstraction_levels.dia differ diff --git a/submission_thesis/style.tex b/submission_thesis/style.tex index 1b0561e..a93d89f 100644 --- a/submission_thesis/style.tex +++ b/submission_thesis/style.tex @@ -15,6 +15,7 @@ \setlength{\textwidth}{160mm} \setlength{\textheight}{220mm} \setlength{\oddsidemargin}{0mm} \setlength{\evensidemargin}{0mm} % +\newcommand{\derivec}{{D}} \newcommand{\abslev}{\ensuremath{\alpha}} \newcommand{\oc}{\ensuremath{^{o}{C}}} \newcommand{\adctw}{{${\mathcal{ADC}}_{12}$}}