07.01.2013 Views

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

13.5 Summary<br />

13 Real-Time and Hybrid Systems Test<strong>in</strong>g 385<br />

In this chapter, we have discussed test case generation for real-time and hybrid<br />

systems. As we have seen <strong>in</strong> the beg<strong>in</strong>n<strong>in</strong>g, test automation for real-time and<br />

hybrid systems differs from that for untimed systems. The time doma<strong>in</strong> has to<br />

be taken <strong>in</strong>to account as well as the dense value doma<strong>in</strong> for hybrid systems,<br />

e.g. for test evaluation. The model of the SUT must abstract from the real<br />

behavior of the SUT to allow sensible test case generation. In contrast, the test<br />

driver concretizes the generated <strong>in</strong>puts to feed the SUT. Vice versa, the concrete<br />

outputs of the SUT are abstracted aga<strong>in</strong> so that test evaluation can be done with<br />

respect to the abstract model.<br />

Process Algebra vs. Automata Different model<strong>in</strong>g techniques can be used for this<br />

purpose. We have discussed ACSR as a process algebra and different variants of<br />

automata that already have been used for test case generation. A process algebra<br />

is capable of model<strong>in</strong>g a system consist<strong>in</strong>g of processes that communicate with<br />

each other via events. Concurrency can be modeled explicitly as there are operators<br />

for <strong>in</strong>terleav<strong>in</strong>g and parallel execution with synchronization. Time is considered<br />

discrete. One problem of process algebras is that this model<strong>in</strong>g technique<br />

has no support <strong>in</strong> <strong>in</strong>dustry where graphical model<strong>in</strong>g is preferred. Nevertheless,<br />

test<strong>in</strong>g based on process algebra has been proven useful and practicable.<br />

In contrast, automata based model<strong>in</strong>g has more support as this is very popular,<br />

e.g. with respect to UML where state mach<strong>in</strong>es are used as automata<br />

variants. Timed automata <strong>in</strong>troduce either discrete or dense time to be capable<br />

of model<strong>in</strong>g tim<strong>in</strong>g constra<strong>in</strong>ts. Graphical models are <strong>in</strong> pr<strong>in</strong>ciple easy to understand<br />

as control flow can be captured at one sight. However, large models become<br />

<strong>in</strong>tractable <strong>in</strong> graphical representation. Hierarchy or different abstraction levels<br />

must be used to better this situation.<br />

Discrete vs. Dense Time With respect to time, this is either modeled discrete or<br />

dense. In the first case, a timer is a counter that is <strong>in</strong>cremented cont<strong>in</strong>uously. As<br />

the computer itself is work<strong>in</strong>g discrete, this seems appropriate. In contrast, time<br />

is naturally dense so model<strong>in</strong>g based on dense time is closer to reality, e.g. when<br />

analog sensors and actuators are used. For real-time systems, it must be chosen<br />

if the model represents natural time or computer time beforehand. For hybrid<br />

systems, time must be modeled dense as the cont<strong>in</strong>uous parts of the system rely<br />

on this.<br />

Discrete vs. Dense Values Another aspect is the value doma<strong>in</strong> that has to be<br />

tested. This is considered discrete for real-time systems. We have seen that test<br />

case generation builds up on methods for untimed systems and enhances the<br />

generated test cases with tim<strong>in</strong>g <strong>in</strong>formation. Discrete values for <strong>in</strong>puts and<br />

outputs to respectively from the SUT can be easily generated and evaluated.<br />

Time po<strong>in</strong>ts and <strong>in</strong>tervals for generat<strong>in</strong>g <strong>in</strong>puts and outputs are chosen with<br />

respect to the selected test case generation method. For hybrid systems, this<br />

situation differs as we have dense-valued variables. Until now, nobody has tackled

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

Saved successfully!

Ooh no, something went wrong!