KPI Computation
Data Update
The data displayed on the page is not calculated on-demand but pre-calculated based on the expression SyncDataInfo defined in the appsettings.json file. This allows for efficient data retrieval and presentation, ensuring optimal dashboard performance when handling large data sets.
The SyncDataInfo expression specifies the frequency at which the data is updated and synchronized with the latest information. For more details about the specific configurations, please refer to AppSetting Configurations.
At the top of the page, you will notice the display of the last date when the data was calculated and refreshed:
Vulnerabilities Mean Time to Resolution (MTTR)
If you did not define the parameters:
ProjectStatusCustomFieldName
ProjectStatusCustomFieldValue
ProjectOnboardingDateCustomFieldName
in the AppSettings configuration file (Manager), the MTTR is computed as follows:
TotalDaysOpen = 0 For each fixed vulnerability: DaysOpen = VulnerabilityResolvedDate - VulnerabilityDetectionDate; TotalDaysOpen += DaysOpen end for MTTR = TotalDaysOpen/TotalFixedVulnerabilities
For each vulnerability resolved in the date range defined as a filter, the service receives the vulnerability's first detection date and the scan date when the vulnerability was fixed and calculates the difference (in days) between the two dates. To obtain the MTTR value, the open days for each resolved vulnerability are added, and this total of days is then divided by the number of fixed vulnerabilities.
If you defined the parameters mentioned above in the configuration file, the calculation is as follows:
TotalDaysOpen = 0 For each fixed vulnerability: If (VulnerabilityDetectionDate < ProjectOnboardingDate) then VulnerabilityDetectionDate = ProjectOnboardingDate else VulnerabilityDetectionDate = VulnerabilityDetectionDate DaysOpen = VulnerabilityResolvedDate - VulnerabilityDetectionDate; TotalDaysOpen += DaysOpen end for MTTR = TotalDaysOpen/TotalFixedVulnerabilities
Vulnerability Aging
If you did not define the parameters:
ProjectStatusCustomFieldName
ProjectStatusCustomFieldValue
ProjectOnboardingDateCustomFieldName
in the AppSettings configuration file (Manager), the vulnerability aging is computed as follows:
DaysOpen = CurrentDay - VulnerabilityFirstDetectionDate;
If the parameters mentioned above are defined in the configuration file, the calculation is as follows:
If (VulnerabilityFirstDetectionDate < ProjectOnboardingDate) then VulnerabilityFirstDetectionDate = ProjectOnboardingDate else VulnerabilityFirstDetectionDate = VulnerabilityFirstDetectionDate DaysOpen = CurrentDay - VulnerabilityFirstDetectionDate;
The current day is calculated based on the date the data is synchronized.