Information Technology Reference
In-Depth Information
- One “correct refinement” PO is also proved since the last event in the se-
quence ( MergeData ) has a postcondition that implies the abstract post-
condition under the gluing invariant inv 4. The sequence of concrete events
transforms the concrete variables in a way which does not contradict the
abstract event.
3.3 Second Refinement
Now, we consider the second level of the hierarchy of the KAOS goal graph. In the
same way, a refinement Event-B model Localization2 , in Figure 5, is created and
must refine the previous model Localization1 . This second refinement Event-B
model will encapsulate two KAOS refinement patterns:
Second Refinement: Applying the AND Goal Refinement Pattern. The
goal G 1 is AND-refined into two sub-goals; i.e. the conjunction of the sub-goals
is sucient to establish the satisfaction of the parent goal. This refinement spec-
ifies the kind of technology used to obtain localization data.
Goal G 1 . 1 : Achieve [UseGPS]
InformalDef: A GPS system is used.
Goal G 1 . 2 : Achieve [UseWIFI]
InformalDef: A wireless technique is used.
The sub-goals G 1 . 1 and G 1 . 2 are represented by two Event-B events UseGPS
and UseWIFI by using the same transcription rules as for the event Local-
izeVehicle in the abstract model. Since the goal G 1 is refined into two sub-goals
G 1 . 1 and G 1 . 2 according to the AND goal refinement pattern, the execution of
the corresponding new events must not necessary follows a specific order. For
that, our idea (inspired from Process Algebra [20]) is that these events ( UseGPS
and UseWIFI are executed in an arbitrary order: either UseGPS;UseWIFI
or UseWIFI;UseGPS . This corresponds to the semantics of the interleave op-
erator in process algebra. Of course, we must ensure that this AND refinement
manipulate only disjoint set of variables . Hence, we have proposed syntactic ex-
tension of the Event-B refinement proof rule in order to refine an abstract event
by the interleaving of all the new events as follows:
( UseGPS
|||
UseWIFI ) Refines CaptureRawLocalizations
In addition to the feasibility proof obligation , the following proof obligations
must be discharged in order to prove such refinement:
- Two “guard strengthening” POs are discharged since the concrete guard of
the interleaved events ( UseGPS
UseWIFI ) implies the abstract guard
( true )of CaptureRawLocalizations . In fact, the concrete guard is always
true (if we execute UseGPS at first or if we execute UseWIFI at first).
|||
 
Search WWH ::




Custom Search