Sneak Analysis - Part 1 - Method and Procedure
Sneak Analysis - Part 1 - Method and Procedure
Sneak Analysis - Part 1 - Method and Procedure
14 October 1997
EUROPEAN COOPERATION
ECSS
FOR SPACE STANDARDIZATION
Space Product
Assurance
ECSS Secretariat
ESA--ESTEC
Requirements & Standards Division
Noordwijk, The Netherlands
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
2
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Foreword
This standard is one of the series of ECSS standards intended to be applied to-
gether for the management, engineering and product assurance in space projects
and applications. ECSS is a cooperative effort of the European Space Agency,
National Space Agencies and European industry associations for the purpose of
developing and maintaining common standards.
The application of Sneak Analysis is required by ECSS--Q--40 “Safety”.
This standard has been prepared by editing the ESA Standard PSS--01--411 Issue
1, reviewed by the ECSS Technical Panel and approved by the ECSS Steering
Board.
3
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
4
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Contents list
Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Normative references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
5.5 Sneak path analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.6 Design concern analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.7 Assessment of sneak circuit consequences . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.8 Reporting of findings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.9 Compilation of the final report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
C.1 Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
C.2 Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
C.3 Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Figures
Tables
6
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Scope
The aim of Sneak Analysis is to identify “sneak circuits”, i.e. unexpected paths for
a flow of mass, energy, data or logical sequence that under certain conditions can
initiate an undesired function or inhibit a desired function. Sneak circuits are not
the result of failure, but are latent conditions, inadvertently designed into the
system.
This standard establishes a procedure for performing sneak analysis and spec-
ifies the required output.
The standard is composed of two parts:
D part 1 (i.e. this document ECSS--Q--40--04 Part 1 “Sneak analysis -- Part 1:
Method and procedure”) that contains the method and procedure for per-
forming sneak analysis;
D part 2 (i.e. the document ECSS--Q--40--04 Part 2 “Sneak analysis -- Part 2:
Clue list”) that contains a basic clue list to be used during sneak analysis.
This standard is applicable when the performance of sneak analysis is required
by ECSS--Q--40 or by the contract between the customer and the supplier.
Alternative sneak analysis procedures proposed by the supplier may be accepted
by the customer provided that equivalence, for the intended application, with the
one presented in this standard is shown by the supplier.
7
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
8
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Normative references
9
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
10
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
3.1 Definitions
For the purposes of this standard, the definitions given in ECSS--P--001 apply. In
particular, it should be noted that the following terms have a specific definition
for use in ECSS standards.
Configuration Item
Failure
Severity
Software
System
The following terms and definitions are specific to this standard and shall be ap-
plied.
“Clue
A question pointing at a possible way through which design errors associated
with one or more items of a system can lead to system malfunction.”
“Design concern
The result of a misapplication (or omission of application) of a design requirement
or rule to one item of a system.”
“Design Error
A misapplication (or omission of application) of one or more requirements (i.e. the
ones contained in requirement documents or specifications) or design rules (i.e.
the rules that are used by the designers to synthesise a design that meets the de-
sign requirements) during the design process.”
NOTE Sneak circuits and design concerns are manifestations of design
errors
“Facilitation Condition
A combination of states of system components (e.g. interlocks) that enables the
condition mentioned in a clue to be triggered.”
11
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
“Sneak Circuit
An unexpected path for a flow of mass, energy, data or logical sequence that under
certain conditions can initiate an undesired function or inhibit a desired function.
Sneak circuits are not the result of failures, but are latent conditions, inadver-
tently designed into the system.
Sneak circuits include: sneak paths, sneak timings, sneak indications and sneak
labels.”
“Sneak indication
Ambiguous or false display of system operating conditions that can cause the sys-
tem or an operator to take undesired action.”
“Sneak label
Incorrect or imprecise labelling of system functions (e.g. controls, displays) that
can cause an operator to apply incorrect stimuli to the system.”
“Sneak path
An unexpected path along which mass, energy, data or logical sequence flow in
an unintended direction.”
“Sneak timing
Occurrences of events in an unexpected or conflicting sequence, or at an unex-
pected time, or for an unexpected duration. Therefore sneak timings could also
occur if mass, energy, data or logical control flow along intended paths without
respecting the intended dynamic behaviour of the system.”
“Source
An item of a system which contains mass, energy or data.”
“Target
An item of a system the unwanted activation or inhibition of which can trigger
an undesired event.”
3.2 Abbreviations
The following abbreviations are defined and used within this standard.
Abbreviation Meaning
FMECA Failure Modes, Effects and Criticality Analysis
HW Hardware
I/O Matrix Input/Output Matrix
PA Product Assurance
RAMS Reliability, Availability, Maintainability and Safety
SADT Structured Analysis and Design Technique
SART Structured Analysis Real Time
SW Software
12
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
13
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
example is: During change of state of switches, can transitory current paths
exist?
D “component” clues, that are applied to system components during design con-
cern analysis and are also derived from experience. They are dependent on the
type of system. For an integrated circuit an example is: Have the maximum
frequency conditions been taken into account?
14
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Preparation
Analysis performance
-- Path identification
-- Consultation with
-- Application of path Immediate answer
specialists
and path + component Further analyses -- Simulation
clues needed -- Breadboard
-- Testing
5.6 Design concern analysis
-- Application of
component clues Immediate answer
Further analyses
needed
Analysis conclusion
End
15
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
D User manual (including operation procedures)
D Results of preliminary RAMS analyses (e.g. Functional failure analysis, pre-
liminary hazard analysis)
D Results of functional analysis
Lower Level (for Hardware)
D Subsystem requirements
D Subsystem design
D Equipment requirements
D Equipment design (including drawings)
D Component specification (data sheets)
D (6) Results of worst case analysis
D (6) Results of part stress analysis
D (6) Development testing results
Lower Level (for Software)
D User requirements
D Software requirements
D Architectural design
D Detailed design
D (6) Results of software verification and validation activities
According to the scope of the analysis and its depth some of the above data might
not be relevant.
The data marked with “(6)”, when available, might be useful to avoid duplication
with other analyses/activities. However they do not generally contain the raw
input data (e.g. requirements, drawings) for sneak analysis as the other listed
documents do.
Most of the above quoted raw input data are generally contained in the system
(subsystem, equipment) design specification and (for software) in the source code
and detailed design.
For example, some of the inputs useful for sneak analysis that can be found in an
(electrical) equipment design specification are:
D product description;
D top level diagram;
D functional characteristics (e.g. functions of each board);
D limitations (e.g. lifetime);
D external electrical interfaces;
D internal electrical interfaces;
D electrical schematics (including interface circuits);
D technical characteristics (not those required but those really implemented in
the design, e.g. power line protection, grounding);
D parts list.
In the software detailed design the following data are of use for sneak analysis:
D software architecture describing the software decomposition in functions,
their inter-relationships and sequencing;
D for each software item: function, subordinates, dependencies, interfaces, re-
sources, processing, data;
D source code listing.
16
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
4.4.1 Expertise
It is important that the analysis team contain at least one design specialist in the
domain (e.g. electrical, electronics) of the system to be analysed . In any case, a
discussion on the preliminary findings of the sneak analysis is needed between
the analysis team and the designers of the system concerned in order to screen-
out possible false problems raised during the analysis and to synthesise the rec-
ommendations for the design changes needed to eliminate the sneak circuits.
17
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
Finally, it is noted that sneak analysis is particularly well suited for electrical sys-
tems and electronics system composed by discrete components and relatively few
integrated circuits.
18
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.1.1 Inputs
The following inputs should be used:
a. the requirements on Sneak Analysis contained in the contract (if any);
b. the documents containing the design and operation data for the system con-
cerned (e.g. see 4.3);
c. the results of other RAMS analyses such as preliminary hazard analysis and
functional failure analysis;
d. the list of aspects to be considered included in Table 1.
5.1.2 Contents
To identify the items to be analysed, the following steps should be performed.
1. Check whether the Contract contains specific requirements on Sneak
Analysis:
-- if yes, perform step 2 below;
-- if not, perform step 3 below.
19
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
2. Take into account the requirements contained in the contract (e.g. “Sneak
Analysis to be applied to safety critical functions”) and by means of the
data contained in the documents quoted under 5.1.1.b and the results of
the RAMS analyses quoted under 5.1.1.c., define a list of functions and/or
items that are to be analysed. Define also the phases of the mission to be
considered. Go to step 4.
3. By means of the result of RAMS analyses quoted under 5.1.1.c, identify
the list of safety and reliability critical functions. Answer to the questions
contained in Table 1 for each of the the items contained in the safety or
reliability critical functions (in general a “yes’”answer to a question con-
tained in table increases either the likelihood that the item could contain
sneak circuits or the magnitude of the consequences of the manifestation
of a sneak circuit). Synthesise the results obtained through the applica-
tion of the questions contained in Table 1.
4. To define the level of depth of the analysis, take into account the results
of step 2 (or 3) and, according to the available documentation, check
whether the analysis is to be performed at lower levels (e.g. subsystem,
assembly, equipment or component level). This can be done by using at
the relevant level the questions of Table 1.
5.1.3 Outputs
The following information shall be identified:
a. the items that are to be analysed;
b. the mission phases to be considered;
c. the level of depth to be reached.
20
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Programmatic aspects
D Are there several interfaces manufactured by different suppliers?
D Have many modifications occurred since the beginning of the programme?
D Are many modifications expected?
21
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
5.2 Data gathering
The aim of this task is to collect the input data necessary for the performance of
a Sneak Analysis.
5.2.1 Inputs
The following inputs should be used:
a. list of items under analysis (see task “definition of analysis scope”);
b. level of depth of the analysis (see task “definition of analysis scope”);
c. the documents (e.g. see 4.3) containing the design and operations data for the
above quoted items;
d. the clue list (see 2.1).
5.2.2 Contents
The following sub-tasks should be performed.
22
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.2.3 Outputs
The following information shall be identified:
a. the parts of the documentation that are relevant for the analysis;
b. the points where a lack of homogeneity has been identified;
c. the requests for additional information or clarification;
d. the definition of the interfaces of the items that are to be analysed;
e. the clue list to be used for the application.
23
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
5.3 Hierarchical design decomposition
The aim of this task is to produce a decomposition into “blocks” of the design of
the items that are subject to Sneak Analysis. For each block the (sub)functions
performed and the inputs and outputs are documented. This hierarchical decom-
position is of use during the following tasks of the analysis because:
D it allows the systems to be subdivided into blocks that are easily manageable
(both in terms of size and understandability) by the analysts;
D it establishes a clear cross-reference between the required functions and the
actual design;
D it supports the assessment of the consequences of the sneak circuits (see sub-
clause 5.7).
5.3.1 Inputs
The following inputs should be used:
a. the list of items that are included in the scope of the analysis (see task “defini-
tion of the analysis scope”);
b. the depth of the analysis (see task “definition of the analysis scope”);
c. the documentation relevant to the items under analysis (see task “data
gathering”);
d. the items’ interfaces (see task “data gathering”).
5.3.2 Contents
If a hierarchical decomposition compatible with the one described in this clause
is already available as a result of other Product Assurance or engineering acti-
vities (e.g. in the form of SADT, SART, Data flow diagrams), this task should not
be performed.
Otherwise the following sub-tasks should be performed on the items within the
scope of the analysis.
24
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Figure 2A
Legend: In “Snm”, “n” is the block number and “m” is the signal number
Figure 2B
25
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
5.3.2.2 Documentation of the design decomposition
Document the following information for each block:
D system concerned;
D description of the block;
D block diagram (e.g. see Figure 2B for block F);
D functions performed by the block;
D design characteristic of the block;
D interfaces with other blocks.
5.3.3 Outputs
Through performance of this task , a hierarchical decomposition into blocks of the
items to be analysed shall be derived.
26
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.4.1 Inputs
The following inputs should be used:
a. the list of items that are included in the scope of the analysis (see task “defini-
tion of the analysis scope”);
b. the level of depth of the analysis (see task “definition of the analysis scope”);
c. the mission phases that are to be considered for the various items (see task
“definition of the analysis scope”);
d. the documentation relevant for the items under a. (see task “data gather-
ing”);
e. the design blocks associated with the items under consideration (see task “hi-
erarchical design decomposition”).
5.4.2 Contents
If the input/output matrix and the operational sequence representation are al-
ready available as a result of product assurance or engineering activities in a for-
mat that is compatible with the one described in the following, this task should
not be performed.
Otherwise the following sub-tasks should be performed.
27
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
Table 2: Example of input/output matrix
Reset mode 0 1 0 1 0 1 0 0
Wait mode 1 0 0 1 0 0 1 0
Heater 1 0 0 1 1 0 1 0
transition
Heater mode 1 0 1 1 1 0 0 1
Safe mode 1 1 0 1 1 0 1 0
5.4.3 Outputs
Through performance of this task (or retrieval of outputs from other product as-
surance or engineering tasks) the following information shall be derived:
a. input/output matrix at the first level of design decomposition;
b. identification of instances of simultaneous switching;
c. input/output matrices for some of the lower level blocks (and list of relevant
blocks).
d. operational sequence representation for the items under analysis.
28
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.5.1 Inputs
The following inputs should be used:
a. the list of items that are included in the scope of the analysis (see task “defini-
tion of the analysis scope”);
b. the design decomposition of the above items (see task “hierarchical design de-
composition”);
c. the input/output matrix (see task “synthesis of input/output matrix”);
d. the results of the top-level RAMS analyses (e.g. preliminary hazard analysis,
functional failure analysis);
e. the documentation relevant for the items under analysis (see task “data
gathering”);
f. the instance of simultaneous switching of different items (see task “synthesis
of input/output matrix”);
g. the operational sequence representation (see task “synthesis of input/output
matrix”).
5.5.2 Contents
It is noted that these “undesired causal relations” are the “path clues” (see
also 4.1 and Annex A) that are relevant for the sources and targets under
examination.
29
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
5.5.2.4 Identification of the resource paths
a. The paths that link the sources to the targets through the system structure
(e.g. electrical drawings) should be identified for each operational mode. The
analyst can thus follow the flow of the resource on the path.
b. For those parts of the items that have a complex structure, the task may be
simplified in some cases by replacing the actual structure by the relevant
block (see task “hierarchical design decomposition”).
c. The paths should be identified through the following steps (see Figure 3 for
an illustration of the process):
1. choose a target;
2. select an undesired relation (“path clue”) between a target and one or
more sources (e.g. target is “off” when sources are “on”);
3. choose a source;
4. select an operational mode;
5. trace all the paths between the target and the source that are compatible
with:
* the input/output matrix;
* the characteristics of the components between the source and the
target (e.g. in electrical systems a diode allows current to flow in only
one direction);
* the undesired relation under consideration (e.g. for targets asso-
ciated with required functions, the paths that can disconnect the
target from the source[s] will be searched. For targets associated
with undesired functions, any path that can connect any of the
sources to the target will be searched);
6. repeat step 5 until there are no more operational modes.
30
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
1. choose a target
3. choose a source
End
31
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
7. select a new source and repeat steps 4 to 6 until all sources have been dealt
with. At this stage:
(a) if the identified paths do not provide a route for the actual occurrence
of the undesired relation, go to the next undesired relation (step 8);
(b) if the paths allow the undesired relation to occur then a potential
sneak circuit has been found. The designers shall be consulted to
check whether the problem is a real one. If this is the case, the sneak
circuit consequences shall be assessed (see task “assessment of sneak
circuit consequences”);
(c) if it cannot be decided whether there is a sneak circuit or not, per-
form the sub-task “Detailed path analysis” (see 5.5.2.5 below). Addi-
tionally if there are items on the paths that are controlled by soft-
ware, perform the “hardware/software path analysis” (see 5.5.2.6
below).
8. repeat steps 2 to 7 until all undesired relations have been dealt with;
9. repeat steps 1 to 8 until all targets have been dealt with.
For manual identification of path, it is useful to have a number of copies of the
drawings/diagrams/flow charts on which the various paths can be marked. The
availability of a computer program is obviously beneficial for performing the path
identification.
32
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Clue application
- switching matrix
- inspection of the drawings, ... - consultation of experts
- consultation of the documentation - detailed quantitative analysis
- identification of “facilitation - breadboard or prototype testing
conditions”
- simple quantitative analysis
END
33
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
TARGET
“facilitation” component
SOURCE
34
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.5.3 Outputs
The following information shall be derived:
a. list of targets;
b. list of sources;
c. intended relations between sources and targets;
d. undesired relations (path clues) between sources and targets;
e. sneak circuits.
5.6.1 Inputs
The following inputs should be used:
a. the list of “atomic items”, i.e. the ones at the lower hierarchical level of design
decomposition that is of interest (see task “definition of analysis scope”);
b. the documentation relevant for the items under a. (see task “data gather-
ing”);
c. the list of operational modes (see task “definition of analysis scope”);
d. the hierarchical design decomposition (see associated task).
5.6.2 Contents
The following steps 1 to 4 should be performed for all atomic items:
1. Select an operational mode.
2. Apply the “component” clues that match the characteristic of the item and
are relevant during the selected operational mode. For each clue, try and
provide an answer according to the process shown in Figure 6.
3. Treat drawing errors spotted during the application of the component
clues as design concerns (or sneak labels if they are related to labelling
of man-machine interfaces). Flag missing information instances to engin-
eering.
35
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
SELECT AN ITEM
has a designconcern
been found?
YES
NO
END
36
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.6.3 Outputs
The following outputs shall be produced:
a. design concerns;
b. missing information instances;.
c. sneak labels.
5.7.1 Inputs
The following inputs should be used:
a. the list of items subjected to the sneak analysis (see task “definition of the
analysis scope”);
b. the list of operational modes (see task “definition of the analysis scope”);
c. the design blocks (see task “hierarchical design decomposition”);
d. the list of sneak circuits (see tasks “sneak path analysis” and “design concern
analysis”);
e. the list of design concerns (see task “design concern analysis”).
5.7.2 Contents
For each sneak circuit or design concern identified during the previous tasks the
following steps shall be performed.
1. Retrieve the operational mode(s) under which the sneak circuit or design
concern was identified.
2. Assess the consequences of the sneak circuit or design concern on the next
higher hierarchical level of design decomposition. In doing so, take into
account:
* the operational mode;
* the characteristic of the design as described in the relevant blocks
(see task “hierarchical design decomposition”).
3. Repeat step 2 for the next higher decomposition level until the highest
level under consideration is reached. Document the consequence on
safety and/or reliability associated with the sneak circuit or design con-
cern under consideration.
4. Repeat steps 1 to 3 until there are no more sneak circuits or design con-
cerns.
NOTE In performing step 2 use can be made of the results of other
RAMS analyses (e.g. FMECA). It is also beneficial at this stage
to integrate the results of sneak analysis with the ones obtained
by other analyses (e.g. FMECA, hazard analysis) that are per-
formed in parallel. This will ensure consistency of the recom-
mendations for the elimination of the sneak circuits or design
concerns with the ones issued by the other RAMS analyses.
37
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
5.7.3 Outputs
The consequences on safety and/or reliability of each sneak circuit and design
concern shall be documented.
5.8.1 Inputs
The following inputs should be used:
a. the sneak circuits and associated consequences (see task “assessment of
sneak circuit consequences”);
b. the design concerns and associated consequences (see task “assessment of
sneak circuit consequences”);
c. the documentation identified during the task “data gathering”;
d. the list of items subject to sneak analysis (see task “definition of analysis
scope”);
e. the mission phases to be considered (see task “definition of analysis scope”);
f. the design blocks (see task “hierarchical design decomposition”).
5.8.2 Contents
5.8.3 Outputs
The sneak circuit reports containing the information required in Annex B shall
be issued.
38
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
5.9.1 Inputs
The inputs that should be used for this task are all the outputs from the previous
tasks.
5.9.2 Contents
5.9.2.1 Compilation
The supplier shall compile the sneak analysis report, including as a minimum the
information listed in clause 6.
5.9.3 Outputs
The sneak analysis report shall be issued.
39
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
40
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
41
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
42
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Annex A (informative)
43
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
The above approach for the identification of path clues is a viable one if the total
number of binary sources (N) and targets (M) considered is reasonably small.
Otherwise the coverage of all the possible path clues (2**[N+M]) becomes un-
wieldy (if not impossible) for complex systems. In this last case, the analyst should
limit the number of relevant path clues by:
S checking whether some targets are related only to a subset of sources; and
S using path clues that are related only to the most critical targets (according
to the results of preliminary hazard analysis and functional failure analy-
sis).
44
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Annex B (normative)
45
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
DESCRIPTION OF FUNCTION/ITEM:
PROBLEM TITLE:
PROBLEM TYPE:
SNEAK SNEAK SNEAK SNEAK DESIGN
PATH TIMING INDICATION LABEL CONCERN
ANALYST
prepared by
ANALYST APPROVAL
prepared by PA Manager Project Manager
Name, date & signature Name, date & signature Name, date & signature
46
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Annex C (normative)
The aim of this task is to identify “facilitation conditions” related to the software
which can lead to the unwanted activation or deactivation of equipment.
C.1 Inputs
The following inputs should be used:
a. the list of items that are included in the scope of the analysis (see task “defini-
tion of the analysis scope”);
b. the design decomposition of the above items (see task “hierarchical design de-
composition”);
c. the relevant input/output matrices (see task “synthesis of input/output ma-
trix);
d. the results of the “top level” RAMS analysis (e.g. preliminary hazards analy-
sis, functional failure analysis);
e. the documentation relevant for the items under analysis (see task “data
gathering”).
f. the targets, sources, the undesired relations (and the corresponding paths)
between target and sources, that were identified at HW/SW level (see task
“sneak path analysis).
C.2 Contents
C.2.1 Preparation
a. By reviewing the results (see C.1.f) of sneak path analysis at HW/SW level,
the hardware items that are controlled by software shall be identified;
b. using the documentation (see C.1.e) on the HW/SW interfaces and on the soft-
ware, the control commands and data issued by the software to the hardware
items shall be identified;
c. the inputs to the software under analysis coming from the other hardware
or software items shall also be identified.
47
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
C.2.2 Sneak path analysis in computer software
The following procedure for sneak path analysis in computer software should be
followed:
1. choose as “intermediate targets” for the analysis in the software the com-
mands and data outputs identified by performing sub--task C.2.1;
2. pick--up one intermediate target in the scope of the analysis;
3. trace a (facilitation) path in the software flow chart or data flow diagram
backwards from the intermediate target to the software inputs (e.g. input
registers, data initialisation instructions, operator commands, program
start). Record the “logical condition” necessary for the path to be followed
(e.g. if a path traverses the statement “IF x>0 THEN ...”, the logical condi-
tion for the “YES” branch is “x>0”);
4. check the path as it is built up by comparing it with the input/output ma-
trix. If there is no operating mode which allows the path to be activated,
abandon the path. Also abandon the path if the logical condition for the
path simplifies to “FALSE”;
5. continue the path trace as far as the software inputs;
6. apply software “component+path” clues to the software instructions (e.g.
conditionals, loops, function calls, assignments) along the path;
7. assess whether the software can lead to the unwanted or untimely activa-
tion (or deactivation) of the intermediate target.
8. repeat steps 3 to 7 for the various paths through the software under
analysis. It is noted that the number of paths to be analysed is limited for
software where the two following requirements apply (as it generally the
case nowadays):
* the software shall be composed of modules;
* each software shall have low cyclomatic complexity (e.g. less 10).
If for the software under analysis the two above quoted requirements are
not applicable, then appropriate heuristic criteria might need to be de-
fined, in coordination with the software engineering and product assur-
ance functions, to keep under control the number of paths to be analysed.
9. repeat steps 3 to 8 for all intermediate targets;
10. by reviewing the results of the above steps check that the software com-
mands are provided according to the required sequence and the software
output data is within the allowed ranges.
C.3 Outputs
The following outputs shall be derived:
a. list of intermediate targets;
b. facilitation conditions in the software that lead to unwanted or untimely ac-
tivation (or deactivation) of the intermediate targets;
c. list of cases where improper sequence of commands or improper output data
is produced by the software.
48
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
Annex D (informative)
Bibliography
A list of papers, available in the public literature, that contain either useful in-
formation about aspects of the sneak analysis procedure or examples of applica-
tion of the procedure is included in this Annex. A short comment has been added
after certain papers to explain the objective of the paper (if this is not clear from
the title).
a. Taylor, J.R., Sneak analysis course notes, ITSA 90--11--1, October 1991.
Section 3, 4, 5 of this report contain guidance and examples anout the application of
the the sneak path analysis (see section 5.5 of this standard). The report is available
through the ESA/ESTEC/QP division.
b. Proceedings of the sneak analysis workshop, ESA/ESTEC WPP--033, Noord-
wijk, June 1992.
The results of several applications of sneak analysis in Europe are summarized in
these proceedings. They could be of use mainly with respect to the tasks described
in sections 5.1, 5.2, 5.3, 5.6, 5.7, 5.8 of this standard. These proceedings are available
through the ESA/ESTEC Technical documentation center.
c. Sneak circuit analysis. A means to verify design integrity, USA Departement
of the Navy, NAVSO P--3634, August 1987
This report provides an overview about sneak analysis benefits and applicability, an
outline of results of previous applications of sneak analysis in the USA and guidance
on its implementation. It is noted that the sneak analysis procedure is different from
the one contained in this standard. This report could be of use with respect to the tasks
described in sections 5.1, 5.2, 5.4 and 5.6 of this standard.
d. Dore, B., Lessons learned from pilot applications of sneak analysis in space
projects, ESA SP--337, pp. 359--363, Noordwijk, May 1996.
e. Dore, B. & Norstrom, J.G., Pilot application of sneak analysis on computer
controlled satellite equipment, Proceedings of Probabilistic Safety Asses-
sment and Management Conference, pp. 1590--1596, Springer, London, 1996
This paper could be of use with respect to the task described in Annex C of this stan-
dard.
f. De Mateo, G., Application of sneak analysis to hydraulic systems, ESA/
ESTEC EWP--1801, Noodwijk, October 1994.
This report contains the results of an application of Sneak path analysis to hydraulic
(e.g. propulsion) systems. It could be of use with respect to the tasks described in sec-
49
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
tions 5.4 and 5.5 of this standard. This report is available through the ESA/ESTEC
Technical documentation center.
50
ECSS--Q--40--04A Part 1
ECSS 14 October 1997
6. Originator of recommendation
Name: Organization:
Address: Phone: 7. Date of Submission:
Fax:
E--Mail:
51
ECSS--Q--40--04A Part 1
14 October 1997 ECSS
52