Glossary
| Term | Definition | 
|---|---|
| Background Fact | An external information that can be related to Quality Indicators or Sizing Measures | 
| Business Criterion | A Quality Criterion which grade is based upon contributing technical criteria grades and critical violations | 
| Category | A Quality Distribution slot. There are 4 categories defined for each Quality Distribution. A category measure is an input value to compute the Quality Distribution grade. | 
| Configuration Item | A Quality Indicator, Sizing Measure of Background Fact, implemented as calculation rule to measure an application or a module. | 
| Distribution Pattern | The Distribution Pattern is the definition of the Object property to use to decide in which distribution category to assign Objects. It also includes the associated documentation: description, rationale, reference, remediation, … | 
| Grade Aggregator | An impacted Quality Indicator (see Grade Contributor) | 
| Grade Contributor | A Quality Indicator which measure is used to compute another Quality Indicator (see Grade Aggregator) | 
| Indirect Contributing Quality Indicator | A Quality Rule, Quality Distribution or Quality Measure contributing to a Business Criterion | 
| Measure Pattern | The Measure Pattern is the definition of the measure to perform on each Module. It also includes the associated documentation: description, rationale, reference, remediation, … | 
| Quality Indicator | An calculation measure which unit is a grade between 1.0 (very high risk) and 4.0 (low risk) to assess a source code quality. | 
| Quality Distribution | A Quality Criterion based on a distribution pattern | 
| Quality Rule | A Quality Criterion to assess compliance of a source code with a Rule Pattern. | 
| Quality Measure | A Quality Criterion based on a measure pattern | 
| Rule Pattern | The Rule Pattern is the pattern that is searched for in the analysis results (source code, cartography, etc.) to pinpoint Violations. It also includes the associated documentation: description, rationale, reference, remediation, … | 
| Sizing Measure | A quantitative measure | 
| Technical Criterion | A Quality Indicator which grade is based upon contributing Quality Rule , Quality Distribution and Quality Measures grades. | 
Configuration Snapshot
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/configuration/snapshots               | Array of Configurations snapshots | 
| GET | application/json | {Domain}/configuration/snapshots/{snapshotID}               | A configuration snapshot content | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Configuration name | String | 1 | 
| number | Snapshot order number.Snapshots are ordered according to the annotation.date | Integer | 1 | 
| annotation | User annotations describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
| qualityIndicators.href | Reference to get a group of indicators | URI | 1 | 
| sizingMeasures.href | Reference to get a group of sizing measures | URI | 1 | 
| backgroundFacts.href | Reference to get background facts | URI | 1 | 
JSON Example
GET DEMO/configuration/snapshots/5
{
	"href": "DEMO/configuration/snapshots/5",
	"name": "Configuration Snapshot #1",
	"number": 1,
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"qualityIndicators": {
		"href": "DEMO/configuration/snapshots/5/quality-indicators",
		"name": "All Quality Indicators"
	},
	"sizingMeasures": {
		"href": "DEMO/configuration/snapshots/5/sizing-measures",
		"name": "All Sizing Measures"
	},
	"backgroundFacts": {
		"href": "DEMO/configuration/snapshots/5/background-facts",
		"name": "All Background Facts"
	}
}
Configuration Models
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/configuration/snapshots/{snapshotID}/quality-indicators
         | Quality Model | 
| GET | application/json | {Domain}/configuration/snapshots/{snapshotID}/sizing-measures
         | Sizing Model | 
