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

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

Summary

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

Package TC CC AC Ca Ce A I D V
eu.fbk.knowledgestore.datastore 27 22 5 1 23 19.0% 96.0% 14.0% 1
eu.fbk.knowledgestore.filestore 20 17 3 1 14 15.000001% 93.0% 8.0% 1
eu.fbk.knowledgestore.runtime 12 10 2 3 36 17.0% 92.0% 9.0% 1
eu.fbk.knowledgestore.server 24 22 2 0 33 8.0% 100.0% 8.0% 1
eu.fbk.knowledgestore.triplestore 31 26 5 2 26 16.0% 93.0% 9.0% 1

Packages

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

eu.fbk.knowledgestore.datastore

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 23 19.0% 96.0% 14.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
eu.fbk.knowledgestore.datastore.DataStore
eu.fbk.knowledgestore.datastore.DataTransaction
eu.fbk.knowledgestore.datastore.ForwardingDataStore
eu.fbk.knowledgestore.datastore.ForwardingDataTransaction
eu.fbk.knowledgestore.datastore.package-info
eu.fbk.knowledgestore.datastore.CachingDataStore
eu.fbk.knowledgestore.datastore.CachingDataStore$CachingDataTransaction
eu.fbk.knowledgestore.datastore.LoggingDataStore
eu.fbk.knowledgestore.datastore.LoggingDataStore$LoggingDataTransaction
eu.fbk.knowledgestore.datastore.LoggingDataStore$LoggingDataTransaction$1
eu.fbk.knowledgestore.datastore.MemoryDataStore
eu.fbk.knowledgestore.datastore.MemoryDataStore$MemoryDataTransaction
eu.fbk.knowledgestore.datastore.MemoryDataStore$MemoryDataTransaction$1
eu.fbk.knowledgestore.datastore.MemoryDataStore$MemoryDataTransaction$2
eu.fbk.knowledgestore.datastore.MySQLDataStore
eu.fbk.knowledgestore.datastore.MySQLDataStore$MySQLTransaction
eu.fbk.knowledgestore.datastore.SolrDataStore
eu.fbk.knowledgestore.datastore.SolrDataStore$SolrTransaction
eu.fbk.knowledgestore.datastore.SynchronizedDataStore
eu.fbk.knowledgestore.datastore.SynchronizedDataStore$SynchronizedDataTransaction
eu.fbk.knowledgestore.datastore.TripleDataStore
eu.fbk.knowledgestore.datastore.TripleDataStore$TripleDataTransaction
eu.fbk.knowledgestore.datastore.TripleDataStore$TripleDataTransaction$1
eu.fbk.knowledgestore.datastore.TripleDataStore$TripleDataTransaction$1$1
eu.fbk.knowledgestore.datastore.TripleDataStore$TripleDataTransaction$2
eu.fbk.knowledgestore.datastore.TripleDataStore$TripleDataTransaction$3
eu.fbk.knowledgestore.datastore.TripleDataStore$TripleDataTransaction$4
eu.fbk.knowledgestore.server
com.google.common.base
com.google.common.cache
com.google.common.collect
com.zaxxer.hikari
eu.fbk.knowledgestore.data
eu.fbk.knowledgestore.internal
eu.fbk.knowledgestore.internal.rdf
eu.fbk.knowledgestore.runtime
eu.fbk.knowledgestore.triplestore
eu.fbk.knowledgestore.vocabulary
java.io
java.lang
java.lang.ref
java.sql
java.util
java.util.concurrent
java.util.concurrent.atomic
java.util.concurrent.locks
org.apache.hadoop.fs
org.openrdf.model
org.openrdf.query
org.openrdf.rio
org.slf4j

eu.fbk.knowledgestore.filestore

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 14 15.000001% 93.0% 8.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
eu.fbk.knowledgestore.filestore.FileStore
eu.fbk.knowledgestore.filestore.ForwardingFileStore
eu.fbk.knowledgestore.filestore.package-info
eu.fbk.knowledgestore.filestore.FileExistsException
eu.fbk.knowledgestore.filestore.FileMissingException
eu.fbk.knowledgestore.filestore.GzippedFileStore
eu.fbk.knowledgestore.filestore.GzippedFileStore$1
eu.fbk.knowledgestore.filestore.GzippedFileStore$2
eu.fbk.knowledgestore.filestore.HadoopFileStore
eu.fbk.knowledgestore.filestore.HadoopFileStore$HadoopIterator
eu.fbk.knowledgestore.filestore.LoggingFileStore
eu.fbk.knowledgestore.filestore.LoggingFileStore$1
eu.fbk.knowledgestore.filestore.LoggingFileStore$2
eu.fbk.knowledgestore.filestore.LoggingFileStore$3
eu.fbk.knowledgestore.filestore.MultiFileStore$1
eu.fbk.knowledgestore.filestore.MultiFileStore$2
eu.fbk.knowledgestore.filestore.MultiFileStore$Entry
eu.fbk.knowledgestore.filestore.MultiFileStore$Index
eu.fbk.knowledgestore.filestore.SynchronizedFileStore
eu.fbk.knowledgestore.filestore.SynchronizedFileStore$1
eu.fbk.knowledgestore.server
com.google.common.base
com.google.common.collect
eu.fbk.knowledgestore.data
eu.fbk.knowledgestore.internal
eu.fbk.knowledgestore.runtime
eu.fbk.rdfpro.util
java.io
java.lang
java.util
java.util.concurrent.atomic
java.util.concurrent.locks
java.util.zip
org.apache.hadoop.fs
org.slf4j

eu.fbk.knowledgestore.runtime

Afferent Couplings Efferent Couplings Abstractness Instability Distance
3 36 17.0% 92.0% 9.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
eu.fbk.knowledgestore.runtime.Component
eu.fbk.knowledgestore.runtime.package-info
eu.fbk.knowledgestore.runtime.DataCorruptedException
eu.fbk.knowledgestore.runtime.Factory
eu.fbk.knowledgestore.runtime.Files
eu.fbk.knowledgestore.runtime.Files$1
eu.fbk.knowledgestore.runtime.Launcher
eu.fbk.knowledgestore.runtime.Launcher$1
eu.fbk.knowledgestore.runtime.Launcher$2
eu.fbk.knowledgestore.runtime.SerializerAvro
eu.fbk.knowledgestore.runtime.SerializerAvro$Schemas
eu.fbk.knowledgestore.runtime.Synchronizer
eu.fbk.knowledgestore.datastore
eu.fbk.knowledgestore.filestore
eu.fbk.knowledgestore.triplestore
ch.qos.logback.classic
ch.qos.logback.classic.joran
ch.qos.logback.core.joran.spi
ch.qos.logback.core.util
com.google.common.base
com.google.common.collect
com.google.common.io
com.google.common.reflect
com.thoughtworks.paranamer
eu.fbk.knowledgestore.data
eu.fbk.knowledgestore.internal
eu.fbk.knowledgestore.internal.rdf
java.io
java.lang
java.lang.management
java.lang.reflect
java.net
java.util
java.util.concurrent
java.util.concurrent.atomic
java.util.concurrent.locks
java.util.regex
javax.xml.datatype
org.apache.avro
org.apache.avro.generic
org.apache.avro.io
org.apache.commons.cli
org.apache.hadoop.conf
org.apache.hadoop.fs
org.openrdf.model
org.openrdf.model.impl
org.openrdf.model.vocabulary
org.openrdf.rio
org.slf4j
org.slf4j.bridge
sun.misc

eu.fbk.knowledgestore.server

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 33 8.0% 100.0% 8.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
eu.fbk.knowledgestore.server.Server$RecordUpdater
eu.fbk.knowledgestore.server.package-info
eu.fbk.knowledgestore.server.Server
eu.fbk.knowledgestore.server.Server$1
eu.fbk.knowledgestore.server.Server$Builder
eu.fbk.knowledgestore.server.Server$SessionImpl
eu.fbk.knowledgestore.server.Server$SessionImpl$1
eu.fbk.knowledgestore.server.Server$SessionImpl$10
eu.fbk.knowledgestore.server.Server$SessionImpl$11
eu.fbk.knowledgestore.server.Server$SessionImpl$2
eu.fbk.knowledgestore.server.Server$SessionImpl$3
eu.fbk.knowledgestore.server.Server$SessionImpl$4
eu.fbk.knowledgestore.server.Server$SessionImpl$5
eu.fbk.knowledgestore.server.Server$SessionImpl$6
eu.fbk.knowledgestore.server.Server$SessionImpl$7
eu.fbk.knowledgestore.server.Server$SessionImpl$8
eu.fbk.knowledgestore.server.Server$SessionImpl$9
eu.fbk.knowledgestore.server.SparqlHelper
eu.fbk.knowledgestore.server.SparqlHelper$1
eu.fbk.knowledgestore.server.SparqlHelper$2
eu.fbk.knowledgestore.server.SparqlHelper$3
eu.fbk.knowledgestore.server.SparqlHelper$DelegatingEvaluationStrategy
eu.fbk.knowledgestore.server.SparqlHelper$LocalEvaluationStrategy
eu.fbk.knowledgestore.server.SparqlHelper$QNameProcessor
None com.google.common.base
com.google.common.collect
com.google.common.escape
com.google.common.hash
com.google.common.html
com.google.common.io
com.google.common.net
eu.fbk.knowledgestore
eu.fbk.knowledgestore.data
eu.fbk.knowledgestore.datastore
eu.fbk.knowledgestore.filestore
eu.fbk.knowledgestore.internal.rdf
eu.fbk.knowledgestore.triplestore
eu.fbk.knowledgestore.vocabulary
info.aduna.iteration
java.io
java.lang
java.util
java.util.concurrent.atomic
java.util.regex
org.openrdf.model
org.openrdf.model.vocabulary
org.openrdf.query
org.openrdf.query.algebra
org.openrdf.query.algebra.evaluation
org.openrdf.query.algebra.evaluation.impl
org.openrdf.query.algebra.evaluation.iterator
org.openrdf.query.algebra.helpers
org.openrdf.query.impl
org.openrdf.query.parser
org.openrdf.query.parser.sparql
org.openrdf.query.parser.sparql.ast
org.slf4j

eu.fbk.knowledgestore.triplestore

Afferent Couplings Efferent Couplings Abstractness Instability Distance
2 26 16.0% 93.0% 9.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
eu.fbk.knowledgestore.triplestore.ForwardingTripleStore
eu.fbk.knowledgestore.triplestore.ForwardingTripleTransaction
eu.fbk.knowledgestore.triplestore.TripleStore
eu.fbk.knowledgestore.triplestore.TripleTransaction
eu.fbk.knowledgestore.triplestore.package-info
eu.fbk.knowledgestore.triplestore.LoggingTripleStore
eu.fbk.knowledgestore.triplestore.LoggingTripleStore$LoggingTripleTransaction
eu.fbk.knowledgestore.triplestore.LoggingTripleStore$LoggingTripleTransaction$1
eu.fbk.knowledgestore.triplestore.RepositoryTripleStore
eu.fbk.knowledgestore.triplestore.RepositoryTripleStore$RepositoryTripleTransaction
eu.fbk.knowledgestore.triplestore.RepositoryTripleStore$RepositoryTripleTransaction$1
eu.fbk.knowledgestore.triplestore.RewritingTripleStore
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$Rewriter
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$Rewriter$1
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$Rewriter$2
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$Rewriter$3
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$Rewriter$4
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$Rewriter$5
eu.fbk.knowledgestore.triplestore.RewritingTripleStore$RewritingTripleTransaction
eu.fbk.knowledgestore.triplestore.SPARQLRenderer
eu.fbk.knowledgestore.triplestore.SPARQLRenderer$1
eu.fbk.knowledgestore.triplestore.SPARQLRenderer$2
eu.fbk.knowledgestore.triplestore.SPARQLRenderer$Form
eu.fbk.knowledgestore.triplestore.SPARQLRenderer$Modifier
eu.fbk.knowledgestore.triplestore.SPARQLRenderer$Query
eu.fbk.knowledgestore.triplestore.SPARQLRenderer$Rendering
eu.fbk.knowledgestore.triplestore.SelectQuery
eu.fbk.knowledgestore.triplestore.SelectQuery$1
eu.fbk.knowledgestore.triplestore.SelectQuery$SerializedForm
eu.fbk.knowledgestore.triplestore.SynchronizedTripleStore
eu.fbk.knowledgestore.triplestore.SynchronizedTripleStore$SynchronizedTripleTransaction
eu.fbk.knowledgestore.datastore
eu.fbk.knowledgestore.server
com.google.common.base
com.google.common.cache
com.google.common.collect
eu.fbk.knowledgestore.data
eu.fbk.knowledgestore.internal
eu.fbk.knowledgestore.internal.rdf
eu.fbk.knowledgestore.runtime
info.aduna.iteration
java.io
java.lang
java.lang.ref
java.util
java.util.concurrent.atomic
org.openrdf.model
org.openrdf.model.impl
org.openrdf.model.vocabulary
org.openrdf.query
org.openrdf.query.algebra
org.openrdf.query.algebra.helpers
org.openrdf.query.impl
org.openrdf.query.parser
org.openrdf.queryrender
org.openrdf.repository
org.openrdf.repository.sail
org.openrdf.sail
org.slf4j

Cycles

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

There are no cyclic dependencies.

Explanation

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

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

Term Description
Number of Classes The number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package.
Afferent Couplings The number of other packages that depend upon classes within the package is an indicator of the package's responsibility.
Efferent Couplings The number of other packages that the classes in the package depend upon is an indicator of the package's independence.
Abstractness The 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.
Instability The 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.
Distance The 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.
Cycles Packages 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.

Back to top

Last Published: 2016/02/08.

Reflow Maven skin by Andrius Velykis.

Data and Knowledge Management tools