DesigniteJava Enterprise

DesigniteJava is a code quality assessment tool for code written in Java. It detects numerous architecture, design, and implementation smells that show maintainability issues present in the analyzed code. It also computes many commonly used object-oriented metrics. It helps you reduce technical debt and improve maintainability of your software.

The Enterprise edition of DesigniteJava not only supports the features offered by DesigniteJava Community edition but also comes with additional features such as support to detect architecture smells. Other additions include cause of smell which plays a significant role to understand the reported smell and take corrective action along with many stability improvements and bug fixes compared to the community edition.

Free Download - DesigniteJava (Enterprise) Buy DesigniteJava

If you are an academic researchers and would like to use DesigniteJava Enterprise edition for research/educational purposes, you may request an academic license for the same.



Features

Architecture smells

DesigniteJava detects 7 smells at architecture granularity that impact maintainability of your software architecture.

Design smells

DesigniteJava detects 17 design smells violating one of the object-oriented design principles.

Implementation smells

DesigniteJava detects 10 implementation smells to keep your software readable and less complex.

Metrics

DesigniteJava computes object-oriented design metrics that are helpful to gauge the structural health of a software.

Supported architecture smells

The quality of your architecture decides vital quality parameters of your software product. DesigniteJava detects various architecture smells in your code to help you improve the agility of your software.

Supported design smells

Design smells are certain structures in the design that indicate violation of fundamental design principles and negatively impact design quality." (from Refactoring for Software Design Smells: Managing Technical Debt)

DesigniteJava identifies design smells and presents them in a view that classifies them based on the fundamental principle they violate. In addition, DesigniteJava also points out the cause of the smell and therefore provides a clue towards refactoring of the smell.

The following design smells are detectable by DesigniteJava:

Supported implementation smells

DesigniteJava supports variety of smells that may occur at implementation level as well. Refactoring these smells lead to better code quality.

DesigniteJava supports detection of the following implementation smells:

Supported object-oriented metrics

DesigniteJava computes object-oriented design metrics that are helpful to gauge the structural health of the software project. A list of supported metrics by DesigniteJava is presented below.

Usage

Download the DesigniteJava.jar and analyze a Java project using the following syntax.

java -jar DesigniteJava.jar -i <path of the input source folder> -o <path of the output folder>

It requires Java 8 or above to work.

The tool looks for class folders (containing .class files) within provided source code folder. If the class folders do not fall in the provided source code folder under classes or bin subfolders then specify them using -c option for accurate analysis. You may specify multiple folder paths separated with semi-colon.

java -jar DesigniteJava.jar -i <path of the input source folder> -o <path of the output folder> -c <path of the folders containing .class files>
DesigniteJava Console
DesigniteJava console
Sample report generated by DesigniteJava
A report showing detected architecture smells
OO Metrics computed by DesigniteJava
OO Metrics computed by DesigniteJava

Cite

@misc{DesigniteJavaEnterprise,
  author       = {Sharma, Tushar},
  title        = {DesigniteJava (Enterprise)},
  month        = sep,
  year         = 2019,
  note         = {http://www.designite-tools.com/designitejava},
  doi          = {10.5281/zenodo.3401802},
  url          = {https://doi.org/10.5281/zenodo.3401802}
}