JSON Representation
| Quality Model | |||
|---|---|---|---|
| Properties | Description | Type | Occurs | 
| businessCriteria.href | All Business criteria | URI | 1 | 
| technicalCriteria.href | All Technical criteria. | URI | 1 | 
| qualityRules.href | All Quality Rules | URI | 1 | 
| qualityDistributions.href | All Quality Distributions | URI | 1 | 
| qualityMeasures.href | All Quality Measures | URI | 1 | 
| Sizing Model | |||
|---|---|---|---|
| Properties | Description | Type | Occurs | 
| technicalSizeMeasures.href | All Technical Size Measures | URI | 1 | 
| functionalWeightMeasures.href | All Functional Weight Measures | URI | 1 | 
| criticalViolationStatistics.href | All Critical Violation Statistics | URI | 1 | 
| violationStatistics.href | All Violation Statistics | URI | 1 | 
| technicalDebtStatistics.href | All Technical Debt Statistics | URI | 1 | 
| runtimeStatistics.href | All Run-time Statistics | URI | 1 | 
 
 
JSON Example
GET DEMO/configuration/snapshots/5/quality-indicators
{
	"businessCriteria": {
		"href": "DEMO/configuration/snapshots/5/business-criteria",
		"name": "All Business Criteria"
	},
	"technicalCriteria": {
		"href": "DEMO/configuration/snapshots/5/technical-criteria",
		"name": "All Technical Criteria"
	},
	"qualityRules": {
		"href": "DEMO/configuration/snapshots/5/quality-rules",
		"name": "All Quality Rules"
	},
	"qualityDistributions": {
		"href": "DEMO/configuration/snapshots/5/quality-distributions",
		"name": "All Quality Distributions"
	},
	"qualityMeasures": {
		"href": "DEMO/configuration/snapshots/5/quality-measures",
		"name": "All Quality Measures"
	}
}
Collection of Configuration Items
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/business-criteria
         | Array of references to Quality Indicators definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/technical-criteria 
         | Array of references to Quality Indicators definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/quality-rules 
         | Array of references to Quality Indicators definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/quality-distributions 
         | Array of references to Quality Indicators definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/quality-measures 
         | Array of references to Quality Indicators definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/technical-size-measures 
         | Array of references to Sizing Measures definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/functional-weight-measures 
         | Array of references to Sizing Measures definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/critical-violation-statistics 
         | Array of references to Sizing Measures definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/violation-statistics 
 | Array of references to Sizing Measures definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/technical-debt-statistics 
         | Array of references to Sizing Measures definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/run-time-statistics 
         | Array of references to Sizing Measures definitions | 
| GET | application/json |           {Domain}/configuration/snapshots/{snapshotID}/background-facts
               | Array of references to Background Facts definitions | 
 Business Criterion 
 
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/quality-indicators/{metricID}/snapshots/{snapshotID}   | A snapshoted Quality Indicator definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| key | Metric Id | String | 1 | 
| name | Business Criterion name | String | 1 | 
| description | Metric description | String | 0..1 | 
| type | Type | String | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
| number | Snapshot order number | Integer | 1 | 
| gradeAggregators | An empty array | Array | 1 | 
| gradeContributors | An array of contributing Technical Criteria | Array | 1 | 
| gradeContributors[].href | A contributing technical criteria | URI | 1 | 
| baseQualityIndicators.href | Reference to get an array of indirect contributing quality indicators | URI | 1 | 
JSON Example
GET DEMO/quality-indicators/66032/snapshots/5 (Business Criterion)
{
	"href": "DEMO/quality-indicators/66032/snapshots/5",
	"key": "66032",
	"name": "Architectural Design",
	"description": "Architectural Design",
	"type": "business-criteria",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
	"gradeAggregators": [],
	"gradeContributors": [
		{
			"href": "DEMO/quality-indicators/66070/snapshots/5",
			"key": "66070",
			"name": "Architecture - Architecture Models Automated Checks",
			"weight": 1,
			"critical": false
		},...
	],
	"baseQualityIndicators": {
		"href": "DEMO/quality-indicators/66032/snapshots/5/base-quality-indicators",
		"name": "All indirect grade contributors"
	}
}
Technical Criterion
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/quality-indicators/{metricID}/snapshots/{snapshotID}   | A snapshoted Quality Indicator definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Quality indicator name | String | 1 | 
| shortName | Abbreviation | String | 0..1 | 
| number | Snapshot order number | Integer | 1 | 
| type | Type | String | 1 | 
| gradeAggregators | Indicators depending on this indicator | Array | 0..1 | 
| gradeAggregators[].href | Grade Aggregator reference | URI | 1 | 
| gradeAggregators[].name | Grade Aggregator name | String | 1 | 
| gradeAggregators[].key | Grade Aggregator key | String | 1 | 
| gradeContributors.href | Reference to get an array of contributing Quality Indicators | URI | 1 | 
| rationale | Text | String | 0..1 | 
| description | Tex | String | 0..1 | 
| snapshots.href | Reference to get history of this item | URI | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
JSON Example
GET DEMO/quality-indicators/61029/snapshots/5 (Technical Criterion)
{
	"href": "DEMO/quality-indicators/61029/snapshots/5",
	"key": "61029",
	"name": "Complexity - Dynamic Instantiation",
	"description": "Respect of practices regarding dynamic instantiation",
	"type": "technical-criteria",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
	"gradeAggregators": [
		{
			"href": "DEMO/quality-indicators/60012/snapshots/5",
			"key": "60012",
			"name": "Changeability"
		},
		{
			"href": "DEMO/quality-indicators/60014/snapshots/5",
			"key": "60014",
			"name": "Efficiency "
		},...
	],
	"gradeContributors": [
		{
			"href": "DEMO/quality-indicators/2572/snapshots/5",
			"key": "2572",
			"name": "Avoid declaring VB Variables without typing them"
		},...
	]
}
Indirect Grade Contributors
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json |           {Domain}/quality-indicators/{metricID}/snapshots/{snapshotID}/base-quality-indicators
         | Array of Indirect Contributing Quality Indicators | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Quality Indicator reference | URI | 1 | 
