Abdeslam EnNouaary and Rachida Dssouli Electrical and Computer Engineering Department Concordia Univ PowerPoint PPT Presentation

presentation player overlay
1 / 18
About This Presentation
Transcript and Presenter's Notes

Title: Abdeslam EnNouaary and Rachida Dssouli Electrical and Computer Engineering Department Concordia Univ


1
Abdeslam En-Nouaaryand Rachida
DssouliElectrical and Computer Engineering
DepartmentConcordia University, Montreal,
Quebec, Canada ennouaar, dssouli_at_ece.concordia
.caMay 28, 2003
A Guided Method for Testing Timed Input Output
Automata

2
Outline
  • Introduction
  • Testing activities
  • Timed input output automata (TIOA) model
  • Test purpose concept
  • Testing TIOA based on test purposes
  • Construction of the synchronous product of the
    specification and test purpose
  • Sampling the regions graph of the synchronous
    product
  • Traversal of the resulting automaton
  • Conclusion

3
Introduction
  • Timed Input Output Automata is a formal model to
    specify real-time systems.
  • Real-time systems are those systems whose
    behaviors are time dependent (e.g., Air traffic
    control systems, Patient control systems, Plant
    control systems, Multimedia applications, etc.).
  • Reliability and safety are the most important
    characteristics of real-time systems.
  • Faults in real-time systems implementations are
    related to interactions with the environment and
    the time constraints of these interactions.
  • Testing is a formal technique for ensuring the
    quality of a system before it goes operational.
  • Test purpose can be used to come up with a
    practical time test cases generation method.

4
Testing Activities
Specification
Choice of a formal model (FSM, EFSM, TIOA, etc.)
Use of an efficient method (with a good test
coverage)
Test Cases Generation
Test Cases
IUT
Test coverage, executability, etc
- Test architecture - Tester Synchronization
Test Execution
Verdict
- Detection of errors - Conformance of IUT
5
Timed Input Output Automata (TIOA)
  • A Timed Input Output Automata (TIOA) is a tuple
    (I, O, L, l0, C, T), where
  • I the set of inputs.
  • O the set of outputs.
  • L the set of locations.
  • l0 the initial location.
  • C the set of clocks all initialized to 0 in l0.
  • T ? L ? (I ? O) ? G(C) ? 2C ? L The set of
    transitions.

An Example of TIOA
6
TIOA based Testing Issues
  • The semantics of TIOA the executability of test
    cases generated.
  • We use the regions graph to represent the
    semantics of TIOA.
  • The regions graph represents all traces
    (executions) of a TIOA and is based on
  • The notion of clock valuation.
  • The notion of state.
  • The fault model to know the potential faults in
    an implementation of TIOA.
  • The test cases generation the development of new
    methods or the adaptation of new ones?
  • The density of time domain of TIOA.
  • The faults coverage of test cases generated.
  • The test execution test architecture, test
    synchronization, etc.
  • The conformance relation between the
    specification and the implementation.

7
Test Purposes
  • A test purpose is an acyclic TIOA (ITP, OTP, LTP,
    l0TP, CTP, TTP) with a subset of final states to
    indicate whether or not the test purpose has been
    satisfied.
  • A test purpose represents a property/functionality
    of the system to be tested.

An hypothetical Telephone Specification
8
Test Cases Generation (Overview)
Specification
Test purpose
Constructing synchronous product
The test cases generated must satisfy both the
specification and test purposes
Synchronous product
- We dont construct the regions graph - We use a
granularity that depends on the number of clocks
n (i.e., 1/(n1))
Sampling the synchronous product
Grid automata
Traversal of the grid automata
Depth-first traversal
Test Cases
Partial fault coverage
9
Synchronous Product
  • The synchronous product of a specification S
    (IS, OS, LS, l0S, CS, TS) and a test purpose TP
    (ITP, OTP, LTP, l0TP, CTP, TTP) is the TIOA SP
    (ISP, OSP, LSP, l0SP, CSP, TSP) such that
  • ISP IS ? ITP
  • OSP OS ? OTP
  • LSP ? LS ? LTP
  • l0SP (l0S,l0TP)
  • CSP CS ? CTP
  • LSP and TSP are defined as follows
  • If (l1,l2)? LSP and (l1,a,G1,R1,l1) ? TS and
    (l2,a,G2,R2,l2)? TTP then (l1,l2)? LSP and
    ((l1,l2),a,G1G2,R1?R2,(l1,l2))? TSP.
  • If (l1,l2)? LSP and (l1,a,G1,R1,l1)? TS and
    (l2,a,G2,R2,l2)? TTP then (l1,l2)? LSP and
    ((l1,l2),a,G1G2,R1?R2,(l1,l2))? TSP.

