Qatch Overview

Qatch Research Paper

(todo) ___


MSUSEL-Qatch functions as a framework and library and currently supports generation of comparison matrices, quality model derivation, single project evaluation, and multi-project evaluation all in a language agnostic approach.

While MSUSEL-Qatch provides the library calls necessary for quality analysis tasks, it does not provide a driver. Extend the framework by providing the langugage-specific objects (static-analysis tools). ___

Dependencies (pre-requisites)

  • Maven
  • R (only needed for model derivation)
    • with library ‘jsonlite’
  • Java 8+


  • (TODO: add msusel-qatch to the Maven central repository)
    1. Clone repository into <project_root> folder
    2. Run mvn test from <project_root>. Fix test errors if needed.
    3. Run mvn install from <project_root>. msusel-qatch is now available as a dependency to extend in a personal project. (Eventually mvn deploy will be used instead.)
    4. qatch currently has one runnable class, qatch.runnable.ComparisonMatricesGenerator. Run the main method to generate comparison matrices primed for hand-entry based off of a quality model description.


  1. For project evaluation, extend the framework in your own language-specific project and call qatch.runnable.SingleProjectEvaluator.runEvaluator(). At a minimum, the language-specific project will need to implement IAnalyzer, IFindingsAggregator, IMetricsAggregator, and IFindingsResultsImporter.