Information Technology Reference
In-Depth Information
specification by adding quiescence ( δ ) self loops in states where no output event
is observable. Such states are called quiescent states. The purpose of quiescence
is to exploit the absence of any observable events as an observation itself. Quies-
cence is realized as timeout event, i.e., if the implementation does not send any
output within a specified timeout then δ can be observed. Thus, the timeout as-
sociated with δ has to be greater than the maximum response time of all other
output events in the system. In Example 2, we discuss how the observation of qui-
escence can be employed to resolve decision conflicts during synchronous testing.
Such conflicts arise in states where the tester has the choice between either apply-
ing an input or observing outputs. After adding δ self loops in quiescent states,
determinization is applied resulting in the suspension automaton.
Environmental changes in qualitative action systems are designated by qual
events. These events mark the firing of the qualitative action. If a tester's choice
depends on a previous environmental update, such qual events have to be ob-
servable by the tester. Referring to our running example, a tester's input to the
system is the controllable WATER REQ(X) event, where X is a Boolean param-
eter for requesting water or not. Note that the guard of this input action depends
on the water level of tank T 2. Hence, we have to declare qualitative evolutions
as observable events. Otherwise, the nondeterminism of the model would pre-
vent the enabledness of the controllable action according to the controllability
condition (4), discussed in section 5.3.
Example 1. Figure 7 shows a part of the conformance verification result between
the system specification and a mutant. In the mutant, the action
PUMP1 OFF : g 2
p1 running := true ; inout := (0 , 0)
has been modified such that the Boolean flag denoting the state of pump P 1
remains true although it should be set to false .The ctr prefix of actions means
that the action is controlled by a tester while obs denote observations a tester
can make from the implementation. As can be seen in Figure 7, the mutation is
revealed when the tester tries to turn off pump P 1 twice which is in difference
to the specified behavior. After unexpected output behavior, not permitted by
the specification, fail states are appended in the product LTS. The behavior of a
mutant following after pass states is allowed by the ioco relation. Furthermore,
the parametric values of qual events denote the environmental condition at the
end of an evolution. For example, the first evolution after the initial state fills
the lower tank to the Ful l level and the upper tank remains empty. Then pump
P 1 is turned on which subsequently causes another evolution filling the upper
tank T 2. Here, depending on the flow rates and tank volumes several outcomes
are possible.
Applying the conformance verification step to several different mutants yields
the results shown in Table 2. In the first column ASO stands for the Associa-
tion Shift Operator which changes the association between variables in Boolean
expressions. ENO is the shorthand for the Expression Negation Operator , ERO
 
Search WWH ::




Custom Search