Run with JarAnalyzer on 01/09/09
Summary | [summary] [jars] [cycles] [explanations] |
Jar Name | Total Classes | Abstract Classes | Packages | Abstractness | Efferent | Afferent | Instability | Distance |
---|---|---|---|---|---|---|---|---|
spring-aop.jar | 248 | 78 | 15 | 0.31 | 2 | 5 | 0.29 | 0.40 |
spring-beans.jar | 297 | 89 | 15 | 0.30 | 1 | 12 | 0.08 | 0.62 |
spring-context-support.jar | 57 | 12 | 8 | 0.21 | 5 | 1 | 0.83 | 0.04 |
spring-context.jar | 344 | 107 | 48 | 0.31 | 3 | 10 | 0.23 | 0.46 |
spring-core.jar | 212 | 92 | 19 | 0.43 | 0 | 13 | 0.00 | 0.57 |
spring-jdbc.jar | 245 | 81 | 15 | 0.33 | 4 | 3 | 0.57 | 0.10 |
spring-jms.jar | 135 | 28 | 13 | 0.21 | 5 | 0 | 1.00 | 0.21 |
spring-orm.jar | 293 | 46 | 14 | 0.16 | 7 | 1 | 0.88 | 0.04 |
spring-test.jar | 110 | 42 | 15 | 0.38 | 8 | 0 | 1.00 | 0.38 |
spring-tx.jar | 185 | 49 | 20 | 0.26 | 4 | 5 | 0.44 | 0.30 |
spring-web.jar | 133 | 34 | 13 | 0.26 | 4 | 4 | 0.50 | 0.24 |
spring-webmvc-portlet.jar | 89 | 29 | 8 | 0.33 | 5 | 1 | 0.83 | 0.16 |
spring-webmvc-struts.jar | 20 | 6 | 2 | 0.30 | 5 | 0 | 1.00 | 0.30 |
spring-webmvc.jar | 245 | 80 | 27 | 0.33 | 5 | 3 | 0.63 | 0.04 |
Jars | [summary] [jars] [cycles] [explanations] |
Afferent Couplings: 5 | Efferent Couplings: 2 | Abstractness: 0.31 | Instability: 0.29 | Distance: 0.40 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-core.jar spring-beans.jar | spring-context.jar spring-jms.jar spring-orm.jar spring-tx.jar spring-web.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.aop org.springframework.aop.aspectj org.springframework.aop.aspectj.annotation org.springframework.aop.aspectj.autoproxy org.springframework.aop.config org.springframework.aop.framework org.springframework.aop.framework.adapter org.springframework.aop.framework.autoproxy org.springframework.aop.framework.autoproxy.target org.springframework.aop.interceptor org.springframework.aop.scope org.springframework.aop.support org.springframework.aop.support.annotation org.springframework.aop.target org.springframework.aop.target.dynamic | org.aopalliance.aop
org.aopalliance.intercept org.aspectj.lang org.aspectj.weaver.tools org.aspectj.weaver.patterns org.aspectj.weaver org.aspectj.weaver.reflect org.apache.commons.logging org.aspectj.bridge org.aspectj.lang.reflect org.aspectj.runtime.internal org.aspectj.weaver.ast org.aspectj.weaver.internal.tools org.aspectj.lang.annotation org.aspectj.util net.sf.cglib.proxy net.sf.cglib.transform.impl net.sf.cglib.core com.jamonapi org.apache.commons.pool.impl org.apache.commons.pool |
Afferent Couplings: 12 | Efferent Couplings: 1 | Abstractness: 0.30 | Instability: 0.08 | Distance: 0.62 |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.beans org.springframework.beans.annotation org.springframework.beans.factory org.springframework.beans.factory.access org.springframework.beans.factory.access.el org.springframework.beans.factory.annotation org.springframework.beans.factory.config org.springframework.beans.factory.generic org.springframework.beans.factory.parsing org.springframework.beans.factory.serviceloader org.springframework.beans.factory.support org.springframework.beans.factory.wiring org.springframework.beans.factory.xml org.springframework.beans.propertyeditors org.springframework.beans.support | org.apache.commons.logging
net.sf.cglib.proxy |
Afferent Couplings: 1 | Efferent Couplings: 5 | Abstractness: 0.21 | Instability: 0.83 | Distance: 0.04 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-beans.jar spring-core.jar spring-context.jar spring-jdbc.jar spring-tx.jar | spring-webmvc.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.cache.ehcache org.springframework.mail org.springframework.mail.javamail org.springframework.scheduling.commonj org.springframework.scheduling.quartz org.springframework.ui.freemarker org.springframework.ui.jasperreports org.springframework.ui.velocity | net.sf.ehcache
net.sf.ehcache.constructs.blocking org.apache.commons.logging net.sf.ehcache.store net.sf.ehcache.event net.sf.ehcache.bootstrap commonj.timers commonj.work org.quartz org.quartz.spi org.quartz.utils org.quartz.impl.jdbcjobstore org.quartz.xml org.quartz.impl org.quartz.simpl freemarker.template freemarker.cache net.sf.jasperreports.engine net.sf.jasperreports.engine.data net.sf.jasperreports.engine.export org.apache.velocity.runtime.log org.apache.velocity.runtime org.apache.velocity.exception org.apache.velocity.runtime.resource.loader org.apache.commons.collections org.apache.velocity.runtime.resource org.apache.velocity.app org.apache.velocity |
Afferent Couplings: 10 | Efferent Couplings: 3 | Abstractness: 0.31 | Instability: 0.23 | Distance: 0.46 |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.context org.springframework.context.access org.springframework.context.annotation org.springframework.context.config org.springframework.context.event org.springframework.context.i18n org.springframework.context.support org.springframework.context.weaving org.springframework.ejb.access org.springframework.ejb.config org.springframework.ejb.interceptor org.springframework.ejb.support org.springframework.instrument.classloading org.springframework.instrument.classloading.glassfish org.springframework.instrument.classloading.oc4j org.springframework.instrument.classloading.weblogic org.springframework.jmx org.springframework.jmx.access org.springframework.jmx.export org.springframework.jmx.export.annotation org.springframework.jmx.export.assembler org.springframework.jmx.export.metadata org.springframework.jmx.export.naming org.springframework.jmx.export.notification org.springframework.jmx.support org.springframework.jndi org.springframework.jndi.support org.springframework.remoting org.springframework.remoting.rmi org.springframework.remoting.soap org.springframework.remoting.support org.springframework.scheduling org.springframework.scheduling.backportconcurrent org.springframework.scheduling.concurrent org.springframework.scheduling.support org.springframework.scheduling.timer org.springframework.scripting org.springframework.scripting.bsh org.springframework.scripting.config org.springframework.scripting.groovy org.springframework.scripting.jruby org.springframework.scripting.support org.springframework.stereotype org.springframework.ui org.springframework.ui.context org.springframework.ui.context.support org.springframework.validation org.springframework.validation.support | org.apache.commons.logging
org.aopalliance.intercept org.aspectj.weaver.loadtime org.springframework.instrument oracle.classloader.util org.aopalliance.aop edu.emory.mathcs.backport.java.util.concurrent bsh groovy.lang org.codehaus.groovy.control org.jruby.exceptions org.jruby org.jruby.runtime.builtin org.jruby.javasupport org.jruby.runtime org.jruby.ast net.sf.cglib.proxy net.sf.cglib.core net.sf.cglib.asm |
Afferent Couplings: 13 | Efferent Couplings: 0 | Abstractness: 0.43 | Instability: 0.00 | Distance: 0.57 |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.core org.springframework.core.annotation org.springframework.core.enums org.springframework.core.io org.springframework.core.io.support org.springframework.core.style org.springframework.core.task org.springframework.core.task.support org.springframework.core.type org.springframework.core.type.classreading org.springframework.core.type.filter org.springframework.metadata org.springframework.metadata.commons org.springframework.util org.springframework.util.comparator org.springframework.util.xml org.springframework.asm org.springframework.asm.signature org.springframework.asm.commons | edu.emory.mathcs.backport.java.util.concurrent
org.apache.commons.collections.map org.apache.commons.collections org.apache.commons.logging org.aspectj.weaver org.aspectj.weaver.patterns org.aspectj.weaver.bcel org.aspectj.bridge org.apache.commons.attributes org.apache.log4j.xml org.apache.log4j |
Afferent Couplings: 3 | Efferent Couplings: 4 | Abstractness: 0.33 | Instability: 0.57 | Distance: 0.10 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-tx.jar spring-beans.jar spring-core.jar spring-context.jar | spring-context-support.jar spring-orm.jar spring-test.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.jdbc org.springframework.jdbc.core org.springframework.jdbc.core.metadata org.springframework.jdbc.core.namedparam org.springframework.jdbc.core.simple org.springframework.jdbc.core.support org.springframework.jdbc.datasource org.springframework.jdbc.datasource.lookup org.springframework.jdbc.object org.springframework.jdbc.support org.springframework.jdbc.support.incrementer org.springframework.jdbc.support.lob org.springframework.jdbc.support.nativejdbc org.springframework.jdbc.support.rowset org.springframework.jdbc.support.xml | org.apache.commons.logging
com.mchange.v2.c3p0 org.enhydra.jdbc.core |
Afferent Couplings: 0 | Efferent Couplings: 5 | Abstractness: 0.21 | Instability: 1.00 | Distance: 0.21 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-core.jar spring-beans.jar spring-tx.jar spring-context.jar spring-aop.jar | None | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.jms org.springframework.jms.config org.springframework.jms.connection org.springframework.jms.core org.springframework.jms.core.support org.springframework.jms.listener org.springframework.jms.listener.adapter org.springframework.jms.listener.endpoint org.springframework.jms.listener.serversession org.springframework.jms.remoting org.springframework.jms.support org.springframework.jms.support.converter org.springframework.jms.support.destination | org.apache.commons.logging
org.apache.commons.pool org.apache.commons.pool.impl org.aopalliance.intercept |
Afferent Couplings: 1 | Efferent Couplings: 7 | Abstractness: 0.16 | Instability: 0.88 | Distance: 0.04 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-tx.jar spring-beans.jar spring-jdbc.jar spring-core.jar spring-context.jar spring-web.jar spring-aop.jar | spring-test.jar | None |
Afferent Couplings: 0 | Efferent Couplings: 8 | Abstractness: 0.38 | Instability: 1.00 | Distance: 0.38 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-context.jar spring-core.jar spring-webmvc.jar spring-webmvc-portlet.jar spring-beans.jar spring-jdbc.jar spring-tx.jar spring-orm.jar | None | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.mock.jndi org.springframework.mock.web org.springframework.mock.web.portlet org.springframework.test org.springframework.test.annotation org.springframework.test.context org.springframework.test.context.junit38 org.springframework.test.context.junit4 org.springframework.test.context.support org.springframework.test.context.testng org.springframework.test.context.transaction org.springframework.test.jdbc org.springframework.test.jpa org.springframework.test.util org.springframework.test.web | org.apache.commons.logging
org.apache.taglibs.standard.lang.support junit.framework org.junit.runner org.junit.internal.runners org.junit.runner.notification org.junit org.testng org.testng.annotations org.aspectj.weaver.loadtime |
Afferent Couplings: 5 | Efferent Couplings: 4 | Abstractness: 0.26 | Instability: 0.44 | Distance: 0.30 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-core.jar spring-aop.jar spring-beans.jar spring-context.jar | spring-context-support.jar spring-jdbc.jar spring-jms.jar spring-orm.jar spring-test.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.dao org.springframework.dao.annotation org.springframework.dao.support org.springframework.jca.cci org.springframework.jca.cci.connection org.springframework.jca.cci.core org.springframework.jca.cci.core.support org.springframework.jca.cci.object org.springframework.jca.context org.springframework.jca.endpoint org.springframework.jca.support org.springframework.jca.work org.springframework.jca.work.glassfish org.springframework.jca.work.jboss org.springframework.transaction org.springframework.transaction.annotation org.springframework.transaction.config org.springframework.transaction.interceptor org.springframework.transaction.jta org.springframework.transaction.support | org.aopalliance.aop
org.apache.commons.logging org.aopalliance.intercept org.objectweb.jotm com.ibm.wsspi.uow |
Afferent Couplings: 4 | Efferent Couplings: 4 | Abstractness: 0.26 | Instability: 0.50 | Distance: 0.24 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-context.jar spring-core.jar spring-beans.jar spring-aop.jar | spring-orm.jar spring-webmvc-portlet.jar spring-webmvc-struts.jar spring-webmvc.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.remoting.caucho org.springframework.remoting.httpinvoker org.springframework.remoting.jaxrpc org.springframework.remoting.jaxrpc.support org.springframework.remoting.jaxws org.springframework.web org.springframework.web.context org.springframework.web.context.request org.springframework.web.context.support org.springframework.web.filter org.springframework.web.jsf org.springframework.web.jsf.el org.springframework.web.util | com.caucho.burlap.client
org.aopalliance.intercept com.caucho.burlap.server com.caucho.burlap.io com.caucho.hessian.io com.caucho.hessian.server org.apache.commons.logging com.caucho.hessian.client org.apache.commons.httpclient org.apache.commons.httpclient.methods org.apache.commons.httpclient.params org.apache.axis.encoding.ser org.aopalliance.aop org.apache.log4j org.apache.taglibs.standard.lang.support |
Afferent Couplings: 1 | Efferent Couplings: 5 | Abstractness: 0.33 | Instability: 0.83 | Distance: 0.16 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-beans.jar spring-core.jar spring-context.jar spring-webmvc.jar spring-web.jar | spring-test.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.web.portlet org.springframework.web.portlet.bind org.springframework.web.portlet.context org.springframework.web.portlet.handler org.springframework.web.portlet.multipart org.springframework.web.portlet.mvc org.springframework.web.portlet.mvc.annotation org.springframework.web.portlet.util | org.apache.commons.logging
org.apache.commons.fileupload.portlet org.apache.commons.fileupload org.apache.commons.fileupload.disk |
Afferent Couplings: 0 | Efferent Couplings: 5 | Abstractness: 0.30 | Instability: 1.00 | Distance: 0.30 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-web.jar spring-context.jar spring-beans.jar spring-webmvc.jar spring-core.jar | None | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.web.servlet.view.tiles org.springframework.web.struts | org.apache.struts.tiles
org.apache.commons.logging org.apache.struts.action org.apache.struts.config org.apache.struts.actions org.apache.commons.beanutils org.apache.struts.util |
Afferent Couplings: 3 | Efferent Couplings: 5 | Abstractness: 0.33 | Instability: 0.63 | Distance: 0.04 |
Uses Jars | Used by Jars | Cycles With |
---|---|---|
spring-context.jar spring-web.jar spring-beans.jar spring-core.jar spring-context-support.jar | spring-test.jar spring-webmvc-portlet.jar spring-webmvc-struts.jar | None |
Packages within jar | Unresolved Packages |
---|---|
org.springframework.web.bind org.springframework.web.bind.annotation org.springframework.web.bind.annotation.support org.springframework.web.bind.support org.springframework.web.multipart org.springframework.web.multipart.commons org.springframework.web.multipart.support org.springframework.web.servlet org.springframework.web.servlet.handler org.springframework.web.servlet.handler.metadata org.springframework.web.servlet.i18n org.springframework.web.servlet.mvc org.springframework.web.servlet.mvc.annotation org.springframework.web.servlet.mvc.multiaction org.springframework.web.servlet.mvc.support org.springframework.web.servlet.mvc.throwaway org.springframework.web.servlet.support org.springframework.web.servlet.tags org.springframework.web.servlet.tags.form org.springframework.web.servlet.theme org.springframework.web.servlet.view org.springframework.web.servlet.view.document org.springframework.web.servlet.view.freemarker org.springframework.web.servlet.view.jasperreports org.springframework.web.servlet.view.tiles2 org.springframework.web.servlet.view.velocity org.springframework.web.servlet.view.xslt | org.apache.commons.logging
org.apache.commons.fileupload.disk org.apache.commons.fileupload org.apache.commons.fileupload.servlet org.apache.commons.attributes org.apache.poi.hssf.usermodel org.apache.poi.poifs.filesystem jxl jxl.write com.lowagie.text.pdf com.lowagie.text freemarker.template freemarker.ext.jsp freemarker.cache freemarker.ext.servlet freemarker.core net.sf.jasperreports.engine net.sf.jasperreports.engine.design net.sf.jasperreports.engine.util net.sf.jasperreports.engine.xml net.sf.jasperreports.engine.export org.apache.tiles.servlet.context org.apache.tiles.preparer org.apache.tiles.context org.apache.tiles org.apache.tiles.locale.impl org.apache.tiles.web.util org.apache.tiles.factory org.apache.tiles.access org.apache.velocity.app org.apache.velocity.exception org.apache.velocity.context org.apache.velocity org.apache.velocity.tools.view.context org.apache.velocity.tools.view.tools org.apache.velocity.tools.view org.apache.velocity.tools.view.servlet org.apache.velocity.tools.generic org.apache.velocity.app.tools |
Cycles | [summary] [jars] [cycles] [explanations] |
None
None
None
None
None
None
None
None
None
None
None
None
None
None
Explanations | [summary] [jars] [cycles] [explanations] |
The following explanations are for quick reference. More detailed information can be found in the JarAnalyzer documentation.
The number of concrete and abstract classes (and interfaces) in the jar is an indicator of the extensibility of the jar.
The number of packages in the jar.
The number of other jars that depend upon classes within the jar is an indicator of the jar's responsibility.
The number of other jars that the classes in the jar depend upon is an indicator of the jar's independence.
The ratio of the number of abstract classes (and interfaces) in the analyzed jar to the total number of classes in the analyzed jar.
The range for this metric is 0 to 1, with A=0 indicating a completely concrete jar and A=1 indicating a completely abstract jar.
The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This metric is an indicator of the jar's resilience to change.
The range for this metric is 0 to 1, with I=0 indicating a completely stable jar and I=1 indicating a completely instable jar.
The perpendicular distance of a jar from the idealized line A + I = 1. This metric is an indicator of the jar's balance between abstractness and stability.
A jar squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal jars 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 jar that is coincident with the main sequence and D=1 indicating a jar that is as far from the main sequence as possible.
Packages not found in any of the jars analyzed. These can be filtered from output by specifying the packages to exlude in the Filter.properties file. Conversely, you can include jars containing these packages in the directory being analyzed.
These packages are excluded from all calculations and adding the jars containing these packages will result in modified metrics.