User Tools

Site Tools


pom

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
pom [2014/01/10 06:32]
yann
pom [2019/10/06 20:37] (current)
Line 1: Line 1:
 ====== POM ====== ====== POM ======
  
 +POM stands for Primitives, Operations, Metrics and is a framework built to compute software metrics on PADL models. A paper introducing POM has been published by [[http://​www.ptidej.net/​publications/​Author/​ZAIDI-F.php|Zaidi,​ Guéhéneuc,​ and Sahraoui]] and can be used as reference. Metrics can be a several kinds:
 +  * Unary or binary, depending on whether they take as input one or two [[padl|IFirstClassEntity(ies)]];​
 +  * Context dependent or independent,​ depending on whether they can be computed by considering given [[padl|IFirstClassEntity(ies)]] independently of the rest of the model.
  
-===== Metrics ​definitions ​=====+===== Metrics ​Definition ​=====
  
 ^ Names ^ Definitions ^ ^ Names ^ Definitions ^
-| ACAIC | Ancestor Class-Attribute Import Coupling ​|+| ACAIC | Ancestor Class-Attribute Import Coupling |
 | ACMIC | Ancestors Class-Method Import Coupling | | ACMIC | Ancestors Class-Method Import Coupling |
 | AID | Average Inheritance Depth of an entity | | AID | Average Inheritance Depth of an entity |
Line 78: Line 81:
 | WMCmccabe | Weight of an entity considering the complexity of each of its method as being their McCabe cyclomatic complexity. (Default constructors are considered even if not explicitely declared). | | WMCmccabe | Weight of an entity considering the complexity of each of its method as being their McCabe cyclomatic complexity. (Default constructors are considered even if not explicitely declared). |
  
-===== Computing ​Metrics =====+===== Metrics ​Computation ​=====
  
 Computing POM metrics using PADL is made easy by the helper class ''​pom.helper.MetricsGenerator''​. After having installed CPL, PADL, and POM, just go into the ''​POM Tests''​ project and have a look at this class. It provides a main method with snippets of code to call one of the three methods: Computing POM metrics using PADL is made easy by the helper class ''​pom.helper.MetricsGenerator''​. After having installed CPL, PADL, and POM, just go into the ''​POM Tests''​ project and have a look at this class. It provides a main method with snippets of code to call one of the three methods:
Line 84: Line 87:
    * ''​computeMetricsFromEclipse''​    * ''​computeMetricsFromEclipse''​
    * ''​computeMetricsFromJARs''​    * ''​computeMetricsFromJARs''​
-which can be used to compute automatically metrics from various input sources. Also have a look at the constant array listing the metrics that must be computed or avoided: ''​METRICS_TO_AVOID''​ and ''​METRICS_TO_COMPUTE''​.+which can be used to compute automatically metrics from various input sources. Also have a look at the constant array listing the metrics that must be computed or avoided: ''​METRICS_TO_AVOID''​ and ''​METRICS_TO_COMPUTE''​. As other repositories,​ POM makes it easy [[repositories|to access the different kinds of metrics]].
pom.1389335576.txt.gz · Last modified: 2019/10/06 20:37 (external edit)