research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
On the Importance of Systematic Testing of Safety Critical Systems
Anneliese Andrews Department of Computer Science University of Denver Denver, CO, USA
research . deploy . Train . evaluate Outline - - PowerPoint PPT Presentation
On the Importance of Systematic Testing of Safety Critical Systems Anneliese Andrews Department of Computer Science University of Denver Denver, CO, USA research . deploy . Train . evaluate Outline
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Anneliese Andrews Department of Computer Science University of Denver Denver, CO, USA
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
ü Test Generation Process ü Phase 1: Generate Failures and Failure Applicability ü Construction of the Applicability Matrix ü Phase2: Generate Safety Mitigation Tests
ü Case Study: Railroad Crossing Control System (RCCS) ü Multiple case study comparison ü Scalability ü Effectiveness
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
ü Communicating EFSM (CEFSM) ü CEFSM = (S, s0, E, P, T,A, M, V, C) ü CEFSMs communicate by exchanging messages through communication channels ü Test Case Generation from CEFSM Model ü Hesse et al., 2007 and Bourhfir et al., 1998. use reachability analysis to generate TCs ü Kovas et al., 2002. use mutation to enable the automation of test selection in a CEFSM model
ü Tribble et al., 2004. Introduce FTA (technique used to detect the specific causes of possible hazards)
ü Ariss et al., 2011, ü Kim et al., 2010 ü Sánchez et al., 2003 Introduce approach for generating test cases
ü Avizienis et al., 2004 ( A Taxonomy of error handling & fault tolerance techs) ü Lerner et al., 2010 ( Identify several patterns)
Analysis only (Not Testing)
¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Ø Phase 1: Generate Failures and Failure Applicability
ü Uses a CEFSM as BM & FT as a FM. ü Make FT compatible with BM ü Transform FT into CEFSM notations & integrate it with the BM. ü Generate tests from the integrated model
Ø Construction of the Applicability Matrix Ø Phase 2: Generate Safety Mitigation Tests
ü Testing proper mitigation where it is required. ü Construct BT from BM using BC ü Generate (p, e) pairs from applicability matrix ü Select (p, e) using CC(c1-c4) ü Construct a MM For each e ü Construct MT & woven into the BT at point of failure. ü Construct SMT to test SCSs.
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
8 ¡
b/x
S0 S2 S1
a/y a/e b/x a/x b/c b/z R0 R2
R1
a/y d/z c/a c/f e/y u0 u
2
e / c
f/x
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
9 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
10 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
11 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
12 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
13 ¡
NOP
S1 ¡ S0 ¡
Mi(e1(e1.eOccurrence=t,e1.eStatus=t)) ¡ Mj(e2(e2.eOccurrence=t,e2.eStatus=t)) ¡ Mi(e1(e1.eOccurrence=t,e1.eStatus=f)) ¡ TotalNoOfEvents NoOfPositiveEvents
Mi(e1(e1.eOccurrence=t,e1.eStatus=t)) ¡ Mi(e1(e1.eOccurrence=t,e1.eStatus=f)) ¡
NOP GateOccurred GateNotOccurred NOP
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Event name Event ID Gate ID B EB1 G1 C EB2 G1 A EB3 G2
14 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
15 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
16 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
17 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
18 ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Ø Behavioral Model BM and Behavioral Test BT
ü Use CEFSM
Ø Determine Failure Scenarios
ü A point of failure is a particular state in a test path at which the failure is injected ü CT = t1 o t2 o t3 ……. o tl ü (1 ≤ p ≤ I) and (1 ≤ e ≤ E).
Ø Coverage Criteria
ü Criteria 1: All combinations, i.e. all positions p, all applicable failure types ü Criteria 2: All unique nodes, all applicable failures. ü Criteria 3: All tests, all unique nodes, all applicable failures. ü Criteria 4: All tests, all unique nodes, some failures
Ø Generate Mitigation Test (MT) from MM Ø Generate SMTs using Weaving Rules
ü determine test t that covers position p. ü keep path represented by t until failure position p. ü apply failure of type e (fe) in p. ü select appropriate mt ∈ Mte based on aggregation criteria to guarantee covering all possible failures and using each mt at least once.
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
We use weaving rules more formally for each type of mitigation. t = {s1..............sb ............node(p)…….. sf ……….sk}
Ø Fix
ü Option 1: Compensate ( (Partial) Fix and proceed ) : smt= s1 ……node(p) mt node(p). ü Option 2: Go to fail-safe state (Fix and stop) : smt= s1 …..node(p) mt.
Ø Rollforward
ü Option 1: Rollforward mitigates the failure, and proceeds: smt = s1 …..node(p) mt sf ……. sk ü Option 2: Deferred fixing: smt = s1 …….node(p) sf mt sf+1 ……. sk .
Ø Rollbackward
ü Option 1: Rollbackward: smt= s1 ……. node(p) mt sb …….. sk ü Option 2: Rollbackward and stop: smt =s1 ….. node(p) mt sb .
Ø Internal compensate (no user action required). Test immediate system fix.
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Mitigation Requirement
MM3: fix and proceed
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Domain BM #BT Len(BT) #F Types #FT Appl. Level M Types Len(MT) SMT S T C1 C2 C3 C4 LV 21 39 5 49 14 4 0.46% 2 16 516 180 180 23 RCCS 14 19 11 58 4 1 0.61% 3 4 178 43 43 15 Insulin Pump 15 23 11 74 4 1 0.66% 3 5 122 54 54 16
BM= Behavioral Model, S= State, T=Transition, BT= Behavioral Test, Len = length, CT= Concatenated Tests, F= Failure, FT= Fault Tree, MT= Mitigation Test, SMT= Safety Mitigation Test, C= Criteria.
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
Domain BM FM CEFSMs EFSM S T Leaves AND OR XOR Timing S T S T GB 13 15 5 3 1 2 27 55 79 162 RCCS 14 19 8 2 5 28 70 303 514 LV 21 39 14 10 41 117 4316 8335 S= State, T=Transition, Timing= Timing gates
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡
research ¡. ¡deploy ¡. ¡Train ¡. ¡evaluate ¡ ¡