Metric Results

[ summary] [ packages] [ cycles] [ explanations]

The following document contains the results of a JDependmetric analysis. The various metrics are defined at the bottom of this document.

Summary

[ summary] [ packages] [ cycles] [ explanations]

Package TC AC CC AC EC A I D
com.explosion.datastream.exql 7166250.1481%5%
com.explosion.datastream.exql.extensions 101040100%0%
com.explosion.datastream.exql.gui 14014932078%22%
com.explosion.datastream.exql.gui.dbbrowser 808325089%11%
com.explosion.datastream.exql.gui.querywriter 505124096%4%
com.explosion.datastream.exql.gui.scriptrunner 303116094%6%
com.explosion.datastream.exql.gui.table 909325089%11%
com.explosion.datastream.exql.gui.table.editandrender 15015119095%5%
com.explosion.datastream.exql.impexp 211130.575%25%
com.explosion.datastream.exql.processes 13013417081%19%
com.explosion.expf 1851323210.2848%24%
com.explosion.expf.help 10116086%14%
com.explosion.expf.menusandtools 20224067%33%
com.explosion.expf.menusandtools.HistoryManager 202060100%0%
com.explosion.expf.menusandtools.menu 707119045%55%
com.explosion.expf.menusandtools.menu.popup 16214480.1267%21%
com.explosion.expf.menusandtools.menu.segmented 3121060.3338%29%
com.explosion.expf.menusandtools.tool 40448067%33%
com.explosion.expf.preferences 2021111050%50%
com.explosion.expf.preferences.Utils 30317088%12%
com.explosion.expf.supportmodules 808117094%6%
com.explosion.expfmodules.dbstore 3121160.3394%27%
com.explosion.expfmodules.fileutils 3120130.33100%33%
com.explosion.expfmodules.freeform 101050100%0%
com.explosion.expfmodules.monitoring 7070180100%0%
com.explosion.expfmodules.rdbmsconn 111108180.0969%22%
com.explosion.expfmodules.rdbmsconn.connect 505713065%35%
com.explosion.expfmodules.rdbmsconn.connectwizard 11022150%50%
com.explosion.expfmodules.rdbmsconn.connectwizard.actions 8080110100%0%
com.explosion.expfmodules.rdbmsconn.connectwizard.screens 5050200100%0%
com.explosion.expfmodules.rdbmsconn.dbom 7071010050%50%
com.explosion.expfmodules.rdbmsconn.dbom.dialect 20225071%29%
com.explosion.expfmodules.rdbmsconn.dbom.sql 80828080%20%
com.explosion.expfmodules.rdbmsconn.dbom.utils 909820071%29%
com.explosion.expfmodules.search 9181210.1195%7%
com.explosion.expfmodules.search.dialogs 13013116094%6%
com.explosion.expfmodules.texteditor 192176190.1176%13%
com.explosion.expfmodules.wizard 66062125%25%
com.explosion.expfmodules.wizard.standard 716580.1462%24%
com.explosion.expfmodules.wizard.standard.load 707111092%8%
com.explosion.expfmodules.wizard.standard.view 7162140.1488%2%
com.explosion.utilities 180183326044%56%
com.explosion.utilities.Graphics 10112067%33%
com.explosion.utilities.classes 50539075%25%
com.explosion.utilities.dialog 22022313081%19%
com.explosion.utilities.exception 5144450.210%70%
com.explosion.utilities.preferences 61535110.1724%59%
com.explosion.utilities.preferences.dialogs 151144110.0773%20%
com.explosion.utilities.preferences.editandrender.form 19019213087%13%
com.explosion.utilities.preferences.editandrender.table 21021113093%7%
com.explosion.utilities.preferences.groups 3121660.3327%39%
com.explosion.utilities.preferences.groups.dialogs 12012311079%21%
com.explosion.utilities.preferences.impl.inmemory 20228080%20%
com.explosion.utilities.preferences.impl.sun 20218089%11%
com.explosion.utilities.preferences.impl.xml 303114093%7%
com.explosion.utilities.preferences.persist 422580.562%12%
com.explosion.utilities.process 1531210110.252%28%
com.explosion.utilities.process.threads 8621240.7525%0%
com.explosion.utilities.regex 20213075%25%

Packages

[ summary] [ packages] [ cycles] [ explanations]

com.explosion.datastream.exql.extensions

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
040%100%0%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None None

com.explosion.datastream.exql.gui

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
9320%78%22%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.datastream.exql.impexp

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
1350%75%25%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages

com.explosion.expf

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
232128%48%24%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages

com.explosion.expf.help

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
160%86%14%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.expf.menusandtools

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
240%67%33%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.expf.menusandtools.HistoryManager

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
060%100%0%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None None

com.explosion.expf.preferences.Utils

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
170%88%12%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.expfmodules.freeform

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
050%100%0%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None None

com.explosion.expfmodules.rdbmsconn.connectwizard

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
22100%50%50%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.expfmodules.rdbmsconn.dbom.dialect

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
250%71%29%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.utilities

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
33260%44%56%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.utilities.Graphics

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
120%67%33%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.utilities.exception

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
44520%10%70%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages

