SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Using DPJF

Verify the Installation

  1. Start Eclipse with the required command line arguments. You can do this in one of the following ways:
  2. During the first startup you might see a 'Run File-Security Warning'

message (in Windows). Just click 'Run' to tell Windows that the

  Prolog runtime is a trusted process.
- When Eclipse has finished starting, check that it displays a "JTransformer" menu.
  Then the installation was successful.

Open the DPJF Perspective

If you have run the special installation for Windows 32 you will see the following layout of Eclipse views, called the DPJF perspective. If it is not displayed, you can always explicitly switch to the DPJF perspective. It consists of:

  1. The Package Explorer: The upper left view displays the Java projects in your Eclipse workspace.
  2. The JTransformer Control Center: The middle-left view displays installed JTransformer plugins

and lets users activate, deactivate, configure and run them. DPJF is a set of such plugins.

  1. The JT Analysis Results View: The middle-right view displays the anaylsis results from the installed JTransformer

plugins, including the design pattern candidates found by DPJF. You will see the information about program

  elements playing roles in DP candidates and the links to the corresponding places in the source code.
- **The Prolog Console**: The bottom view is the Prolog Console, which displays what happens 
  under the cover. Here you can interact with DPJF or JTransformer at a low abstraction level
  entering queries manually. Most users will never need this layer of detail. 

DPJF Perspective in Eclipse. Click to enlarge.

Design Pattern Detection Workflow

Load Project

You can detect design patterns on any Java project in your workspace. Eventually you might want to import one or check one out via SVN from our collection of DPD benchmark projects

Our DPJF Installation package comes with the factbases for the benchmark projects used for the evaluation reported in our CSMR 2012 paper. However, make sure that the letters “JT” appear near the project(s) you want to detect patterns in. If not, you can generate a factbase for this project.

Choose Factbase

To enable design pattern detection on a Java project P generate, load and select a factbase for P.

Detect Design Patterns

DPJF supports two forms of Design Pattern Detection (DPD):

  • Batch DPD, where analysis is triggered manually by the user
  • Continuous DPD, where analysis results are automatically updated upon every saved change of a file

DPJF supports two different batch DPD workflows, adapted to the two main user profiles:

Continuous DPD is a unique feature of DPJF, enabled by its very high query speed. It can be seen as an especially convenient form of DPD for Software Engineers:

  • Users simply select the DPD plugins that should always run automatically by setting the 'On Save' trigger in the JTransformer Control Center.
  • Henceforth, the results displayed in the Result View and the markers displayed in editors will be updated automatically after each file save
research/dpd/dpjf/usage.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2019