About Programs

Programs represent specific demand response programs in which customers agree to let their utility service provider temporarily take control of specific devices in their homes (referred to as controllable devices or controllable assets) in response to periods of high demand. For instance, customers might enroll in a program that allows their utility to temporarily adjust their thermostat during a heat wave, or disable an electric vehicle charger during a period a of peak energy usage in the area. Instances such as these are known as "program events".

Programs are defined by the following:

  • Program Type: The program type associated with the program. Program types define certain parameters and attributes of a class of programs.

  • Status: The current status of the program. Only programs in the "Active" state are eligible for customer enrollment and events.

  • Program External ID: The ID for the program used by external systems.

  • Eligibility: A program initiative associated with the program, used to determine eligibility for customers to enroll in the program.

  • Approval Profile: The process used for approval of the program (see Approvals and Approval Profiles below for more information).

  • Suspend: A flag that indicates if the program is currently suspended (the default is No).

  • Start Date: The date on which the program is active and available.

  • End Date: The date after which the program is no longer active.

  • Division: The operating company or operating division within a large conglomerate of utilities associated with the program.

In addition, programs can also have the following related objects and data:

  • Specifications:  One or more specifications for devices eligible for the program, used to determine eligibility for customers to enroll in the program (the customer must have devices based on the listed specifications to join the program).

  • Rates: One or more rates used to determine eligibility for customers to enroll in the program (the customer must be on one of the listed rates to join the program)

  • Qualifications: One or more questions used to determine eligibility for customers to enroll in the program. See Understanding Customer Questions in the Administrative User Guide for more information about questions.

  • Rules: One or more program rules associated with the program. If a program has more than one program rule, the rule with the latest effective date/time is used. See Understanding Program Rules in the Administrative User Guide for more information about program rules.

  • Events: A list of program events associated with the program. See About Program Events for more information about program events.

System Data

Programs are based on the following system data:

Data Type

Description

Maintenance Object

Dynamic Option (D1-DOP) 

Business Object(s)

Program (X1-Program)

Program Characteristics (X1-ProgramCharacteristics) 

Calculate Control Score via Program Transaction Algorithm

The Calculate Control Score via Program Transaction algorithm, defined on the "Program (BO) - Control Score Calculation" System Event creates program transactions that are used to calculate control scores for controllable devices associated with a program. This algorithm also defines the following variables that can be used in Program Calculation Rules:

  • Control Score Variable Name: Defines the variable used to represent control scores. When Program Calculation Rules return a value for this variable (defined as the Result Variable on the rule), the score is saved to the controllable asset (along with the date and time at which the score was calculated). The default value for this variable is "SC".

  • Availability Mark: Defines the variable used to represent the availability of the device's participation in program events. If Program Calculation Rules return a value of 0 for this variable, the Asset Availability flag in the controllable asset is set to "No". If Program Calculation Rules return a non-zero value for this variable or the rule doesn't return a value for this variable, the Asset Availability flag in the controllable asset is set to "Yes".  The default value for this variable is "AV".

Approvals and Approval Profiles

Programs and program types can specify an Approval Profile used to define a process for approval of programs. Programs with an Approval Profile enter the "Approval in Progress" state after being created, and must be approved before moving into the "Active" state. An Enter algorithm on the "Approval in Progress" state creates an approval request based on the specified approval profile.

See About Approvals for more information about creating and maintaining approvals and approval profiles.