| key | Quality Indicator key | String | 1 | 
| name | Quality Indicator name | String | 1 | 
| compoundedWeight | A contributing weight of a quality indicator is the sum of all contributing path weights from the quality indicator to the business criterion. A contributing path weight is the product: contributing weight from the quality indicator to the technical criterion x contributing weight of the technical criterion to the business criterion | Integer | 1 | 
| compoundedWeightFormula | Explicit formula used to calculate the compounded weight Ex: "(8x4)+(4x5)" | String | 1 | 
| critical | Boolean if the quality indicator is critical for at least one technical criterion | Boolean | 1 | 
JSON Example
GET DEMO/quality-indicators/66032/snapshots/5/base-quality-indicators
[
	{
		"href": "DEMO/quality-indicators/7140/snapshots/5",
		"key": "7140",
		"name": "Action artifacts should not directly call a JSP page",
		"compoundedWeight": 3,
		"compoundedWeightFormula": "(1x3)",
		"critical": true
	},
	{
		"href": "DEMO/quality-indicators/7144/snapshots/5",
		"key": "7144",
		"name": "Action Artifacts should not directly use database objects",
		"compoundedWeight": 7,
		"compoundedWeightFormula": "(1x7)",
		"critical": true
	},...
]
Quality Rule
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/quality-indicators/{metricID}/snapshots/{snapshotID}   | A snapshoted Quality Indicator definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Quality rule name | String | 1 | 
| shortName | Abbreviation | String | 0..1 | 
| number | Snapshot order number | Integer | 1 | 
| type | Type | String | 1 | 
| rulePattern | Pattern | URI | 1 | 
| gradeAggregators | Indicators depending on this indicator | Array | 0..1 | 
| gradeAggregators[].href | Grade Aggregator reference | URI | 1 | 
| gradeAggregators[].name | Grade Aggregator name | String | 1 | 
| gradeAggregators[].key | Grade Aggregator key | String | 1 | 
| gradeSettings.thresholds | Thresholds used in grade formula to transform a quality rule compliance ratio into a grade. | Array | 1 | 
| gradeSettings .thresholds[ ] | A percentage threshold | Integer | 4 | 
| snapshots.href | Reference to get history of this item | URI | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
JSON Example
GET DEMO/quality-indicators/7298/snapshots/5 (Quality Rule)
{
	"href": "DEMO/quality-indicators/7298/snapshots/5",
	"key": "7298",
	"name": "A class that has pointer data members must provide a copy constructor",
	"description": "The report list...",
	"type": "quality-rules",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
	"gradeAggregators": [
		{
			"href": "DEMO/quality-indicators/66069/snapshots/5",
			"key": "66069",
			"name": "Programming Practices - Unexpected Behavior"
		}
	],
	"gradeContributors": [],
	"thresholds": [
		98,
		99,
		99.5,
		99.99
	],
	"rulePattern": {
		"href": "DEMO/rule-patterns/7298",
		"name": "A class that has pointer data members must provide a copy constructor"
	}
}
Quality Distribution
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/quality-indicators/{metricID}/snapshots/{snapshotID}   | A snapshoted Quality Indicator definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Quality rule name | String | 1 | 
| shortName | Abbreviation | String | 0..1 | 
| number | Snapshot order number | Integer | 1 | 
| type | Type | String | 1 | 
| distributionPattern | Pattern | URI | 1 | 
| gradeAggregators | Indicators depending on this indicator | Array | 0..1 | 
| gradeAggregators[].href | Grade Aggregator reference | URI | 1 | 
| gradeAggregators[].name | Grade Aggregator name | String | 1 | 
| gradeAggregators[].key | Grade Aggregator key | String | 1 | 
| gradeSettings.categories | 4 ordered categories | Array | 1 | 
| gradeSettings. categories[ ] | A category (a distribution slot) | Structure | 0..* | 
| gradeSettings. categories[ ]. name | Category name | String | 1 | 
| gradeSettings. categories[ ]. thresholds | 4 thresholds | Array | 1 | 
| gradeSettings. categories[ ]. thresholds[ ] | A thresholds used in grade formula to transform a category measure into a category grade | Double | 0..4 | 
| snapshots.href | Reference to get history of this item | URI | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
JSON Example
GET DEMO/quality-indicators/65601/snapshots/5 (Quality Distribution)
{
	"href": "DEMO/quality-indicators/65601/snapshots/5",
	"key": "65601",
	"name": "4GL Complexity Distribution",
	"description": "Distribution of Forms regarding their complexity",
	"type": "quality-distributions",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
	"gradeAggregators": [
		{
			"href": "DEMO/quality-indicators/61009/snapshots/5",
			"key": "61009",
			"name": "Complexity - Algorithmic and Control Structure Complexity"
		},
		{
			"href": "DEMO/quality-indicators/61026/snapshots/5",
			"key": "61026",
			"name": "Complexity - Technical Complexity"
		}
	],
	"gradeContributors": [],
	"categories": [
		{
			"name": "Very High 4GL Complexity Forms",
			"thresholds": [
				5,
				4,
				2,
				0
			]
		},...
	],
	"distributionPattern": {
		"href": "DEMO/distribution-patterns/65601",
		"name": "4GL Complexity Distribution"
	}
}
Quality Measure
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/quality-indicators/{metricID}/snapshots/{snapshotID}   | A snapshoted Quality Indicator definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Quality rule name | String | 1 | 
| shortName | Abbreviation | String | 0..1 | 
| number | Snapshot order number | Integer | 1 | 
| type | Type | String | 1 | 
| measurePattern | Pattern | URI | 1 | 
| gradeAggregators | Indicators depending on this indicator | Array | 0..1 | 
| gradeAggregators[].href | Grade Aggregator reference | URI | 1 | 
| gradeAggregators[].name | Grade Aggregator name | String | 1 | 
| gradeAggregators[].key | Grade Aggregator key | String | 1 | 
| snapshots.href | Reference to get history of this item | URI | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
JSON Example
DEMO/quality-indicators/66067/snapshots/5 (Quality Measure)
{
	"href": "DEMO/quality-indicators/66067/snapshots/5",
	"key": "66067",
	"name": "Avoid High Volume of Copy Pasted Code",
	"description": "This metric is based...",
	"type": "quality-measures",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
	"gradeAggregators": [
		{
			"href": "DEMO/quality-indicators/66009/snapshots/5",
			"key": "66009",
			"name": "Architecture - Reuse"
		}
	],
	"gradeContributors": [],
	"measurePattern": {
		"href": "DEMO/measure-patterns/66067",
		"name": "Avoid High Volume of Copy Pasted Code"
	}
}
Sizing Measure
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/sizing-measures/{metricID}/snapshots/{snapshotID}   | A snapshoted Sizing Measure definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Quality rule name | String | 1 | 
| description | Text | String | 1 | 
| type | Type | String | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.date | Snapshot date | Date | 1 | 
| annotation.version | Assessment version number | String | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
| number | Snapshot order number | Integer | 1 | 
JSON Example
GET DEMO/sizing-measures/68001/snapshots/5
{
	"href": "DEMO/sizing-measures/68001/snapshots/5",
	"key": "68001",
	"name": "Technical Debt",
	"description": "Technical Debt estimates...",
	"type": "technical-debt-statistics",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
}
Background Fact
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/background-facts/{metricID}/snapshots/{snapshotID}
         | A snapshoted Background Fact definition | 
 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Quality rule name | String | 1 | 
