portable runtime verification with smartphones and optical codes

Post on 18-Dec-2014

182 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

We describe a prototype architecture for the runtime monitoring of Java programs using a smartphone. An online tool can produce an AspectJ file which, when woven with the program to be monitored and executed, instantiates a GUI window where XML events from the program's execution are output in the form of QR codes. A smartphone application, using the device's embedded camera, captures these codes and converts them back into events that are then fed to an onboard runtime monitor. We illustrate the feasibility of this approach by monitoring runtime properties on the execution of a video game by pointing a handheld Android phone at the game's screen and obtaining realtime feedback.

TRANSCRIPT

Kim Lavoie, Corentin Leplongeon, Simon Varvaressos, Sébastien Gaboury, Sylvain Hallé

Portable Runtime Verification with Smartphones and Optical Codes

Fonds de recherchesur la natureet les technologies

CRSNGNSERC

instruction;instruction;instruction;

instruction;instruction;

Program

Monitor

instruction;instruction;instruction;

instruction;instruction;

Program

Monitor

instruction;instruction;instruction;

instruction;instruction;

Program

Monitor

X

instruction;instruction;instruction;

instruction;instruction;

Program

Monitor

X

instruction;instruction;instruction;

instruction;instruction;

Program

Monitor

X

vs.

instruction;instruction;instruction;

instruction;instruction;

Program Monitor

instruction;instruction;instruction;

instruction;instruction;

Program Monitor

instruction;instruction;instruction;

instruction;instruction;

Program Monitor

?

instruction;instruction;instruction;

instruction;instruction;

Program Monitor

Nintendo's R.O.B.

PROTOTYPESvoid Mario.jump(int height);

<event> <method>jump</method> <x> {this.getX();} </x> <y> {this.getY();} </y> <height> {height} </height></event>

<event> <method> jump </method> <x>3</x> <y>109</y> <height> 221 </height></event>

<event> <method> haveShell </method></event>

<event> <method> crouch </method> <x>201</x> <y>56</y></event>

. . .

. . .

Code size (bytes)

Deco

din

g r

ate

Decoding time

0.1 sec./frameMonitoring time

0.005 sec./event

top related