27.07.2013 Views

2 Why We Need Model-Based Testing

2 Why We Need Model-Based Testing

2 Why We Need Model-Based Testing

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

75<br />

Systems with Finite <strong>Model</strong>s 109<br />

TimeoutMsgLate()<br />

76<br />

73<br />

Message("999.9") Command() TimeoutMsgLost()<br />

74<br />

ReportLostMessage()<br />

102<br />

78<br />

83<br />

105<br />

107<br />

6<br />

Poll()<br />

77<br />

Calibrate()<br />

Message("999.9")<br />

72<br />

7<br />

10<br />

2<br />

3<br />

0<br />

Timeout() Command()<br />

Reset()<br />

Message("99.9") Command()<br />

CheckMessage()<br />

Timeout() Command()<br />

71<br />

Message("99.9") TimeoutMsgLost()<br />

Message("99.9") TimeoutMsgLate() Message("999.9")<br />

100<br />

101<br />

104<br />

NoHandler()<br />

Command() Timeout()<br />

Command()<br />

Figure 6.10. Reactive system: interactive exploration showing path to unsafe state.<br />

106<br />

99<br />

4<br />

1<br />

TimeoutMsgLate()<br />

5<br />

TimeoutMsgLost()<br />

Liveness analysis depends on writing an accepting state condition that expresses<br />

the goal we intend the program to achieve. An accepting state is often defined to be<br />

a state where the program is allowed to stop. However, many programs including<br />

embedded controllers (like the one in this example) are never supposed to stop. In<br />

order to use liveness analysis with such systems, we must broadenour definition. <strong>We</strong><br />

more free ebooks download links at:<br />

http://www.ebook-x.com<br />

8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!