<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.9.2 at 19 Sep 2022 
 | Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20220919" />
    <meta http-equiv="Content-Language" content="en" />
    <title>jUDDI Example Create Partition &#x2013; JDepend Report Metrics</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
      <script type="text/javascript" src="./js/apache-maven-fluido-1.6.min.js"></script>
      </head>
    <body class="topBarEnabled">
                      <a href="https://github.com/apache/juddi">
      <img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10000;"
        src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png"
        alt="Fork me on GitHub">
    </a>
      <div id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
        <div class="container-fluid">
        <a data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </a>
            <ul class="nav">
        <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Parent Project <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="../index.html" title="jUDDI Examples">jUDDI Examples</a></li>
        </ul>
      </li>
        <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li class="dropdown-submenu">
<a href="project-info.html" title="Project Information">Project Information</a>
              <ul class="dropdown-menu">
                  <li><a href="integration.html" title="CI Management">CI Management</a></li>
                  <li><a href="dependencies.html" title="Dependencies">Dependencies</a></li>
                  <li><a href="dependency-info.html" title="Dependency Information">Dependency Information</a></li>
                  <li><a href="dependency-management.html" title="Dependency Management">Dependency Management</a></li>
                  <li><a href="distribution-management.html" title="Distribution Management">Distribution Management</a></li>
                  <li><a href="index.html" title="About">About</a></li>
                  <li><a href="issue-tracking.html" title="Issue Management">Issue Management</a></li>
                  <li><a href="license.html" title="Licenses">Licenses</a></li>
                  <li><a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a></li>
                  <li><a href="plugin-management.html" title="Plugin Management">Plugin Management</a></li>
                  <li><a href="plugins.html" title="Plugins">Plugins</a></li>
                  <li><a href="team-list.html" title="Team">Team</a></li>
                  <li><a href="source-repository.html" title="Source Code Management">Source Code Management</a></li>
                  <li><a href="project-summary.html" title="Summary">Summary</a></li>
              </ul>
            </li>
            <li class="dropdown-submenu">
<a href="project-reports.html" title="Project Reports">Project Reports</a>
              <ul class="dropdown-menu">
                  <li><a href="apidocs/index.html" title="Javadoc">Javadoc</a></li>
                  <li><a href="jdepend-report.html" title="JDepend">JDepend</a></li>
                  <li><a href="xref/index.html" title="Source Xref">Source Xref</a></li>
                  <li><a href="findbugs.html" title="FindBugs">FindBugs</a></li>
                  <li><a href="jira-report.html" title="JIRA Report">JIRA Report</a></li>
              </ul>
            </li>
        </ul>
      </li>
              </ul>
            </div>
        </div>
      </div>
    </div>
    <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><a href="../.." id="bannerLeft"><img src="../../images/logo.png"  alt="Apache jUDDI"/></a></div>
        <div class="pull-right"><div id="bannerRight"><img src="../../images/apache_feather.gif" /></div>
</div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li class=""><a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
      <li class=""><a href="../index.html" title="jUDDI Examples">jUDDI Examples</a><span class="divider">/</span></li>
      <li class=""><a href="index.html" title="jUDDI Example Create Partition">jUDDI Example Create Partition</a><span class="divider">/</span></li>
    <li class="active ">JDepend Report Metrics</li>
        <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 19 Sep 2022</li>
          <li id="projectVersion" class="pull-right">Version: 3.3.11-SNAPSHOT</li>
        </ul>
      </div>
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
<ul class="nav nav-list">
          <li class="nav-header">Parent Project</li>
    <li><a href="../index.html" title="jUDDI Examples"><span class="none"></span>jUDDI Examples</a>  </li>
          <li class="nav-header">Project Documentation</li>
    <li><a href="project-info.html" title="Project Information"><span class="icon-chevron-right"></span>Project Information</a>  </li>
    <li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-down"></span>Project Reports</a>
      <ul class="nav nav-list">
    <li><a href="apidocs/index.html" title="Javadoc"><span class="none"></span>Javadoc</a>  </li>
    <li class="active"><a href="#"><span class="none"></span>JDepend</a>
  </li>
    <li><a href="xref/index.html" title="Source Xref"><span class="none"></span>Source Xref</a>  </li>
    <li><a href="findbugs.html" title="FindBugs"><span class="none"></span>FindBugs</a>  </li>
    <li><a href="jira-report.html" title="JIRA Report"><span class="none"></span>JIRA Report</a>  </li>
      </ul>
  </li>
  </ul>
<form id="search-form" action="https://www.google.com/search" method="get" >
      <input value="$sitesearchValue" name="sitesearch" type="hidden"/>
  <input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript">asyncJs( 'https://cse.google.com/brand?form=search-form' )</script>
          <hr />
          <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
  <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
              </div>
          </div>
        </div>
        <div id="bodyColumn"  class="span10" >