| shortName | Abbreviation | String | 0..1 | 
| number | Snapshot order number | Integer | 1 | 
| type | Always "background-facts" | String | 1 | 
| description | Text | String | 0..1 | 
| snapshots.href | Reference to get history of this item | URI | 1 | 
| annotation | User annotation describing this snapshot | Structure | 1 | 
| annotation.version | Assessment point version number | String | 1 | 
| annotation.date | Application date | Date | 1 | 
| annotation.description | Snapshot description | String | 1 | 
| annotation.name | Snapshot name | String | 1 | 
| annotation.enhancementMeasure | Computation mode of enhancement data. It has one of the following values : "EFP" or "AEP" | String | 1 | 
JSON Example
GET DEMO/background-facts/66061/snapshots/5
{
	"href": "DEMO/background-facts/66061/snapshots/5",
	"key": "66061",
	"name": "Business Value",
	"description": "description",
	"type": "background-facts",
	"annotation": {
		"version": "1.0",
		"date": {
			"time": 1338328800000
		},
		"description": null,
		"name": "GM_DRAS_201206180516",
		"enhancementMeasure": "EFP"
	},
	"number": 1,
}
Rule Pattern
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/rule-patterns/{metricID}
         | A Rule Pattern definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Pattern name | String | 1 | 
