Understanding schedule forecasting
Wednesday, July 25th, 2007Forecasting options and the new *INTERNAL forecast
A Robot/SCHEDULE forecast shows you the run activity scheduled for all Robot/SCHEDULE jobs over a time period you specify.
To make its forecast, Robot/SCHEDULE uses the job schedule, job completion history, and any information you add for user jobs, remote prerequisites, and members of remote groups. A forecast also can include a run-time analysis of each active subsystem. The run-time analysis uses the subsystem’s description to predict job queue wait time.
Creating a forecast
To build a forecast, simply specify the time period for the forecast. In Robot/SCHEDULE 10.0, you can specify the time period two different ways:
- Forecast Length lets you choose a number of days or hours. (This was the only option available in previous versions of Robot/SCHEDULE.) This forecast starts the moment you submit it and goes forward the specified number of days or hours. Jobs that are currently running and their reactive jobs are included.
- Forecast Period lets you enter from and to dates and times. With this option, the jobs included in the forecast depend on the date and time values you select. Group control and prerequisite jobs must be within the forecast period or their members/reactive jobs will not be included in the Forecast.
For example, suppose you have a job that runs at 8:00 on Mondays, with an average run time of 60 minutes, and another job that reacts to the successful completion of the 8:00 job, usually starting about 9:00. If you create a forecast using a Forecast Period that begins at 8:30 on Monday, the reactive job will not be included in the forecast because the 8:00 job (its prerequisite) is scheduled outside of the Forecast Period.
With either option, you can schedule the forecast build in Robot/SCHEDULE or submit it to batch immediately.
OPAL and schedule forecasts
Robot/SCHEDULE jobs that use OPAL might perform differently when they run compared to when the forecast was created.
For example, suppose you have OPAL code that checks the status of a job queue and skips the job if the job queue is held. If the job queue is held at the time the forecast is built, the job is not included in the forecast. However, when the job actually runs, the OPAL is evaluated. If the job queue is not held, the job will run.
Subsystems and schedule forecasts
At the bottom of the Create Forecast panel is a list of active subsystems. Forecasts automatically include all jobs from all subsystems, even those that do not appear on this list.
Robot/SCHEDULE uses this list to identify the subsystems for which it should perform run-time analysis. Run-time analysis attempts to determine job queue wait time to arrive at a more accurate start time for a job.
For example, suppose a job is scheduled to be submitted to a single-threaded job queue (only one job can be active at a time) at 4:00, but the forecast shows it starting at 4:45. Through run-time analysis, Robot/SCHEDULE discovers that another job that normally runs for 55 minutes is scheduled to be submitted to that same job queue at 3:50. The forecasting process determines the job will be delayed by 45 minutes. However, if you remove the job’s subsystem from the list on the Create Forecast panel, the job is forecasted to start at 4:00. (Removing a job’s subsystem from the list doesn’t exclude the job from the forecast, it only prevents the build process from doing run-time analysis.)
Once the forecast is built, you can view it on the Schedule Forecast List panel. The schedule forecast list shows each job scheduled to run during the forecast period, its start time, and its expected run time. You can adjust the forecast by changing start and run times. This lets you perform “what if†scenarios without affecting your schedule. You can even update the actual Robot/SCHEDULE job record.
*INTERNAL forecast
Robot/SCHEDULE 10.0 automatically creates a special internal forecast called *INTERNAL every time it starts and at 12-hour intervals at 11:00 and 23:00. The *INTERNAL forecast covers the next 24-hour period and is designed to be used by the Schedule Activity Monitor (SAM) and Robot/SCHEDULE job monitors.
SAM provides a visual reference to see that your jobs are running as expected. Whether you’re new to Robot/SCHEDULE or are an experienced user, SAM can help you monitor your job schedule. You can use SAM to monitor all the jobs you have set up using Robot/SCHEDULE. SAM can display information about jobs that are running, waiting to run, completed, failed, or forecasted.
Job monitors let you monitor your job schedule for specific events, such as jobs that run too long, complete too quickly, or start later than their scheduled start time. You can specify the criteria for each job at setup time. You also specify what Robot/SCHEDULE should do if it identifies a job monitor event.
The Late Start job monitor uses the *INTERNAL forecast to identify jobs that start later than their scheduled run time. If you add or change a job for which you want to specify a Late Start job monitor, you must include the job in a new build of the *INTERNAL forecast before it can be monitored.
Because the *INTERNAL forecast is used by Robot/SCHEDULE, you cannot modify or delete it. However, you can build a new *INTERNAL forecast at any time. You can even print the *INTERNAL forecast from the Schedule Forecast print dialog.
Contributed by Jean Monson, Maintenance Software Engineer





Subscribe to RSS
6533 Flying Cloud Drive, 