PhysViz

This page provides instructions and a download for the PhysViz artefact, for VISSOFT 2015.

Artefact

You can download a Zip file with PhysViz here:

PhysViz download

The source code is available in full (as a Visual Studio project) at the BitBucket project page.

Requirements

PhysViz is developed for Windows 8. It will not work with earlier versions of Windows. It has been tested both on a conventional PC laptop, and on a Mac laptop running BootCamp.

It can optionally be used in conjunction with an XBox-360 Controller.

Instructions

Set-up

Unzip the zip file. In the "artefact" folder, there will be two executable links.

Two basic configurations of PhysViz can be executed `out of the box' by executing one of the executable links in the PhysViz directory. However, changing the configurations requires the following steps.

There are two key parameters:

  1. A JSON file containing the basic software information (classes, methods, dependencies, etc.)
  2. A JSON file containing the PhysViz configuration parameters (assigning physical properties to program elements)

The current artefacts assumes a particular naming convention. For a given system X, the above files are named as follows:

  1. X.json
  2. X.disp.json

It also assumes that X.json and X.disp.json are located together in the data directory.

We have provided the data for the Weka and JEdit examples that were described in the paper. The files jedit.json and weka.json are already in the data folder. For each of them we have provided a selection of disp files, visualising different aspects (also described in the paper). These are located in the disp directory.

To activate a particular disp file, it has to be (1) copied into the data directory, and (2) renamed to match the name of the corresponding program. So, for example, jedit.hotspotsview.disp.json should be renamed to jedit.disp.json. (We are aware that this process is tedious and should obviously be facilitated by a more user-friendly procedure).

If there is a desire to try PhysViz on other programs, it is first necessary to create the JSON file containing the core data. This can be achieved by the following steps:

  1. Obtain an MSE file of the program in question, for example by using InFusion.
  2. Use our MSE2JSON tool to convert the MSE file to JSON.
  3. Customise a .disp.json file - this can be achieved by copying an existing file and altering the parameters to suit.

Execution

Once PhysViz is running, it is possible to switch between three viewing "modes" by pressing the `=' button:

  • Floating mode: The camera will automatically pan around the software visualisation as it unfolds.
  • Mouse-keyboard: The user can navigate by using the mouse to look around, and to move the point of view with the keyboard. `W' moves forward, 'D' moves backward, 'A' and 'D' move right and left respectively. Space moves up, and Shift moves down.
  • Controller mode: If an Xbox-360 controller is plugged in, this can be used.

To pause the animation (but to still be able to move around), press the 'P' button.

Share this page: