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 Total

Classes
Abstract

Classes
Concrete

Classes
Afferent

Couplings
Efferent

Couplings
Abstractness Instability Distance
Default 101090100%0%
FIPA 432023450.4756%2%
JADE_SL 21615570.2958%13%
JADE_SL.abs 14311860.2143%36%
JADE_SL.acl 303030100%0%
JADE_SL.lang 431230.7560%35%
JADE_SL.lang.sl 918290.1182%7%
JADE_SL.onto 13310680.2357%20%
JADE_SL.onto.basic 50516086%14%
JADE_SL.schema 14113350.0762%30%
JADE_SL.schema.facets 20215083%17%
fipa97 642350.6762%29%
javax.agent 40442033%67%
javax.agent.service 211020.5100%50%
sl 33330250.0971%19%
zeus.actors 4073328170.1738%45%
zeus.actors.event 5017331380.3438%28%
zeus.actors.factories 6155110.1769%15%
zeus.actors.graphs 6106118089%11%
zeus.actors.intrays 162141180.1295%7%
zeus.actors.outtrays 909312080%20%
zeus.actors.rtn 918880.1150%39%
zeus.actors.rtn.util 615350.1762%21%
zeus.agents 154117160.2770%4%
zeus.agentviewer 171169300.0677%17%
zeus.agentviewer.acquaintances 404113093%7%
zeus.agentviewer.engine 909117094%6%
zeus.agentviewer.mail 404113093%7%
zeus.agentviewer.msghandler 202113093%7%
zeus.agentviewer.plansch 404114093%7%
zeus.agentviewer.protocol 808112092%8%
zeus.agentviewer.resources 303114093%7%
zeus.agentviewer.rete 202110091%9%
zeus.agentviewer.task 606115094%6%
zeus.concepts 102168644180.1629%55%
zeus.concepts.fn 29524640.1740%43%
zeus.concepts.xmlobject 11025171%71%
zeus.concepts.xmlobject.acc 30315083%17%
zeus.ext 20217088%12%
zeus.generator 24024620077%23%
zeus.generator.agent 36036216089%11%
zeus.generator.code 362342170.0689%5%
zeus.generator.event 1266450.556%6%
zeus.generator.task 481471210.0295%2%
zeus.generator.task.rulebase 909116094%6%
zeus.generator.util 276213170.2285%7%
zeus.gui 15015810056%44%
zeus.gui.dialog 770021100%100%
zeus.gui.editors 312590.3364%2%
zeus.gui.fields 808156029%71%
zeus.gui.graph 21813590.3864%2%
zeus.gui.help 5051611041%59%
zeus.ontology 8175160.1276%11%
zeus.ontology.attributes 505114093%7%
zeus.ontology.database 707114093%7%
zeus.ontology.facts 606414078%22%
zeus.ontology.restrictions 404114093%7%
zeus.rete 23320790.1356%31%
zeus.rete.action 25322190.1290%2%
zeus.util 29029487013%87%
zeus.visualiser 13013616073%27%
zeus.visualiser.basic 10285150.275%5%
zeus.visualiser.control 303114093%7%
zeus.visualiser.report 13013117094%6%
zeus.visualiser.society 15015117094%6%
zeus.visualiser.statistics 505115094%6%
zeus.visualiser.statistics.charts 12111170.0888%4%
zsh 101060100%0%

Packages

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

Default

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


java.awt

java.awt.event

java.io

java.lang

java.util

javax.swing

zeus.actors

zeus.agents

zeus.concepts

JADE_SL.acl

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
030%100%0%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
CommunicativeActBase

Inform

Request

JADE_SL

java.lang

java.util

JADE_SL.lang

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
2375%60%35%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
ByteArrayCodec

Codec

StringCodec

Codec$CodecException

JADE_SL.abs

JADE_SL.lang.sl

JADE_SL.abs

JADE_SL.onto

java.lang

JADE_SL.lang.sl

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
2911%82%7%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
SLParserConstants

ASCII_CharStream

ParseException

SLCodec

SLOntology

SLParser

SLParserTokenManager

Token

TokenMgrError

zeus.agents

zeus.concepts

JADE_SL

JADE_SL.abs

JADE_SL.lang

JADE_SL.onto

JADE_SL.schema

java.io

java.lang

java.util

sl

JADE_SL.onto.basic

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

Done

Equals

Result

TrueProposition

JADE_SL.onto

JADE_SL

JADE_SL.abs

JADE_SL.onto

java.lang

java.util

zeus.concepts

JADE_SL.schema.facets

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
150%83%17%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
CardinalityFacet

TypedAggregateFacet

JADE_SL.schema

JADE_SL.abs

JADE_SL.onto

JADE_SL.schema

java.lang

java.util

javax.agent

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
420%33%67%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
Envelope

Identifier

JasException

Name

JADE_SL

javax.agent.service

zeus.actors.outtrays

zeus.concepts

java.io

java.lang

javax.agent.service

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
0250%100%50%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
Transport

TimeoutException

java.lang

javax.agent

zeus.actors.rtn.util

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
3517%62%21%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
StrategyEvaluator

DStruct

DelegationStruct

GraphStruct

LocalDStruct

StrategyEvaluatorList

zeus.actors

zeus.actors.graphs

zeus.actors.rtn

java.lang

java.util

zeus.actors

zeus.concepts

zeus.util

zeus.agentviewer.rete

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
1100%91%9%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
ReteEngineDataModel

ReteEngineUI

zeus.agentviewer

java.awt

java.lang

java.util

javax.swing

javax.swing.text

zeus.actors

zeus.actors.event

zeus.agentviewer

zeus.rete

zeus.util

zeus.concepts

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
441816%29%55%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
AbstractTask

Address

AddressListener

ContentElement

FIPAParserConstants

MessageAction

MessagePattern

MessageRule

OntologyParserConstants

ParserConstants

PerformativeParserConstants

Reference

RestrictionParserConstants

Summary

SuppliedRequester

Task

AMS_Description

ASCII_CharStream

AbilityDbItem

AbilitySpec

AbilitySpecForwardCh

Acquaintance

AddressBook

AddressEvent

AgentDescription

AttributeList

BindResults

Bindings

BindingsRecord

ConditionalNode

ConsumerRecord

DF_Description

DuplicationTable

FIPAParser

FIPAParser$JJCalls

FIPAParserTokenManager

FIPAPerformative

FIPA_AID_Address

FIPA_AMS_Management_Content

FIPA_AP_Description

FIPA_AddressBook

FIPA_DF_Management_Content

FIPA_MTP_Description

FIPA_Property

FIPA_Received

FIPA_Search_Constraints

FIPA_Service_Description

FIPA_Transport_Profile

Fact

FactDescription

FactSummary

Goal

GoalSummary

MessageActionImpl

MessagePatternImpl

MessageRuleImpl

OntologyDb

OntologyDbChangeEvent

OntologyParser

OntologyParserTokenManager

Ordering

ParseException

Parser

Parser$JJCalls

ParserTokenManager

Performative

PerformativeParser

PerformativeParserTokenManager

PlanScript

PlannerEnactStruct

PlannerQueryStruct

PrimitiveTask

ProducerRecord

ProtocolInfo

Relationship

ReportRec

ReservationEntry

ResolutionContext

ResourceItem

ResourceItem$Entry

Restriction

RestrictionParser

RestrictionParser$JJCalls

RestrictionParserTokenManager

ReteKB

RoutingRecord

SLParser

SL_Util

SimpleCharStream

StrategyInfo

SummaryTable

SummaryTask

SuppliedDb

SuppliedItem

TaskLink

TaskNode

TaskSummary

Token

TokenMgrError

TransportConfig

ZeusAddress

ZeusParser

Default

JADE_SL

JADE_SL.onto.basic

zeus.actors

zeus.actors.event

zeus.actors.factories

zeus.actors.graphs

zeus.actors.intrays

zeus.actors.outtrays

zeus.actors.rtn

zeus.actors.rtn.util

zeus.agents

zeus.agentviewer

zeus.agentviewer.acquaintances

zeus.agentviewer.mail

zeus.agentviewer.msghandler

zeus.agentviewer.plansch

zeus.agentviewer.protocol

zeus.agentviewer.resources

zeus.agentviewer.task

zeus.concepts.fn

zeus.ext

zeus.generator

zeus.generator.agent

zeus.generator.code

