Figure PF.06 - Performance Indicator - Threshold, Consequence, Notification

Header Image
Project:
Figure PF.06 - Performance Indicator - Threshold, Consequence, Notification : Class diagram
Created: 3/28/2022 3:51:09 PM
Modified: 9/16/2023 9:39:29 AM
Project:
Advanced:
As stated earlier the PerformanceIndicatorSpecification and PerformanceIndicator entities provide the definition and values that are used to measure a specific aspect of the performance of an entity, such as number of lost packets and out of sequence packets.  The indicator is measured by one or more instances of the PerformanceThreshold entity.  The PerformanceThreshold entity, shown in Figure PF.06, defines a goal for a PerformanceIndicatorSpecification in terms of the threshold values, tolerances, grace periods, and a comparator.  The comparator is operator that specifies whether Performance Threshold is crossed when it is above or below a conformance target.  For example, a threshold may specify that when average lost packets indicator exceeds a value of 2000, then the threshold is crossed.  A relationship between the threshold and a PerformanceIndicator specifies which thresholds were applied to an instance of an indicator.  For example, the lost packets indicator with a value of 2500 would be associated with the threshold of no more than 2000 lost packets.<br/>A Threshold may contain multiple threshold rules. Threshold rules may differ in the condition that they apply, a raise condition or a clear condition, and in the severity of the threshold crossing. As shown in Figure PF.06 a PerformanceThresholdRule may behave in one of two different ways. A PerformanceThresholdRule may explicitly define the rules for raising thresholds and clearing threshold in different severities. The PerformanceThresholdRuleDefinition entity provides attributes for various kinds of threshold logic definition. Alternatively, a Threshold rule may be defined by a named predefined logic that can be executed with parameters. In this case, the PerformanceThresholdRulePreDefined entity will hold the rule name, and the PerformanceThresholdRulePreDefinedParam will define the parameters that are required for executing the ThresholdRulePreDefined. As these parameters are often indicator specifications, they can be associated to the PerformanceIndicatorSpecification entity.<br/>A PerformanceConsequence represents the action taken when a PerformanceThresholdRule is crossed. Different Consequences can be defined for different severities. If a violation is triggered by a PerformanceIndicator an association is created between the instance of PerformanceIndicator and one or more PerformanceConsequences.  The consequence prescribes that action to take via a prescribed action or may be related to a ConsequencePerformanceNotificationSpec, which is a type of PerformanceNotificationSpecification.  For example, the prescribed action may be to monitor the PerformanceIndicator more closely.  The notification specification overrides the prescribed of the PerformanceConsequence and indicates what type of notification should be raised, such as an alert or an alarm.  If a notification specification is associated with a consequence and an instance of PerformanceIndicator triggers a consequence, an instance of ConsequencePerformanceNotification is created and associated to the instance of PerformanceIndicator.  A ConsequencePerformanceNotification is a type of PerformanceNotification, which in turn is a type of Notification.  This is also shown in Figure PF.06. A specific common case of a PerformanceConsequence is the generation of alarms. In this case, it will be possible to specify the attributes of an alarm that will be raised by a PerformanceThresholdRule using the PerformanceAlarmSpecification entity.<br/>This part of the Performance model enables the creation of any type of PerformanceIndicatorSpecification along with its thresholds, consequences, and notifications, without the need to make changes to the information model.  This satisfies the requirement for the model to be adaptable to change.<br/>