| key | Pattern public identifier | String | 1 | 
| rationale | Text | String | 1 | 
| description | Text | String | 1 | 
| remediation | Text | String | 1 | 
| reference | Text: External reference | String | 0..1 | 
| sample | Text: Code snippet of a bad practice | String | 0..1 | 
| remediationSample | Text: Code snippet of a remediation | String | 0..1 | 
| output | Diagnosis findings report | String | 0..1 | 
| associatedValueName | Diagnosis findings name | String | 0..1 | 
| total | Text: definition of the tested components | String | 0..1 | 
| technologies | Applicable technologies | Array | 1 | 
| technologies[ ] | An applicable technology | String | 1..* | 
| qualityStandards | Quality Standard References | Array | 1 | 
| qualityStandards[ ] | A Quality Standard Reference | Struct | 0..1 | 
| qualityStandards[ ].standard | Quality Standard name | String | 1 | 
| qualityStandards[ ].id | Quality Standard reference ID | String | 1 | 
| qualityStandards[ ].reference | URL to get an external documentation | String | 1 | 
| qualityStandards[ ].description | Description provided by the Quality Standard documentation | String | 1 | 
JSON Example
GET DEMO/rule-patterns/7298
{
	"href": "DEMO/rule-patterns/7298",
	"key": "7298",
	"name": "A class that has pointer data members must provide a copy constructor",
	"description": "The report list all...",
	"technologies": [
		"C++"
	],
	"rationale": "If you don't define a copy constructor...",
	"reference": null,
	"remediation": "Define a copy constructor to properly manage pointer data members.",
	"output": null,
	"associatedValueName": null,
	"total": null,
	"sample": "class MyClass {\n   char * apointermember;\n};",
	"remediationSample": "class MyClass...",
    "qualityStandards": [
        {
        	"standard": "CISQ"
            "id": "ASCMM-MNT-15"
            "name": "Public Member Element"
            "reference": null
            "description": null
        }
    ]
}
Distribution Pattern
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/distribution-patterns/{metricID}
         | A Distribution Pattern definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Pattern name | String | 1 | 
| key | Pattern public identifier | String | 1 | 
| rationale | Text | String | 1 | 
| description | Text | String | 1 | 
| remediation | Text | String | 1 | 
| reference | Text: External reference | String | 0..1 | 
| output | Diagnosis findings report | String | 0..1 | 
| associatedValueName | Diagnosis findings name | String | 0..1 | 
| technologies | Applicable technologies | Array | 1 | 
| technologies[ ] | An applicable technology | String | 1..* | 
JSON Example
GET DEMO/distribution-patterns/65601
{
	"href": "DEMO/distribution-patterns/65601",
	"key": "65601",
	"name": "4GL Complexity Distribution",
	"description": "Distribution of Forms regarding their complexity",
	"technologies": [],
	"rationale": null,
	"reference": null,
	"remediation": null,
	"output": null,
	"associatedValueName": null
}
Measure Pattern
URI Templates
| HTTP Action | Media Type | URI Templates | Description | 
|---|---|---|---|
| GET | application/json | {Domain}/measure-patterns/{metricID}
         | A Measure Pattern definition | 
JSON Representation
| Properties | Description | Type | Occurs | 
|---|---|---|---|
| href | Auto reference | URI | 1 | 
| name | Pattern name | String | 1 | 
| key | Pattern public identifier | String | 1 | 
| rationale | Text | String | 1 | 
| description | Text | String | 1 | 
| remediation | Text | String | 1 | 
| reference | Text: External reference | String | 0..1 | 
| output | deprecated | String | 0..1 | 
| associatedValueName | Diagnosis findings name | String | 0..1 | 
| total | Text: definition of the tested components | String | 0..1 | 
| technologies | Applicable technologies | Array | 1 | 
| technologies[ ] | An applicable technology | String | 1..* | 
JSON Example
GET DEMO/measure-patterns/66067
{
	"href": "DEMO/measure-patterns/66067",
	"key": "66067",
	"name": "Avoid High Volume of Copy Pasted Code",
	"description": "This metric is based on the ratio...",
	"technologies": [],
	"rationale": "A program with a lot of duplication...",
	"reference": null,
	"remediation": null,
	"output": null,
	"associatedValueName": null,
	"total": "Artifacts larger than 10 lines of code ( default value of the CODELINE parameter ) "
}