10
Test Cases Generation (Overview)
Specification
Test purpose
Constructing synchronous product
The test cases generated must satisfy both the
specification and test purposes
Synchronous product
- We dont construct the regions graph - We use a
granularity that depends on the number of clocks
n (i.e., 1/(n1))
Sampling the synchronous product
Grid automata
Traversal of the grid automata
Depth-first traversal
Test Cases
Partial fault coverage
11
Test Cases Generation An Example
The specification
The test purpose
12
Test Cases Generation (Overview)
Specification
Test purpose
Constructing synchronous product
The test cases generated must satisfy both the
specification and test purposes
Synchronous product
- We dont construct the regions graph - We use a
granularity that depends on the number of clocks
n (i.e., 1/(n1))
Sampling the synchronous product
Grid automata
Traversal of the grid automata
Depth-first traversal
Test Cases
Partial fault coverage
13
Test Cases Generation An Example (Cont.)
s0l0,t0,0,0 s1 l0,t0,1/3,1/3
s2l0,t0,2/3,2/3 s3l0,t0, 1,1
s4l0,t0,4/3,4/3 s5l0,t0,5/3,5/3 s6l0,t0,2,2
s7l0,t0,7/3,7/3 s8l0,t0,8/3,8/3 s9l1,t1,0,0
s10l2,t2,0,0 s11l2,t2,1/3,1/3
s12l2,t2,2/3,2/3 s13l2,t2,1,1 s14l3,t3,0,0
s15l3,t3,1,1 s16l3,t3,1,1 s17l1,t1,1/3,1/3
s18l2,t2,1/3,1/3 s19l2,t2,2/3,2/3
s20l2,t2,1,1

Grid automata states definitions
14
Test Cases Generation (Overview)
Specification
Test purpose
Constructing synchronous product
The test cases generated must satisfy both the
specification and test purposes
Synchronous product
- We dont construct the regions graph - We use a
granularity that depends on the number of clocks
n (i.e., 1/(n1))
Sampling the synchronous product
Grid automata
Traversal of the grid automata
Depth-first traversal
Test Cases
Partial fault coverage
15
Test Cases Generation An Example (Cont.)
s0l0,t0,0,0 s1 l0,t0,1/3,1/3
s2l0,t0,2/3,2/3 s3l0,t0, 1,1
s4l0,t0,4/3,4/3 s5l0,t0,5/3,5/3 s6l0,t0,2,2
s7l0,t0,7/3,7/3 s8l0,t0,8/3,8/3 s9l1,t1,0,0
s10l2,t2,0,0 s11l2,t2,1/3,1/3
s12l2,t2,2/3,2/3 s13l2,t2,1,1 s14l3,t3,0,0
s15l3,t3,1,1 s16l3,t3,1,1 s17l1,t1,1/3,1/3
s18l2,t2,1/3,1/3 s19l2,t2,2/3,2/3
s20l2,t2,1,1

Grid automata states definitions
?HangOff.?Digit1.1.?Digit2.1.!Connect 1/3.?HangOff
.?Digit1.1.?Digit2.1.!Connect 2/3.?HangOff.?Digit1
.1.?Digit2.1.!Connect 1.?HangOff.?Digit1.1.?Digit2
.1.!Connect 4/3.?HangOff.?Digit1.1.?Digit2.1.!Conn
ect 5/3.?HangOff.?Digit1.1.?Digit2.1.!Connect 2.?H
angOff.?Digit1.1.?Digit2.1.!Connect 7/3.?HangOff.?
Digit1.1.?Digit2.1.!Connect 8/3.?HangOff.?Digit1.1
.?Digit2.1.!Connect ?HangOff.1/3.?Digit1.2/3.?Digi
t2.1.!Connect
Example of test cases
16
Conclusion
  • We have presented an approach to test an TIOA
    using test purposes.
  • A test purpose represents a functionality/property
    of the system to be tested.
  • A test purpose can be used by the user of a
    system to test the critical part from his/her
    point of view.
  • The method we presented consists of three parts
    the construction of the synchronous product of
    the specification and test purpose, the sampling
    of the synchronous product, and the traversal of
    the resulting automata.
  • Our approach avoids the state explosion problem
    due to the generation of test cases for the whole
    system.

17
Conclusion (Cont.)
  • We are implementing the approach using MSC
    (Message Sequence Charts) to represent the user
    test purposes.
  • We are also working on the evaluation of the
    faults coverage of the proposed method.
  • We are also planning to specify the test cases
    generated using TTCN.

18
Thank You
Write a Comment
User Comments (0)
About PowerShow.com