Architecture notes:
Architectural dependencies are calculated at the leaf package level in the web app.
See here for more on architecure diagrams.
|
Snapshot report
Settings
| Classpath: | I:\structure101.com\ibatis\2.3.4\lib\ibatis-2.3.4.726.jar
|
| Granularity: |
"Detail" - includes inner classes, methods and fields
|
| Externals: |
"Hide" - referenced items are not included
|
| Excludes: |
"On" - User-defined items have been excluded from the model
|
| Transformations: | None |
Size
| Jars (and/or classpath directories): | 1 |
| Packages (that contain classes): | 45 |
| Classes (outer): | 203 |
| Classes (all): | 247 |
| Classes (external): | 0 |
| |
| NI (Number of bytecode Instructions): | 35K |
| LOC (Non Comment Non Blank Lines Of Code): | ~15K |
|
Flat Tangles
| Level | #Items | #Tangles | #Tangled items | Biggest | Degree |
| Leaf package | 45 | 1 | 34 | 34 | 76% |
| Jar | 1 | n/a | n/a | n/a | n/a |
| Outer class | 203 | 4 | 46 | 31 | 16% |
Excessive Structural Complexity (XS)
| Cumulative XS: | 6,445 |
| Average XS: | 18% |
XS breakout by metric (and scope)
| Metric (and scope) | Threshold | #Offenders | Offenses (%) | XS contribution |
| Tangled (design)
| 0 | 5
of
14 | 36% | 90% |
| Fat (design)
| 120 | 0
of
14 | 0% | 0% |
| Fat (leaf package)
| 120 | 0
of
45 | 0% | 0% |
| Fat (class)
| 120 | 1
of
247 | 0% | 5% |
| Fat (method)
| 15 | 7
of
2,100 | 0% | 5% |
| Total | | 100% |
Tangled (design):
5
| Item | Value |
com.ibatis.sqlmap.engine.mapping | 14% |
com.ibatis.sqlmap.engine | 10% |
com.ibatis.sqlmap | 6% |
com.ibatis.common | 3% |
com.ibatis | 0% |
Fat (design)
No items exceed the threshold for Fat at the design level.
Fat (leaf package)
No items exceed the threshold for Fat at the leaf package level.
Fat (class):
1
| Item | Value |
com.ibatis.common.jdbc.SimpleDataSource | 142 |
Fat (method):
Top 5 (of 7)
| Item | Value |
com.ibatis.common.jdbc.logging.PreparedStatementLogProxy.invoke(Object, Method, Object[]):Object | 23 |
com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements.ConditionalTagHandler.convertValue(Class, String):Object | 21 |
com.ibatis.common.jdbc.logging.StatementLogProxy.invoke(Object, Method, Object[]):Object | 20 |
com.ibatis.common.jdbc.ScriptRunner.runScript(Connection, Reader):void | 20 |
com.ibatis.common.jdbc.SimpleDataSource.popConnection(String, String):SimplePooledConnection | 20 |
Items with highest XS - Top 10
(of 13)
| Item | Tangled | Fat | Size | XS |
com.ibatis.sqlmap.engine | 10% | 44 | 25,521 | 2,571 |
com.ibatis.sqlmap | 6% | 2 | 25,683 | 1,661 |
com.ibatis.sqlmap.engine.mapping | 14% | 9 | 8,380 | 1,158 |
com.ibatis.common.jdbc.SimpleDataSource | | 142 | 2,091 | 323 |
com.ibatis.common | 3% | 6 | 9,524 | 293 |
com.ibatis | 0% | 2 | 35,207 | 100 |
com.ibatis.common.jdbc.SimpleDataSource.popConnection(String, String):SimplePooledConnection | | 20 | 334 | 83 |
com.ibatis.common.jdbc.ScriptRunner.runScript(Connection, Reader):void | | 20 | 266 | 66 |
com.ibatis.common.jdbc.logging.PreparedStatementLogProxy.invoke(Object, Method, Object[]):Object | | 23 | 184 | 64 |
com.ibatis.common.jdbc.SimpleDataSource.initialize(Map):void | | 18 | 291 | 48 |
|