Tool Support - HestiaProject/PAxSPL GitHub Wiki

PAxSPL tool

SPLReePlan is PAxSPL official supporting tool.

Tools to Support Retrieval Techniques

According to (Assunção et al. 2017) there are many tools/algorithms developed to give support to SPL re-engineering. These tools may be used to execute some feature retrieval techniques during PAxSPL execution. The figure below shows a summary of the tools that may give support during PAxSPL execution. SPL re-engineering tools

Sections below describe each tool.

List of supporting tools

FeatureMapper

A tool that allows defining mappings of features to model elements, specifying feature realisations. Access repository. Used in (Seidl et al. 2012)

Phases Supported

  • Detection
  • Analysis

Strategies Supported

Artifacts

CoDEx Tool

Creates and maintains direct traceability links between functional concerns and their respective implementations in code. Used in (Trifu 2010)

Phases Supported

  • Detection
  • Analysis

Strategies Supported

Artifacts

ThreeVaMar

This algorithm accepts as input a model with duplications that represent systems and produces the model of a product line. Used in (Rubin and Chechik 2010)

Phases Supported

  • Detection
  • Analysis
  • Transformation

Strategies Supported

Artifacts

RecFeat

A history-sensitive heuristic for recovering features in code of degenerate program families. Used in (Nunes et al. 2012)

Phases Supported

  • Detection
  • Analysis
  • Transformation

Strategies Supported

Artifacts

Clone-Differentiator Tool

Automatically characterizes clones returned by a clone detector by differentiating Program Dependence Graphs (PDGs) of clones. It is able to provide a precise characterization of semantic differences of clones. Used in (Eyal-Salman et al. 2014) and (Xue et al. 2010)

Phases Supported

  • Detection
  • Analysis
  • Transformation

Strategies Supported

Artifacts

MapHist Tool

MapHist tool applies heuristics to explore the evolution history of the family members in order to expand feature mappings in evolving program families. Used in (Nunes et al. 2014b)

Phases Supported

  • Detection
  • Analysis

Strategies Supported

Artifacts

SPLevo tools

SPLevo is a software development tool supporting the consolidation of customized product copies into a Software Product Line. Access the repository. Used in (Klatt et al. 2013)

Phases Supported

  • Detection
  • Analysis
  • Transformation

Strategies Supported

Artifacts

BUT4Reuse

BUT4Reuse provides a unified framework for mining software artefact variants. Access the repository. Used in (Martinez 2014)

Phases Supported

  • Detection
  • Analysis
  • Transformation

Strategies Supported

Artifacts

ExtractorPL

A language-independent approach which provides a quick automatic front-end to refactor a set of systems into an SPL. Access the repository. Used in (Ziadi et al. 2014)

Phases Supported

  • Detection
  • Analysis

Strategies Supported

Artifacts

JfeTkit

It is designed for analyzing java source statically, providing lexical analysis, grammar analysis, call chain graph, control flow graph and feature location analysis in a GUI panel. Access the repository. Used in (Tang et al. 2015)

Phases Supported

  • Detection
  • Analysis
  • Transformation

Strategies Supported

Artifacts

FMr-T

FMr-T (Feature Model recovery Tool) is a feature model extraction tool that identifies code variability. Used in (Maâzoun et al. 2014)

Phases Supported

  • Detection
  • Analysis

Strategies Supported

Artifacts

ArborCraft

This tool suite automatically processes natural-language requirements documents into a candidate feature model. Used in (Weston et al. 2009)

Phases Supported

  • Detection
  • Analysis

Strategies Supported

Artifacts