The calculation of OMG specified Technical Debt for AIP requires the installation of an extension (OMG Technical Debt) and the generation of a new snapshot with this extension installed.
Release ≥ 2.x of this extension uses CTDM (Contextual Technical Debt Measure) to calculate Technical Debt values. CTDM is a recognized nomenclature for a customized ATDM (Automated Technical Debt Measure) as described in chapter 6.3 of the OMG ATDM specification 1.0, see: https://www.omg.org/spec/ATDM/1.0/PDF. For this extension, CTDM uses a combination of remediation effort produced by the ISO-5055 measure and remediation effort produced by AIP Core.
- Complexity - or Effort Complexity – of the code elements implementing an Occurrence is qualification information that is measured according to the Effort Complexity definition from the Automated Enhancement Points (AEP) specification. (AEP)
- Exposure - of code elements propagating effects of the occurrence to the rest of the software. Based on the extent of propagation, remediating the occurrence could involve direct references to code elements (measured as the code elements' number of distinct direct callers), or indirect references (measured as the number of distinct call paths leading to the code elements).
- Technological diversity - the number of the languages in which elements in the source code pattern of a specific occurrence are instantiated.
- Concentration - Concentration is qualification information that measures the number of Occurrences within any Code Element in the software. Total number of occurrences of any source code patterns within a single code element (e.g., class, module, component, subroutine, etc.).
- Evolution status - The Evolution Status of an Occurrence and of code elements implementing an Occurrence is qualification information which indicates if the Occurrence or the code elements implementing an Occurrence have been added, updated, or deleted between measured revisions of the software. Changes and evolution both of code elements in the occurrence and of code elements constituting the immediate software environment within which the occurrence is embedded.
- Occurrence Gap Size - In the context of patterns which rely on roles that model values and threshold values that are not to be exceeded, the gap between these values must be closed to remediate this weakness; the Occurrence Gap Size is the extent of the gap, measured as the difference between the values and the thresholds.