jquality - Code Smell detection for Java

jquality (former SmartSmells) is a code smell detector for Java powered by javaparser.

Following anti patterns can be found with jquality:

  • GodClass
  • FeatureEnvy
  • DataClass
  • LongMethod
  • LongParameterList
  • ComplexMethod
  • LargeClass
  • CommentSmell/Missing Javadoc
  • Cycle
  • Deadcode
  • MessageChain
  • MiddleMan
  • StateChecking
  • ShotgunSurgery
  • NestedBlockDepth
  • ComplexCondition

This tool was one part of the results I accomplished during the master project 2016 at the University of Bremen. Later I enhanced and used the tool in my masterthesis where I researched the evolution of code smells in java projects.

The tool is written in the Groovy programming language and was a nice step towards learning about other languages which run on the JVM. A byproduct of jquality was the library jpal which is my take in bringing symbol and type resolution to the javaparser project.