<section>
<h2><a name="Metric_Results"></a>Metric Results</h2>[ <a href="#summary">summary</a> ] [ <a href="#packages">packages</a> ] [ <a href="#cycles">cycles</a> ] [ <a href="#explanations">explanations</a> ] <br /><br />The following document contains the results of a JDepend metric analysis. The various metrics are defined at the bottom of this document.<br /><br /><a name="summary"></a>
<h2><a name="Summary"></a>Summary</h2>[ <a href="#summary">summary</a> ] [ <a href="#packages">packages</a> ] [ <a href="#cycles">cycles</a> ] [ <a href="#explanations">explanations</a> ] <br /><br />
<table border="0" class="table table-striped">
<tr class="a">
<th>Package</th>
<th>TC</th>
<th>CC</th>
<th>AC</th>
<th>Ca</th>
<th>Ce</th>
<th>A</th>
<th>I</th>
<th>D</th>
<th>V</th></tr>
<tr class="b">
<td><a href="#org.apache.juddi.example.partition">org.apache.juddi.example.partition</a></td>
<td>3</td>
<td>3</td>
<td>0</td>
<td>0</td>
<td>9</td>
<td>0.0%</td>
<td>100.0%</td>
<td>0.0%</td>
<td>1</td></tr></table><a name="packages"></a>
<h2><a name="Packages"></a>Packages</h2>[ <a href="#summary">summary</a> ] [ <a href="#packages">packages</a> ] [ <a href="#cycles">cycles</a> ] [ <a href="#explanations">explanations</a> ] <br /><a name="org.apache.juddi.example.partition"></a>
<h3><a name="org.apache.juddi.example.partition"></a>org.apache.juddi.example.partition</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Afferent Couplings</th>
<th>Efferent Couplings</th>
<th>Abstractness</th>
<th>Instability</th>
<th>Distance</th></tr>
<tr class="b">
<td>0</td>
<td>9</td>
<td>0.0%</td>
<td>100.0%</td>
<td>0.0%</td></tr></table>
<table border="0" class="table table-striped">
<tr class="a">
<th>Abstract Classes</th>
<th>Concrete Classes</th>
<th>Used by Packages</th>
<th>Uses Packages</th></tr>
<tr class="b">
<td><i>None</i></td>
<td>org.apache.juddi.example.partition.SimpleCreateTmodelPartition<br />org.apache.juddi.example.partition.SimpleCreateTmodelPartition$1<br />org.apache.juddi.example.partition.SimpleCreateTmodelPartition$AuthStyle<br /></td>
<td><i>None</i></td>
<td>java.io<br />java.lang<br />java.util<br />javax.xml.ws<br />org.apache.commons.configuration<br />org.apache.juddi.v3.client.config<br />org.apache.juddi.v3.client.transport<br />org.uddi.api_v3<br />org.uddi.v3_service<br /></td></tr></table><a name="cycles"></a>
<h2><a name="Cycles"></a>Cycles</h2>[ <a href="#summary">summary</a> ] [ <a href="#packages">packages</a> ] [ <a href="#cycles">cycles</a> ] [ <a href="#explanations">explanations</a> ] <br /><br />There are no cyclic dependencies.<br /><a name="explanations"></a>
<h2><a name="Explanation"></a>Explanation</h2>[ <a href="#summary">summary</a> ] [ <a href="#packages">packages</a> ] [ <a href="#cycles">cycles</a> ] [ <a href="#explanations">explanations</a> ] <br /><br />The following explanations are for quick reference and are lifted directly from the original JDepend documentation.<br /><br />
<table border="0" class="table table-striped">
<tr class="a">
<th>Term</th>
<th>Description</th></tr>
<tr class="b">
<td>Number of Classes</td>
<td>The number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package.</td></tr>
<tr class="a">
<td>Afferent Couplings</td>
<td>The number of other packages that depend upon classes within the package is an indicator of the package's responsibility.</td></tr>
<tr class="b">
<td>Efferent Couplings</td>
<td>The number of other packages that the classes in the package depend upon is an indicator of the package's independence.</td></tr>
<tr class="a">
<td>Abstractness</td>
<td>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.</td></tr>
<tr class="b">
<td>Instability</td>
<td>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.</td></tr>
<tr class="a">
<td>Distance</td>
<td>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.</td></tr>
<tr class="b">
<td>Cycles</td>
<td>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.</td></tr></table></section>
        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2004&#x2013;2022
<a href="https://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.</p>
        </div>
        </div>
    </footer>
    </body>
</html>