com.explosion.utilities.preferences

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
351117%24%59%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages

com.explosion.utilities.preferences.impl.sun

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
180%89%11%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

com.explosion.utilities.regex

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
130%75%25%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
None

Cycles

[ summary] [ packages] [ cycles] [ explanations]

PackageCyclic Dependencies
com.explosion.datastream.exql
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.extensions
  • com.explosion.expfmodules.wizard.standard
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.gui
  • com.explosion.expf
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.gui.dbbrowser
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.gui.querywriter
  • com.explosion.datastream.exql.gui.dbbrowser
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.gui.scriptrunner
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.gui.table
  • com.explosion.expf
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.gui.table.editandrender
  • com.explosion.expfmodules.rdbmsconn.dbom
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.datastream.exql.processes
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.help
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.menusandtools
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.menusandtools.HistoryManager
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.menusandtools.menu
  • com.explosion.expf.menusandtools.menu.segmented
  • com.explosion.expf.menusandtools.menu
com.explosion.expf.menusandtools.menu.popup
  • com.explosion.expf.menusandtools.menu.segmented
  • com.explosion.expf.menusandtools.menu
  • com.explosion.expf.menusandtools.menu.segmented
com.explosion.expf.menusandtools.menu.segmented
  • com.explosion.expf.menusandtools.menu
  • com.explosion.expf.menusandtools.menu.segmented
com.explosion.expf.menusandtools.tool
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.preferences.Utils
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expf.supportmodules
  • com.explosion.expf.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.dbstore
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.fileutils
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.freeform
  • com.explosion.expf
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.monitoring
  • com.explosion.expf.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.connect
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.connectwizard
  • com.explosion.utilities.preferences.groups
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.connectwizard.actions
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.connectwizard.screens
  • com.explosion.expfmodules.wizard.standard.view
  • com.explosion.utilities.preferences.editandrender.form
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.dbom
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.dbom.dialect
  • com.explosion.expfmodules.rdbmsconn.dbom
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.dbom.sql
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.rdbmsconn.dbom.utils
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.search
  • com.explosion.utilities.process
  • com.explosion.utilities.process.threads
  • com.explosion.utilities.process
com.explosion.expfmodules.search.dialogs
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.texteditor
  • com.explosion.expf
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.wizard.standard
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.wizard.standard.load
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.expfmodules.wizard.standard.view
  • com.explosion.utilities.preferences.editandrender.form
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities
  • com.explosion.utilities.exception
  • com.explosion.utilities
com.explosion.utilities.classes
  • com.explosion.utilities
  • com.explosion.utilities.exception
  • com.explosion.utilities
com.explosion.utilities.dialog
  • com.explosion.expf.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.dialogs
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.editandrender.form
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.editandrender.table
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.groups
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.groups.dialogs
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.impl.inmemory
  • com.explosion.utilities.preferences.persist
  • com.explosion.utilities.preferences.groups
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.impl.sun
  • com.explosion.utilities.preferences.persist
  • com.explosion.utilities.preferences.groups
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.impl.xml
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.preferences.persist
  • com.explosion.utilities.preferences.groups
  • com.explosion.utilities.preferences
  • com.explosion.utilities.exception
  • com.explosion.utilities
  • com.explosion.utilities.exception
com.explosion.utilities.process
  • com.explosion.utilities.process.threads
  • com.explosion.utilities.process
com.explosion.utilities.process.threads
  • com.explosion.utilities.process
  • com.explosion.utilities.process.threads

Explanations

[ summary] [ packages] [ cycles] [ explanations]

The following explanations are for quick reference and are lifted directly from the original JDepend documentation.

TermDescription
Number of ClassesThe number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package.
Afferent CouplingsThe number of other packages that depend upon classes within the package is an indicator of the package's responsibility.
Efferent CouplingsThe number of other packages that the classes in the package depend upon is an indicator of the package's independence.
AbstractnessThe ratio of the number of abstract classes (and interfaces) in the analyzed package to the total number of classes in the analyzed package. The range for this metric is 0 to 1, with A=0 indicating a completely concrete package and A=1 indicating a completely abstract package.
InstabilityThe ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This metric is an indicator of the package's resilience to change. The range for this metric is 0 to 1, with I=0 indicating a completely stable package and I=1 indicating a completely instable package.
DistanceThe perpendicular distance of a package from the idealized line A + I = 1. This metric is an indicator of the package's balance between abstractness and stability. A package squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal packages are either completely abstract and stable (x=0, y=1) or completely concrete and instable (x=1, y=0). The range for this metric is 0 to 1, with D=0 indicating a package that is coincident with the main sequence and D=1 indicating a package that is as far from the main sequence as possible.
CyclesPackages participating in a package dependency cycle are in a deadly embrace with respect to reusability and their release cycle. Package dependency cycles can be easily identified by reviewing the textual reports of dependency cycles. Once these dependency cycles have been identified with JDepend, they can be broken by employing various object-oriented techniques.