zeus.generator.event

zeus.generator.task

zeus.generator.task.rulebase

zeus.generator.util

zeus.gui.dialog

zeus.ontology

zeus.ontology.attributes

zeus.ontology.database

zeus.ontology.facts

zeus.ontology.restrictions

zeus.rete

zeus.rete.action

zeus.util

zeus.visualiser

zeus.visualiser.basic

zeus.visualiser.control

zeus.visualiser.report

zeus.visualiser.society

zeus.visualiser.statistics

FIPA

JADE_SL.abs

JADE_SL.lang.sl

gnu.regexp

java.io

java.lang

java.lang.reflect

java.util

javax.agent

javax.swing.event

sl

zeus.actors

zeus.actors.factories

zeus.concepts.fn

zeus.generator

zeus.generator.code

zeus.rete

zeus.util

zeus.concepts.xmlobject

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
25100%71%71%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
Parser

zeus.agents

zeus.concepts.xmlobject.acc

java.io

java.lang

org.apache.xerces.parsers

org.w3c.dom

org.xml.sax

zeus.concepts.xmlobject.acc

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
150%83%17%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
Contact

Contacts

ContactsParser

zeus.agents

java.io

java.lang

java.util

org.w3c.dom

zeus.concepts.xmlobject

zeus.ext

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

FlatFile

zeus.ontology.database

java.io

java.lang

java.sql

java.util

zeus.agents

zeus.concepts

zeus.util

zeus.generator.task

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
1212%95%2%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
OrderingSelector

ConditionsPanel

ConditionsPanel$SymFocusAction

ConditionsPanel$SymMouseAction

ConditionsPanel$SymRenameAction

ConstraintsModel

ConstraintsPanel

ConstraintsPanel$1

ConstraintsPanel$ConstraintsToolBar

ConstraintsPanel$OrderingCellEditor

ConstraintsPanel$OrderingToolBar

ConstraintsPanel$SymMouseAction

GroupManager

InformationPanel

InformationPanel$1

InformationPanel$2

NodesPanel

NodesPanel$NodesToolBar

NodesPanel$SummaryTaskNodeRenderer

NodesPanel$SymFocusAction

NodesPanel$SymMouseAction

NodesPanel$SymRenameAction

OrderingDialog

OrderingDialog$1

OrderingModel

SummaryTaskModel

SummaryTaskNodeEditor

SummaryTaskNodeEditorDialog

SummaryTaskNodeEditorDialog$1

SymBasicFactModel

TaskEditor

TaskEditor$1

TaskEditor$SymChangeListener

TaskLinkBaseTreeModel

TaskLinkBaseTreePanel

TaskLinkBaseTreePanel$SymSelectAction

TaskLinkMainTreeModel

TaskLinkMainTreePanel

TaskLinkMainTreePanel$SymSelectAction

TaskLinkModel

TaskLinkPanel

TaskLinkPanel$TaskLinkToolBar

TaskNodePanel

TaskNodePanel$1

TaskNodePanel$2

TaskNodePanel$GroupToolBar

TaskNodePanel$SymFocusAction

TaskNodePanel$SymRenameAction

zeus.generator

java.awt

java.awt.event

java.lang

java.util

javax.swing

javax.swing.border

javax.swing.event

javax.swing.table

javax.swing.text

javax.swing.tree

zeus.concepts

zeus.concepts.fn

zeus.generator

zeus.generator.event

zeus.generator.task.rulebase

zeus.generator.util

zeus.gui.editors

zeus.gui.fields

zeus.gui.graph

zeus.gui.help

zeus.util

zeus.gui.dialog

Afferent CouplingsEfferent CouplingsAbstractnessInstabilityDistance
02100%100%100%
Abstract ClassesConcrete ClassesUsed by PackagesUses Packages
IAcquaintanceUI

IBrowseFact

IBrowseGoal

IBrowseTask

IDoCommandUI

IFactUI

ITaskUI

java.lang

zeus.concepts

zsh

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

java.io

java.lang

java.lang.reflect

java.util

zeus.agents

zeus.visualiser

Cycles

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

PackageCyclic Dependencies
Defaultzeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

JADE_SLzeus.util

zeus.concepts

zeus.util

JADE_SL.absJADE_SL.lang

JADE_SL.onto

JADE_SL.schema

JADE_SL.onto

JADE_SL.aclJADE_SL

zeus.util

zeus.concepts

zeus.util

JADE_SL.langJADE_SL.onto

JADE_SL.schema

JADE_SL.onto

JADE_SL.lang.slJADE_SL.onto

JADE_SL.schema

JADE_SL.onto

JADE_SL.ontoJADE_SL.schema

JADE_SL.onto

JADE_SL.onto.basicJADE_SL.onto

JADE_SL.schema

JADE_SL.onto

JADE_SL.schemaJADE_SL.onto

JADE_SL.schema

JADE_SL.schema.facetsJADE_SL.onto

JADE_SL.schema

JADE_SL.onto

zeus.actorszeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.actors.eventzeus.concepts

zeus.util

zeus.concepts

zeus.actors.factorieszeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.actors.graphszeus.actors.rtn

zeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.actors.intrayszeus.concepts

zeus.util

zeus.concepts

zeus.actors.outtrayszeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.actors.rtnzeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.actors.rtn.utilzeus.concepts

zeus.util

zeus.concepts

zeus.agentszeus.actors.intrays

zeus.concepts

zeus.util

zeus.concepts

zeus.agentviewerzeus.ontology.facts

zeus.util

zeus.concepts

zeus.util

zeus.agentviewer.acquaintanceszeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.enginezeus.gui.graph

zeus.util

zeus.concepts

zeus.util

zeus.agentviewer.mailzeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.msghandlerzeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.planschzeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.protocolzeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.resourceszeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.retezeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.agentviewer.taskzeus.concepts

zeus.util

zeus.concepts

zeus.conceptszeus.util

zeus.concepts

zeus.concepts.fnzeus.util

zeus.concepts

zeus.util

zeus.extzeus.util

zeus.concepts

zeus.util

zeus.generatorzeus.gui.help

zeus.util

zeus.concepts

zeus.util

zeus.generator.agentzeus.generator.util

zeus.util

zeus.concepts

zeus.util

zeus.generator.codezeus.util

zeus.concepts

zeus.util

zeus.generator.eventzeus.util

zeus.concepts

zeus.util

zeus.generator.taskzeus.concepts

zeus.util

zeus.concepts

zeus.generator.task.rulebasezeus.ontology.facts

zeus.util

zeus.concepts

zeus.util

zeus.generator.utilzeus.util

zeus.concepts

zeus.util

zeus.guizeus.util

zeus.concepts

zeus.util

zeus.gui.dialogzeus.concepts

zeus.util

zeus.concepts

zeus.gui.editorszeus.util

zeus.concepts

zeus.util

zeus.gui.graphzeus.util

zeus.concepts

zeus.util

zeus.gui.helpzeus.util

zeus.concepts

zeus.util

zeus.ontologyzeus.ontology.facts

zeus.util

zeus.concepts

zeus.util

zeus.ontology.attributeszeus.gui.editors

zeus.util

zeus.concepts

zeus.util

zeus.ontology.databasezeus.ext

zeus.util

zeus.concepts

zeus.util

zeus.ontology.factszeus.util

zeus.concepts

zeus.util

zeus.ontology.restrictionszeus.gui.editors

zeus.util

zeus.concepts

zeus.util

zeus.retezeus.concepts

zeus.util

zeus.concepts

zeus.rete.actionzeus.actors.rtn

zeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.utilzeus.concepts

zeus.util

zeus.visualiserzeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

zeus.visualiser.basiczeus.gui.help

zeus.util

zeus.concepts

zeus.util

zeus.visualiser.controlzeus.visualiser.basic

zeus.gui.help

zeus.util

zeus.concepts

zeus.util

zeus.visualiser.reportzeus.util

zeus.concepts

zeus.util

zeus.visualiser.societyzeus.gui.graph

zeus.util

zeus.concepts

zeus.util

zeus.visualiser.statisticszeus.visualiser.basic

zeus.gui.help

zeus.util

zeus.concepts

zeus.util

zeus.visualiser.statistics.chartszeus.util

zeus.concepts

zeus.util

zshzeus.visualiser

zeus.actors

zeus.actors.event

zeus.concepts

zeus.util

zeus.concepts

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.