You are on page 1of 48

CONTROL-M

Concepts Guide

Supporting
CONTROL-M/Enterprise Manager 6.3.01
CONTROL-M/Desktop 6.3.01
CONTROL-M/Server 6.3.01
CONTROL-M/Agent 6.3.01
CONTROL-M/Forecast 6.3.01
BMC Batch Impact Manager 6.3.01

December 2006

www.bmc.com
Contacting BMC Software
You can access the BMC Software website at http://www.bmc.com. From this website, you can obtain information
about the company, its products, corporate offices, special events, and career opportunities.
United States and Canada
Address BMC SOFTWARE INC Telephone 713 918 8800 or Fax 713 918 8000
2101 CITYWEST BLVD 800 841 2031
HOUSTON TX 77042-2827
USA
Outside United States and Canada
Telephone (01) 713 918 8800 Fax (01) 713 918 8000

Copyright 2006 BMC Software, Inc., as an unpublished work. All rights reserved.
BMC Software, the BMC Software logos, and all other BMC Software product or service names are registered trademarks
or trademarks of BMC Software, Inc.
Oracle is a registered trademark, and the Oracle product names are registered trademarks or trademarks of Oracle
Corporation.
All other trademarks belong to their respective companies.
BMC Software considers information included in this documentation to be proprietary and confidential. Your use of this
information is subject to the terms and conditions of the applicable End User License Agreement for the product and the
proprietary and restricted rights notices included in this documentation.

Restricted rights legend


U.S. Government Restricted Rights to Computer Software. UNPUBLISHED -- RIGHTS RESERVED UNDER THE
COPYRIGHT LAWS OF THE UNITED STATES. Use, duplication, or disclosure of any data and computer software by the
U.S. Government is subject to restrictions, as applicable, set forth in FAR Section 52.227-14, DFARS 252.227-7013, DFARS
252.227-7014, DFARS 252.227-7015, and DFARS 252.227-7025, as amended from time to time. Contractor/Manufacturer is
BMC SOFTWARE INC, 2101 CITYWEST BLVD, HOUSTON TX 77042-2827, USA. Any contract notices should be sent to
this address.
Customer support
You can obtain technical support by using the BMC Software Customer Support website or by contacting Customer
Support by telephone or e-mail. To expedite your inquiry, see “Before contacting BMC.”

Support website
You can obtain technical support from BMC 24 hours a day, 7 days a week at http://www.bmc.com/support_home.
From this website, you can
■ read overviews about support services and programs that BMC offers
■ find the most current information about BMC products
■ search a database for issues similar to yours and possible solutions
■ order or download product documentation
■ report an issue or ask a question
■ subscribe to receive proactive e-mail alerts when new product notices are released
■ find worldwide BMC support center locations and contact information, including e-mail addresses, fax numbers, and
telephone numbers

Support by telephone or e-mail


In the United States and Canada, if you need technical support and do not have access to the web, call 800 537 1813 or
send an e-mail message to support@bmc.com. Outside the United States and Canada, contact your local support center for
assistance.

Before contacting BMC


Have the following information available so that Customer Support can begin working on your issue immediately:
■ product information
— product name
— product version (release number)
— license number and password (trial or permanent)
■ operating system and environment information
— machine type
— operating system type, version, and service pack or other maintenance level such as PUT or PTF
— system hardware configuration
— serial numbers
— related software (database, application, and communication) including type, version, and service pack or
maintenance level
■ sequence of events leading to the issue
■ commands and options that you used
■ messages received (and the time and date that you received them)
— product error messages
— messages from the operating system, such as file system full
— messages from related software

3
4 CONTROL-M Concepts Guide
Contents
About this book 9

Chapter 1 Introducing CONTROL-M 11


Understanding CONTROL-M architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Performing basic CONTROL-M tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Modeling your batch production environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Organizing batch flows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Key batch modeling concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Placing your model into the production environment. . . . . . . . . . . . . . . . . . . . . . . . . . 17
Using CONTROL-M to schedule the batch flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Automating daily job scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Monitoring job processing in your batch environment . . . . . . . . . . . . . . . . . . . . . . . . . 21
Monitoring jobs by exception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Monitoring mission-critical batch services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Analyzing your production environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Performing analysis using CONTROL-M tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Forecasting production flows and scheduling with CONTROL-M/Forecast . . . 24
Performing CONTROL-M administrative tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Performing main administrative tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Implementing security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Chapter 2 Implementing work flows 27


Planning and implementing business logic according to SLAs . . . . . . . . . . . . . . . . . . 27
Monitoring and intervening in production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Analyzing and optimizing the system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Glossary 33

Index 45

Contents 5
6 CONTROL-M Concepts Guide
Figures
Main CONTROL-M components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Write, upload, load, and download operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Job ordering and forcing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Figures 7
8 CONTROL-M Concepts Guide
About this book
This book contains important concepts and background information about the suite
of CONTROL-M products. You should read and familiarize yourself with the
material in this guide before using CONTROL-M.

Like most BMC documentation, this book is available in printed and online formats.
To request additional printed books or to view online books and notices (such as
release notes and technical bulletins), see the Customer Support website at
http://www.bmc.com/support_home. Some product shipments also include the
online books on a documentation CD.

NOTE
Online books are formatted as PDF or HTML files. To view, print, or copy PDF books, use the
free Adobe Reader from Adobe Systems. If your product installation does not install the
reader, you can obtain the reader at http://www.adobe.com.

The software also offers online Help. To access Help, press F1 within any product or
click the Help button in graphical user interfaces (GUIs).

About this book 9


10 CONTROL-M Concepts Guide
Chapter

1
1 Introducing CONTROL-M
This chapter presents the following topics

Understanding CONTROL-M architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11


Performing basic CONTROL-M tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Modeling your batch production environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Placing your model into the production environment. . . . . . . . . . . . . . . . . . . . . . . . . . 17
Using CONTROL-M to schedule the batch flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Monitoring job processing in your batch environment . . . . . . . . . . . . . . . . . . . . . . . . . 21
Analyzing your production environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Performing CONTROL-M administrative tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

CONTROL-M is a unified, enterprise-wide, dynamic system that offers a


comprehensive solution to your batch processing production control requirements.
CONTROL-M lets you totally automate the scheduling of your batch flows, and lets
you to monitor the processing of your batch flows across the enterprise from a single
point of control.

Understanding CONTROL-M architecture


Before examining the main tasks that you perform using CONTROL-M, it is
worthwhile taking a brief look at CONTROL-M architecture and main components.

Chapter 1 Introducing CONTROL-M 11


Understanding CONTROL-M architecture

Figure 1 Main CONTROL-M components

■ CONTROL-M/Enterprise Manager (CONTROL-M/EM)

The CONTROL-M/Enterprise Manager application provides a single, centralized


point of access and control of your batch processing environment.

■ CONTROL-M/Servers

At the heart of CONTROL-M processing are CONTROL-M/Servers. These are the


scheduling engines that schedule jobs, manage job processing flows, and provide
notification of job flow status.

Each CONTROL-M/Server is resident on a particular computer and is specific to


its operating system.

■ CONTROL-M/Agents and remote hosts

Though CONTROL-M/Servers are responsible for job scheduling and processing,


they do not have to limit their activity to the computer on which they reside; they
can schedule jobs on other computers that come under their control.

CONTROL-M/Agents are commonly used to place computers under the control of


a CONTROL-M/Server. CONTROL-M/Agents submit jobs on behalf of the
CONTROL-M/Server, track the jobs’ processing, and provide status information
back to the CONTROL-M/Server.

12 CONTROL-M Concepts Guide


Performing basic CONTROL-M tasks

As an alternative to having a dedicated CONTROL-M/Agent installed on each


computer under the control of a CONTROL-M/Server, CONTROL-M/Server can
also submit jobs to agentless computers known as remote hosts.

CONTROL-M/Agents and remote hosts are identified by their node IDs. Jobs are
assigned to specific node IDs.

You can balance processing loads by grouping a number of CONTROL-M/Agents


together into a node group, and then assigning jobs to the node group, instead of to
a specific CONTROL-M/Agent. The job will be processed on any agent in the
group, according to the processing load at that particular moment.

■ Control modules

To bring CONTROL-M functionality to your external, packaged application


environment (for example SAP and Oracle E-Business Suite), CONTROL-M
provides Control Modules (CMs) that enable CONTROL-M/Agents to interface
with the external applications.

Performing basic CONTROL-M tasks


The following list briefly outlines the major tasks you perform when you automate
your production environment with CONTROL-M.

■ Modeling your batch production environment


■ Placing your model into the production environment
■ Using CONTROL-M to schedule the batch flow
■ Monitoring job processing in your batch environment
■ Analyzing your production environment
■ Performing CONTROL-M administrative tasks

These tasks are discussed in more detail on the following pages.

Modeling your batch production environment


In CONTROL-M, a job is an execution unit, such as a script or program, that can be
executed at the operating system level, or under a packaged external application,
such as an ABAP program in SAP.

To model your production batch processing flows, you must provide CONTROL-M
with the scheduling and processing instructions for each job. You provide these
instructions by defining job processing definitions for each job.

Chapter 1 Introducing CONTROL-M 13


Organizing batch flows

To help you define job processing definitions, CONTROL-M provides a robust,


graphic user interface called CONTROL-M/Desktop (described in the
CONTROL-M/Enterprise Manager User Guide). Using the job editing form of
CONTROL-M/Desktop, you provide information for each job, including:

■ essential information about the job, such as type of job, script, program
■ scheduling instructions, such as on what days to run the job
■ runtime preconditions and instructions, such as required system resources
■ flow dependencies, such as which jobs must precede the current jobs
■ post-processing instructions, such as cleanup, notifications and escalations

NOTE
Alternatively, you can use the CONTROL-M/EM API or command line utilities to model
your production environment.

CONTROL-M/Desktop also provides a number of features that streamline the


process of creating job processing definitions. The following are some of the more
important features:

■ Templates—You can use templates to populate each job processing definitions


with a set of common values, and then fill in the rest of the values in the job editing
form manually. Templates are operating system-specific. The product comes with
a predefined template for each supported operating system, but you can define as
many different templates as you need.

■ Calendars—Calendars are reusable job schedules. You define a calendar once, and
then apply the calendar to all relevant job processing definitions. This saves you
from defining the criteria individually for each job, and allows subsequent
schedule changes be made at a single location.

■ Mass job creation and update—using this facility in conjunction with templates,
you can create or update large numbers of jobs with a single request.

Organizing batch flows


Some jobs get scheduled daily, others monthly or quarterly, and so on. Organizing
and storing together jobs with similar schedules is very useful. Therefore, job
processing definitions are organized into “containers” called scheduling tables. When
you define a job, you associate it with a particular scheduling table.

You can define as many scheduling tables as you need, and you assign each
scheduling table to a specific CONTROL-M.

14 CONTROL-M Concepts Guide


Key batch modeling concepts

Jobs in a scheduling table are normally processed independently of each other—each


job is handled only according to the parameters in its own job processing definition.
However, a special type of scheduling table, called a group scheduling table, allows
you to define processing parameters at the group level, not just the job level.

For example, just as you can define post-processing tasks that CONTROL-M should
perform when a job successfully ends, you can define post-processing tasks that
CONTROL-M should perform when all the jobs in a group scheduling table
successfully end.

You define the group-level processing instructions in an entity call a scheduling


group. A scheduling group is an extended set of table definition parameters, and each
group scheduling table must contain one, and only one, scheduling group.

Key batch modeling concepts


To effectively model your batch environment, you should understand the following
CONTROL-M concepts.

Establishing dependencies between jobs (job flows)


Job flows often require dependencies between jobs so that some jobs run before or
after other jobs. CONTROL-M uses conditions (Out conditions and In conditions) to
establish job dependencies. Most commonly, the same condition is defined as both:

■ an Out condition of a predecessor job. Out conditions are post-processing


parameters; CONTROL-M adds a job’s Out conditions to the active environment
only when the job ends.

■ an In condition of a successor job. In conditions are job submission criteria;


CONTROL-M cannot submit a job until its In conditions have been added to the
active environment (for example, by completion of the predecessor job).

When a predecessor job ends, the addition of its Out conditions to the active
environment enables successor jobs with the corresponding In conditions to run.

Chapter 1 Introducing CONTROL-M 15


Key batch modeling concepts

EXAMPLE
The payroll calculating job PAYCALC must be run before the payroll check-printing job
PRINTPAY. To create the necessary job dependency, the user defines a condition, called
PAYCALC-ENDED-OK, as follows:

■ PAYCALC-ENDED-OK is defined as an Out condition in job PAYCALC. (This condition


is added to the installation when PAYCALC terminates successfully).

■ PAYCALC-ENDED-OK is defined as In condition for job PRINTPAY. (PRINTPAY


cannot be submitted unless the condition has been added to the installation.)

Because the condition required by job PRINTPAY is not created until job PAYCALC
terminates successfully, the dependency of job PRINTPAY on job PAYCALC is established.

An almost unlimited number of conditions and job dependencies can be created. Jobs
can be dependent on more than one condition, and a condition can be used as an In
condition in more than one job.

Conditions are date-specific. You can also create global conditions to establish
dependencies between jobs running on different CONTROL-M/Servers.

Identifying resources required by jobs


You can define the following types of resource requirements for each job:

■ Control resources—resources that are generally characterized by the control that a


job needs over them: exclusive or shared. Data information resources, such as files,
tables, and databases, are frequently considered control resources.

■ Quantitative resources—resources that are generally quantified. Physical


resources, such an quantity of memory, percentage of CPU, megabytes of storage,
or number of tape drives, are frequently considered quantitative resources.

NOTE
You also define the corresponding resources available on each CONTROL-M/Server.
CONTROL-M determines when the resources required by a job are available, and then
submits the job and adjusts the availability of those resources accordingly. When the job ends,
CONTROL-M frees up those resources for use by other jobs.

Defining variables that are dynamically resolved at runtime


To eliminate the need to manually modify job processing definitions and job scripts
with information known only at time of job submission, CONTROL-M’s AutoEdit
facility allows you to use AutoEdit terms (predefined system variables, functions,
user defined variables, and similar terms) which you specify in place of values that
change from job submission to job submission.

16 CONTROL-M Concepts Guide


Placing your model into the production environment

For example, AutoEdit variables can be used when:

■ an output file should have the current working date appended


■ you must supply the volume label of a loaded CD
■ the job’s order ID must be passed to the script
■ certain job script steps should only be included for end of month runs

The AutoEdit facility is described in detail in the CONTROL-M Job Parameter and
Variable Reference Guide (and the CONTROL-M for z/OS User Guide for mainframe
CONTROL-M users).

Automating post-processing
You can define different activities that CONTROL-M should perform after a job has
ended. Common activities include notifications, such as emailing a message or
shouting a message to the Alerts window, and opening a Remedy ticket in response
to problems (or integrating with other external monitoring applications). You can
also define automatic interventions, such as rerunning a job or forcing a remedial job,
if a job ends with a particular error code. If a minor error that does not impact
production occurs, you can, for example, automatically change the job’s status from
Ended Not Ok to Ended Ok.

Placing your model into the production


environment
To understand how you place your batch model (the scheduling tables that contain
job processing definitions) into production, you must first have a basic understanding
of the relevant databases—the CONTROL-M/EM database and the
CONTROL-M/Server databases—and the main files in each of those databases, the
Definition file and the Active Jobs file. (The Definition file is discussed here, the
Active Jobs file is discussed in the next section.)

■ CONTROL-M/Server database—each CONTROL-M/Server has its own database


that contains the job processing definitions (organized by scheduling table) for
which it is responsible. These definitions are stored in the Definition file of the
database.

■ CONTROL-M/EM database—to allow you to control your entire batch production


enterprise from a single point of control (CONTROL-M/EM), the Definition file of
the CONTROL-M/EM database must contain a copy of all job processing
definitions in all CONTROL-M/Server databases.

Chapter 1 Introducing CONTROL-M 17


Using CONTROL-M to schedule the batch flow

You place the job processing definitions (or more exactly, the scheduling tables) in the
Definition file of the CONTROL-M/EM database. This operation is called “writing to
CONTROL-M/EM.” You then copy the job processing definitions from this
Definition file into the Definition file of the relevant CONTROL-M/Server database.
This operation is called “uploading to CONTROL-M/Server.” Figure 2 illustrates the
process.

Figure 2 Write, upload, load, and download operations

To modify job processing definitions that have already been placed into the
CONTROL-M/EM database, you can perform a load operation, which copies the job
processing definitions from the CONTROL-M/EM database back into
CONTROL-M/Desktop.

(To copy job processing definitions from the CONTROL-M/Server database to the
CONTROL-M/EM database, you perform a download operation. However, you
virtually never need to do this, because the CONTROL-M/Server database is never
more up-to-date than the CONTROL-M/EM database.)

Using CONTROL-M to schedule the batch flow


Once you have defined your production batch flows, they are eligible to be scheduled
and run under the CONTROL-M/Server to which they have been defined.

To understand job scheduling, you must first become familiar with the Active Jobs
file in the CONTROL-M/Server and CONTROL-M/EM databases.

18 CONTROL-M Concepts Guide


Using CONTROL-M to schedule the batch flow

In the previous section, you saw that job processing definitions are stored in the
Definition file of these databases. These are “permanent” copies of the job processing
definitions—permanent insofar as they remain unchanged until you modify or delete
them.

When a job is ordered, a non-permanent copy of the job processing definition is


copied from the Definition file to the Active Jobs file, in both databases.

■ the copy in the Active Jobs file of the CONTROL-M/Server database gets
processed

■ the copy in the Active Jobs file of the CONTROL-M/EM database gets real time
status updates from CONTROL-M/Server so that at any given moment, you can
monitor the status of jobs in all CONTROL-M/Servers

Having the Active Jobs file separate from the Definition file provides several
advantages, including the following:

■ The “active” file must only contain those jobs that are scheduled on that day rather
than the total of all defined jobs.

■ You can modify instructions in the active copy of the job processing definition (for
that particular job execution) without modifying the permanent definition.

Jobs can be scheduled (that is, placed in the Active Jobs file) automatically or
manually:

■ Automated job scheduling—CONTROL-M automatically performs job scheduling.


Each day, CONTROL-M automatically schedules those jobs whose scheduling
criteria (defined in its job processing definition) are satisfied. This is the most
efficient way to schedule jobs.

■ Manual job scheduling (ordering or forcing)—You can manually schedule jobs as


needed. To manually schedule jobs or scheduling tables, you can do either of the
following (illustrated in Figure 3):

— ordering the job or table—An order request only schedules requested jobs
whose scheduling parameters indicate that the jobs are eligible for scheduling
that day.

— forcing the job or table—A force request schedules requested jobs regardless of
whether their scheduling parameters are satisfied that day.

Both options are available from CONTROL-M/Desktop, the CONTROL-M/EM


console (described later), the CONTROL-M/EM API, and command line utilities.

Chapter 1 Introducing CONTROL-M 19


Automating daily job scheduling

NOTE
The term “ordering” is often used generically to refer to either ordering or forcing when it
does not matter which process is used.

Whether automatically or manually scheduled, scheduled jobs are placed under the
control of the CONTROL-M/Server, but are not submitted for execution until their
submission criteria are satisfied.

Figure 3 Job ordering and forcing

Throughout much of this book, we have referred to the production environment.


Based on the concepts presented in this topic, we can now differentiate between the
production environment and the active environment:

■ production environment—consists of all the jobs that you can run at your site, or
from a CONTROL-M perspective, all the job processing definitions that you
permanently store in the Definition file of the databases.

■ active environment—consists of the copies of the job processing definitions that


have been placed into the Active Jobs for processing on the current day. (The
Active environment actually consists of slightly more than this, but this definition
will suffice for now.) This is a subset, and quite possibly a very small subset, of the
production environment.

Automating daily job scheduling


At the same time each day (known as New Day time), each CONTROL-M/Server
runs a procedure known as the New Day procedure. This procedure performs a
number of tasks, including scheduling the day’s jobs, and running maintenance and
cleanup utilities (for example, before adding the day’s jobs to the Active Jobs file, the
New Day procedure deletes the old jobs from the previous day.)

20 CONTROL-M Concepts Guide


Monitoring job processing in your batch environment

The New Day procedure can schedule all the current day’s jobs. However, to handle
job automation at large sites, it is more efficient to have the New Day procedure
utilize a mechanism called User Daily jobs. User Daily jobs are job processing
definitions whose sole purpose is to order jobs. Instead of directly scheduling
production jobs, the New Day procedure can schedule User Daily jobs, and those
User Daily jobs can schedule the production jobs.

EXAMPLE
New Day time is at 5:00 a.m., but
■ 10,000 jobs are not needed until noon
■ another 20,000 jobs are not needed until 3:00 p.m.
■ another 30,000 jobs are not needed until 8:00 p.m.

Instead of all those jobs being scheduled by the New Day procedure at New Day time, the
New Day procedure can schedule three User Daily jobs, defined as follows, at New Day time:

■ One user daily job, which schedules the 10,000 jobs, would be submitted at noon.
■ One user daily job, which schedules the 20,000 jobs, would be submitted at 3:00 p.m.
■ One user daily job, which schedules the 30,000 jobs, would be submitted at 8:00 p.m.

User daily jobs provide an additional advantage. The CONTROL-M administrator is


responsible for the New Day procedure, but a site can allow different departments to
be responsible for their own User Daily jobs.

CONTROL-M date and time concepts


On a regular clock, one day ends and a new day begins at midnight. However, you
can set the New Day time according to your site’s actual business processing
“working day.” For example, if New Day time is 6:00 a.m., then from 6:00 a.m. on
August 4th, until 6:00 a.m. on August 5th, the working day is August 4th.

The date that a job is scheduled in CONTROL-M is called the “Original Scheduling
date” abbreviated Odate (or in some cases, Odat). Odates conform to the working
days, not midnight to midnight calendar days.

Monitoring job processing in your batch


environment
Batch flows at most sites exist in a distributed environment spanning many
computers of different types. CONTROL-M provides a powerful graphic user
interface that allows you to view, monitor, and control all enterprise-wide batch
flows from a single console, called the CONTROL-M/Enterprise Manager console
(sometimes referred to as CONTROL-M/EM GUI or CONTROL-M/EM).

Chapter 1 Introducing CONTROL-M 21


Monitoring jobs by exception

Using CONTROL-M/EM, you can see the progress of your batch flows, and identify
problems and potential problems. CONTROL-M/EM provides a customizable,
dynamic tool called ViewPoints to allow you to display only those jobs and job flows
of interest. For example, you can view and monitor:

■ jobs on a particular CONTROL-M


■ jobs belonging to a specific user
■ jobs having a particular status, such as failed jobs

ViewPoints are constantly updated and show in real-time the execution status of the
batch production. CONTROL-M provides a set of predefined ViewPoints. You can
define other ViewPoints according to need.

Monitoring jobs by exception


CONTROL-M tracks and monitors all jobs scheduled under it. As long as batch job
processing proceeds smoothly—jobs are executing on time and ending OK—you can
ignore them. You really only need to focus only on problems and potential problems,
and intervene as needed. This is known as managing by exception.

To monitor by exception, you can use the following tools:

■ ViewPoints—Display jobs that ended Not Ok, jobs that were submitted late, and
jobs that did not get submitted.

■ Alerts and shouts—Escalate events that you define when you define job post-
processing, such as job was submitted late, ended Not OK, or returned a particular
condition code.

Monitoring mission-critical batch services


Using BMC Batch Impact Manager, an add-on product to CONTROL-M, you can
monitor critical batch services and intervene if delays or problems are detected or
anticipated. BMC Batch Impact Manager

■ provides you with the status of critical batch business services

■ proactively detects and notifies you of potential delays and errors in critical batch
business services

■ allows you to take corrective actions before business services are affected

22 CONTROL-M Concepts Guide


Analyzing your production environment

BMC Batch Impact Manager further enhances Business Service Management by


integrating with the following BMC products:

■ BMC Atrium Configuration Management Database (through BMC Batch


Discovery)

BMC Atrium Configuration Management Database is a repository that contains


information about all the components of your IT environment and how they are
configured and interrelated. BMC Batch Discovery identifies batch services
defined using BMC Batch Impact Manager, and their dependencies, and inserts the
information into the BMC Atrium Configuration Management Database.

■ BMC Service Impact Manager

BMC Service Impact Manager allows you to monitor services and components (not
just batch services) defined in the BMC Atrium Configuration Management
Database.

For more information, see the BMC Batch Impact Manager User Guide.

Analyzing your production environment


Analyzing your production environment is a very important task. When there are
production problems, such as jobs not starting or finishing on time, you will want
to analyze and determine root causes of job processing problems and delays. But
even when there are no apparent problems, you can use analyses to make the
system more efficient (for example, to deallocate unneeded resources and apply
them somewhere else).

Performing analysis using CONTROL-M tools


CONTROL-M provides a number of capabilities for analyzing your production
environment.

■ Reporting facility

The Reporting facility provides a comprehensive set of predefined reports that let
you retrieve all types of information.

You can collect and generate detailed data reports and summaries on current
production workflow data, historical data, and data about your job definition
environment. You can generate alert reports, audit reports,
CONTROL-M/Forecast reports and BMC Batch Impact Manager reports.

Chapter 1 Introducing CONTROL-M 23


Forecasting production flows and scheduling with CONTROL-M/Forecast

The Reporting facility comes with predefined report templates, and allows you to
define your own templates that you can use to generate reports about your
production environment. It also allows you to export and copy reports.

■ Reviewing old data (Archived Net and Playback features)

Normally, you monitor your production environment in real time. However, for
analysis purposes, you may want to view job processing data accumulated over a
particular period. CONTROL-M can “archive” each day’s processing events. This
powerful tool then lets you replay these events and view problems or potential
problems as they unfold, or capture a snapshot of your batch production
environment and job flow status from any give moment. Using this available data,
you can determine how best to eliminate these problems in the future and how to
optimize your batch processing environment.

■ Collecting and examining runtime statistics

The CONTROL-M ctmjsa utility enables CONTROL-M/Servers to compile


runtime statistics for each job that executes. These statistics can be used by the
CONTROL-M/Server to determine certain critical issues, such as if a job is
unlikely to finish in time.

You can also view statistics online, and use these for analysis.

Forecasting production flows and scheduling with


CONTROL-M/Forecast
Using CONTROL-M/Forecast, a powerful, separately licensed, add-on product, you
can validate your batch production modeling. CONTROL-M/Forecast loads and
simulates the processing of your batch flows, allowing you to validate job
dependencies and scheduling criteria for any future dates.

For example, you can use it to:

■ forecast on what date a given job or a scheduling table will be submitted

■ generate an estimate of the full production flow for a given future date, as an
enterprise-wide view

■ forecast the impact of adding or shifting resources in your production site

For more information, see the CONTROL-M/Forecast Release Notes.

24 CONTROL-M Concepts Guide


Performing CONTROL-M administrative tasks

Performing CONTROL-M administrative tasks


Though your enterprise is a distributed environment across many computers,
CONTROL-M provides you with a single point of control. The CONTROL-M
Configuration Manager lets you to administer, manage, monitor, configure, and
maintain all CONTROL-M components, including CONTROL-M/Servers,
CONTROL-M/Agents, remote hosts, and so on.

Performing main administrative tasks


The main administrative tasks that administrators perform include:

■ ensuring that CONTROL-M components are up, active, and connected

■ ensuring that maintenance, job scheduling and data backup is performed—daily


tasks are generally performed as part of New Day processing (for details, see
“Automating daily job scheduling” on page 20). You perform other maintenance,
for example, extending the database size, as needed.

■ performing migrations and upgrades—administrators must ensure a smooth


upgrade to a new release, including migration of data. Instructions are provided
with the release or fix pack.

■ defining new CONTROL-M/Servers, and their corresponding


CONTROL-M/Agents and remote hosts

■ ensuring security by setting and assigning user and group permissions. For details
see “Implementing security” on page 25.

For more information on the CONTROL-M Configuration Manager, see the


CONTROL-M/Enterprise Manager Administrator Guide

Implementing security
CONTROL-M security is three-tiered; it is defined at the CONTROL-M/EM,
CONTROL-M/Server and CONTROL-M/Agent levels.

Chapter 1 Introducing CONTROL-M 25


Implementing security

CONTROL-M/EM security and CONTROL-M/Server security are centered around


the user that is defined for each job. These security mechanisms authorize:

■ the operations (for example, Hold or Rerun) that each user is allowed to perform
■ the entities (for example, jobs, resources, ViewPoints) that each user can view or
modify

CONTROL-M/EM interacts directly with CONTROL-M/Server security. For each


user request that CONTROL-M/EM receives, it seeks authorization from
CONTROL-M/Server. If the CONTROL-M/Server security modules determine that
the user is not authorized, the operation is rejected and the application issues an
appropriate message.

You define CONTROL-M/EM security using the Authorization facility. Security can
be defined at the user level and group level. Users can be associated with multiple
groups. User and group authorizations are discussed in detail in the
CONTROL-M/Enterprise Manager Administrator Guide.

A CONTROL-M/EM Audit facility records data about the occurrence of a wide


variety of security-sensitive activities.

Security for communications between CONTROL-M/Server and CONTROL-M/EM


components can be enhanced by using SSL (for details, see the CONTROL-M SSL
Guide). At CONTROL-M for z/OS sites, the CONTROL-M security mechanism
interacts with external security tools used at the site (such as RACF, ACF2/SAF, and
TOP SECRET).

CONTROL-M/Agents, which actually process the jobs, utilize operating system


security; it is centered around the owner that is defined for each job. When a
CONTROL-M/Agent receives a job execution request, it submits the job on behalf of
the owner, but only if the owner is defined to the operating system security.

26 CONTROL-M Concepts Guide


Chapter

2
2 Implementing work flows
This chapter presents the following topics:

Planning and implementing business logic according to SLAs . . . . . . . . . . . . . . . . . . 27


Monitoring and intervening in production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Analyzing and optimizing the system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

The previous chapter provided an overview of CONTROL-M. As such, it described


the tasks you perform to implement automated job processing from a CONTROL-M
perspective.

This chapter describes some of those same tasks, but from the perspective of your
production environment. It identifies the workflow of that implementation—some of
your site’s needs that must be examined, decisions you must make, and planning that
you should perform as a prelude to implementing automated job scheduling.

Planning and implementing business logic


according to SLAs
You plan and implement scheduling tasks:

■ when you initially set up the production environment


■ whenever a new job must be added to production
■ whenever you must modify existing job requirements

Chapter 2 Implementing work flows 27


Planning and implementing business logic according to SLAs

To plan and implement the production environment

1 Get information about production jobs (work flow, tasks, priorities, and other
criteria). Often this information is provided to the IT department using SLAs
(service license agreements) provided by other departments.

2 Design the production environment or modifications to the existing environment.


You can use CONTROL-M/Desktop itself as a tool for this (or you can do this on
paper).

Be prepared to invest time planning out the jobs and their related entities,
(dependencies, what happens on a failure, and so on). For details, see “To define
jobs” on page 28.

3 Validate the design to ensure it implements business logic. If it does not meet your
requirements, repeat the preceding steps starting with Step 1. To test your design,
you can temporarily identify the job processing definitions as type “Dummy,”
which executes the batch flow without actually running the jobs. (For details, see
the CONTROL-M/Enterprise Manager User Guide.)

4 When the design is implemented correctly, deploy the jobs and related entities to
either a test or production environment:

A Define security requirements.

B Move the jobs to production by placing the definitions into the appropriate
databases (using the Write process and the Upload process).

C Set up remaining entities for automated scheduling of jobs, such as setting up


daily automation (also known as the New Day Procedure), defining resources
and global conditions, and so on.

5 Check that the jobs work as intended. If they do not, repeat preceding steps as
necessary. Optimize the system as necessary.

To define jobs

1 Determine whether you can group jobs according to:

■ Scheduling criteria
If jobs will run on similar schedules, or need to run at the same time, it is
advantageous to group them into the same scheduling table or group
scheduling table. All jobs in a scheduling table are ordered for scheduling at the
same time.

28 CONTROL-M Concepts Guide


Planning and implementing business logic according to SLAs

EXAMPLE
Examples of scheduling tables are:
■ End of year jobs
■ Daily jobs
■ Jobs that must run to produce reports for an audit
■ Jobs that must run as a group to handle emergency situations, such as backup
procedures in the event of a natural disaster

■ Applications
You can group jobs that are related to each other, but do not necessarily have to
run at the same time.

EXAMPLE
Examples of applications are:
■ Inventory
■ Accounting
■ Payroll

■ Groups
Similar to applications, groups are another level of categorization that you can
use to organize your jobs.

EXAMPLE
Examples of groups are:

■ Jobs in an Accounting application might be divided into groups such as Budgets,


Finance, Receivables, and Expenditures.

■ Jobs in an Employees application might be divided into groups called Pilots, Flight
Attendants, Ground Crew, and Reservations.

■ Jobs in any application might be divided into groups called Managers, since
processing of managers remains the same regardless of the department (application)
in which they work. Jobs that calculate the bonuses of managers of the ground crew
staff and managers of the reservations staff might be similar enough to include in
the same group.

2 Determine the type of job you are automating. Is the job a script, operating system
command, or a job designed by your developers?

3 Determine:

■ where the job should run. On which computer at which location should the job
run? Is workload balancing on several computers an option?

Chapter 2 Implementing work flows 29


Monitoring and intervening in production

■ when the job should run. Shall it run daily? Shall it run based on specific days
indicated in a calender? Shall it run repeatedly throughout the day (cyclically)?
Should it take precedence over other jobs because it is high priority?

■ whether the job depends on other jobs, or whether other jobs depend on it. Does
this job depend on the successful completion of other jobs? Conversely, should
this job trigger other jobs?

■ required resources. What physical resources, such as tape drives, are required?
Does the job need exclusive access to these resources?

4 Decide whether specific actions should be taken if

■ the job finishes as expected


■ the job does not finish as expected

5 For BMC Batch Impact Manager: Decide whether any jobs represent batch tasks
that will seriously impact critical business services if delayed. If so, define these
jobs as a batch service, so BMC Batch Impact Manager can provide early warning.

EXAMPLE
Examples of critical batch business services are:

■ A set of jobs that, if delayed, will cause a shipping company to miss the express mail
delivery truck.

■ A set of jobs that, if they finish way ahead of schedule, indicate that proper processing
did not occur. A payroll application that finishes too soon might indicate that the
proper calculations did not occur to process employees’ salaries.

Monitoring and intervening in production


Once you have implemented job scheduling under CONTROL-M, you will want to
be sure that CONTROL-M is up and running, and that jobs are processing as
required. Ideally no intervention should be required, but if intervention becomes
necessary, you want to know about it. Therefore, you will likely want to monitor
special critical processes, and potentially problematic situations indicated by user
complaints or error messages.

If you do identify a problem or temporary business need, you will want to ensure that
business stays on track. This means not only getting at the root cause of the problem
and fixing it, but sometimes bypassing the problem or applying a temporary fix to it.

30 CONTROL-M Concepts Guide


Analyzing and optimizing the system

To monitor and intervene in job processing while CONTROL-M is up and running

1 On an ongoing basis, look for or view exceptions and alerts. For a special or critical
process, view the relevant jobs for exceptions.

2 If you find exceptions, if there is a user complaint, or if there is a general error


message that impacts production:

A Identify what or where the problem is (job identification, alerts).

B Gather the information and perform an entry-point root cause analysis.

C Identify the owner of the problem and relevant information.

3 If intervention is necessary for an identified problem, or if there is a temporary


business need, perform an immediate fix or bypass.

Examples of possible immediate fixes or bypasses in CONTROL-M include:

■ Forcing a job to end OK (for a minor error that does not require rerun)
■ Viewing and modifying details of the job order
■ Reordering or forcing that or a different job
■ Changing resources
■ Changing the job script

4 Perform further root cause analysis, if needed.

5 Change the existing application definition if necessary.

Analyzing and optimizing the system


You will likely want to analyze the system immediately after you have implemented
job scheduling under CONTROL-M. Analysis can help you identify the root causes of
problems such as bottlenecks (tasks running over their deadlines), resource
shortages, poor workload balancing, and so on. Analysis can also help you determine
the potential impact of adding applications or changing resources.

Performing analyses can not only help you eliminate problems; they can help you
optimize the system.

Chapter 2 Implementing work flows 31


Analyzing and optimizing the system

To analyze the system for problems (and optimize it)

1 If you cannot fit a new application into existing schedules, or existing tasks start
running over deadlines:

A Issue a report on current tasks and workload.

B Identify conflicts with the new application.

C See if the current task or tasks can be rearranged to eliminate the problem.

Examples of such rearrangement include (many of these are administrator


tasks):

■ Move jobs between environments


■ Optimize the self configuration of the CONTROL-M/Server
■ Check load balancing
■ Modify system parameters
■ Improve maintenance procedures (for example, manage conditions better)

Where necessary, update job processing definitions accordingly.

D If you cannot adequately rearrange tasks, continue with Step 3.

2 For housekeeping issues regarding existing tasks:

A Issue a report on current tasks.

B Determine if improvements and adjustments are necessary, and if so perform


them. If you cannot perform needed adjustments, continue with Step 3.

3 Do any combination of the following:

■ ask for a redefinition or prioritization of requirements, and modify existing


applications.

■ buy more resources.

32 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Glossary
A
Active Jobs file (AJF)
The Active Jobs file contains all jobs scheduled for submission in the current day. Each job in the
Active Jobs file is not submitted until all conditions in the job processing definition for the job
are satisfied. The Active Jobs file is in the CONTROL-M database.

Active environment
The Active Jobs file, the status of all quantitative and control resources, and all conditions in all
CONTROL-M installations that are currently connected to CONTROL-M/EM.

Agent computer
Computer on which CONTROL-M/Agent runs. The Agent computer handles requests from
CONTROL-M/Server to execute jobs or provide information.

Agentless computer
Remote host computer. Computer on which jobs can run without having a resident agent
installed.

Agentless job scheduling


Ability to run jobs on computers without a resident CONTROL-M/Agent.

API
See Application Programmer’s Interface.

Application
In a CONTROL-M ViewPoint, jobs are organized into a hierarchy based on certain parameters
in the job processing definition for each job. Application is one of these parameters. It is in
the default hierarchy which is: CONTROL-M installation followed by application, group and
job. (This term is also sometimes used in the context of external applications to refer to an
external application. For a definition, see External application.)

Application Programmer’s Interface


Interface that allows requests for services from other computer programs to CONTROL-M, and
allows data to be exchanged between CONTROL-M and those programs.

AutoEdit variables
AutoEdit variables enable the automatic assignment of dynamic environmental values to the
execution parameters of the job. Before the job is submitted, its AutoEdit variables are resolved

Glossary 33
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

by CONTROL-M/Server. The resolved values can then be passed as parameters of the job
submission command, and are used for the current execution of the job. The contents of the
original job processing definition remain unchanged.

B
Batch service
A set of batch jobs that are critical to the client’s business.

BMC Atrium Configuration Management database


Repository that lists all the components of your IT environment and details how the components are
configured and interrelated.

BMC Batch Discovery


BMC Software product that identifies batch services and their dependencies in the IT
environment, and inserts the information into the BMC Atrium CMDB.

BMC Batch Impact Manager


Add-on product to CONTROL-M that lets you monitor critical batch services and intervene if
delays or problems are detected or anticipated.

BMC Remedy Action Request System


BMC Software product that provides a platform for automating and managing service
management business processes.

BMC Remedy Change Management Application


BMC Software product that provides a system that identifies the impact and risk that proposed
IT changes have on business objectives.

BMC Topology Discovery


BMC Software product that identifies IT components and the relationships between them.

Business service
See Batch service.

Business Service Impact Manager


BMC product that allows you to monitor services and components in your IT environment.

C
Calendar
A collection of dates that are used by CONTROL-M to schedule the ordering of jobs.

Calendar Manager
A window where you can view or modify calendars. The Calendar Manager is accessed through
CONTROL-M/Desktop.

34 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

CCM
See CONTROL-M Configuration Manager.

CDM
See Common Data Model.

CMDB
See Configuration Management database.

Collection
Criteria that determine which jobs from the Active Jobs file are loaded into memory in
CONTROL-M/EM.

Common Data Model


Schema for the BMC Atrium Configuration Management database (CMDB).

Condition
See Prerequisite condition.

Conditions table
A component of the CONTROL-M database that lists the status of all conditions in the
CONTROL-M installation.

Configuration Management database


Repository that lists all the components of an IT environment and details how the components are
configured and interrelated.

Control module
Mechanism supplied with CONTROL-M that enables CONTROL/Agents to interface with
external, packaged application environments (for example SAP and Oracle E-Business Suite).

Control resource
User-defined physical or logical resource in a CONTROL-M installation. For each job the user
specifies whether the job requires exclusive or shared access to the resource. CONTROL-M
verifies that a job is not submitted for execution unless the Control resources required by the job
are available in the required state (shared/exclusive). This prevents deadlock situations or
contention between jobs for a given resource. Control resources are recorded in the Resources
table.

CONTROL-M
Software product that schedules, submits, tracks and follows up the execution of jobs in a
specific installation.

(Note: In certain contexts, the term CONTROL-M refers to a CONTROL-M/Server. For


example, in context of the job organization hierarchy, or in context of defining CONTROL-Ms,
the term refers to CONTROL-M/Servers.)

Glossary 35
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

CONTROL-M Configuration Manager


Graphic user interface that enables administrators to administer CONTROL-M components
from a single point of control. This interfaces incorporates functionality previously provided by
the Administration facility.

CONTROL-M database
See CONTROL-M/Server database.

CONTROL-M installation
One or more computers controlled by a single installation of CONTROL-M. In older
implementations of CONTROL-M, a CONTROL-M installation typically consists of a single
computer. In server/agent implementation of CONTROL-M, a CONTROL-M installation
consists of a server platform and all the agent and agentless platforms that it handles.

CONTROL-M log
Log containing a complete audit trail of every event occurring under the CONTROL-M
production environment.

CONTROL-M working date


Date used by CONTROL-M when assigning the scheduling date (Odate) to jobs. This date does
not necessarily conform to the calendar date, and changes to the next day at New Day time.

CONTROL-M/Agent
Under the server/agent implementation of CONTROL-M, the component of CONTROL-M that
runs on each agent platform. CONTROL-M/Agent submits jobs, performs requests from
CONTROL-M/Server, and performs post-processing analysis of completed jobs.

CONTROL-M/Desktop
Application used to define job processing definitions, scheduling tables and calendars.
CONTROL-M/Desktop is a stand-alone application that can also be activated directly using the
CONTROL-M/EM GUI. Creation and modification of job definitions, uploading and
downloading tables, and forcing and ordering jobs are executed via CONTROL-M/Desktop.

CONTROL-M/EM
See CONTROL-M/Enterprise Manager.

CONTROL-M/EM Server
Process that handles communication between CONTROL-M/EM GUI computers and other
components of CONTROL-M/EM. The CONTROL-M/EM Server executes database queries,
calculations and procedures for each GUI, and enables data-sharing between GUIs. Multiple
CONTROL-M/EM Servers can be installed in a CONTROL-M/EM environment.

CONTROL-M/Enterprise Manager
Component of CONTROL-M that provides a central point of control for CONTROL-M
installations. CONTROL-M/EM provides the GUI that allows users to graphically view the
status of job schedules and execution in CONTROL-M installations, to issue requests for

36 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

additional information, to make changes in the Active Jobs file, and to handle problems.
CONTROL-M/EM also passes global conditions among CONTROL-M installations.

CONTROL-M/Enterprise Manager database


Repository of operational data relating to the functioning of all CONTROL-M installations.
Contents of the database include the Active Jobs file, scheduling tables (job processing
definitions) and the Resources/Conditions table. The database is maintained by
CONTROL-M/EM. It is commonly referred to as the CONTROL-M/EM database.

CONTROL-M/Forecast
Separately licensed, add-on product that you can use to validate your batch production
modeling. CONTROL-M/Forecast loads and simulates the processing of your batch flows,
allowing you to validate job dependencies and scheduling criteria for any future dates.

CONTROL-M/Server
Under server/agent implementation of CONTROL-M, the component of CONTROL-M that
runs on the server platform. CONTROL-M/Server maintains the CONTROL-M/Server
database (including the Active Jobs file), schedules jobs, performs load balancing, sends job-
handling requests to agent platforms, and handles requests from CONTROL-M/EM.

CONTROL-M/Server database
Repository of operational data relating to the functioning of the CONTROL-M installation.
Contents of the database include the Active Jobs file, Scheduling tables (job processing
definitions) and the Resources/Conditions table.

D
Discovery
Process of identifying physical and logical components located on a given network.

Download (of Active environment)


Transmission of the Active environment from a CONTROL-M installation to the
CONTROL-M/EM database. This allows CONTROL-M/EM to display of the current situation
in the CONTROL-M installation. Download occurs upon completion of the New Day
procedure, after which updates are constantly issued to maintain the accuracy of the Active
environment. You can also perform download manually.

Draft
Locally stored file containing job processing definitions for purposes of editing and
modification by the user in CONTROL-M/Desktop.

E
End user
An end user is any user, whether internal or external to the organization, who has triggered a
CONTROL-M job by submitting a transaction to be processed by the CONTROL-M installation.

Glossary 37
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

extension
A logical set of classes and attributes, usually in its own name-space, that is not part of the
Common Data Model (CDM).

External application
Packaged third-party application environments (for example SAP and Oracle E-Business Suite)
with which CONTROL-M can interface.

F
Federated data
Data linked from a configuration item (CI) in the BMC Atrium CMDB, but stored externally
federated data might represent more attributes of the CI or related information, such as change requests
on the CI.

Forecasts
Batch flow simulations that enable you to validate job dependencies and scheduling criteria for
any future dates.

Force
Operation that instructs CONTROL-M to place the job in the Active Jobs file for possible
submission, regardless of the scheduling parameters in the job processing definition for the job.
See also Order.

G
Gateway
The process that handles communication between CONTROL-M and CONTROL-M/EM. There
are gateway processes on both the CONTROL-M platform and on the CONTROL-M/EM
computer.

General Daily procedure


See New Day procedure.

Global Alerts server


The process that identifies and distributes alerts between CONTROL-M installations and
CONTROL-M/EM computers. The Global Alerts Server connects to each CONTROL-M/EM
Gateway to receive alerts from CONTROL-M and transmit them to the CONTROL-M/EM
GUIs.

Global condition
Condition that is passed between CONTROL-M installations. Global conditions allow jobs in
one CONTROL-M to depend on completion of a job in a different CONTROL-M.

38 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Global Conditions server


The process that identifies and distributes global conditions between CONTROL-M
installations. The Global Conditions Server connects to each CONTROL-M/EM gateway to
receive and transmit conditions to the appropriate CONTROL-M.

Group
In a CONTROL-M ViewPoint, jobs are organized into a hierarchy based on certain parameters
in the job processing definition for each job. Group is one of these parameters.

Group scheduling table


Scheduling table that contains an extended set of table definition parameters called a scheduling
group. The scheduling group enables processing instructions to be applied to the jobs as a
group.

H
Hierarchy
Criteria that determine how jobs selected by the collection and filter are displayed in the
CONTROL-M ViewPoint window.

J
Job Daemon utility
Utility used to track and detect job termination (Extended and Standard versions are the same).

Job editing form


Used to view, specify, or modify job processing parameters for the job. The job editing form is
accessed through CONTROL-M/Desktop for purposes of job definition, and through
CONTROL-M/EM for job monitoring and intervention.

Job processing definition


Set of user-defined parameters for each job which provide CONTROL-M with detailed
instructions on processing the job. Job processing definitions are organized into scheduling
tables.

Job processing parameter


Generic name for one of the user-defined parameters that comprise a job processing definition.

K
Key attributes
Attributes that CMDB reconciliation rules use to identify identical CIs. Examples of key
attributes are “host” and “domain” names for Windows and UNIX systems and “Name” for
mainframe systems.

Glossary 39
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

L
Load
Operation that copies selected scheduling tables and job processing definitions from the
CONTROL-M/EM database to the Online or Local workspace in which the user is working in
CONTROL-M/Desktop.

Load balancing
Mechanism for maximizing throughput of production jobs by automatic selection of the
platform on which to execute each job, based on workload considerations.

Local workspace
Area on the user’s computer in which the user defines or modifies job processing definitions
using CONTROL-M/Desktop.

LPAR (Logical partition)


Virtual computer environment. A mainframe computer can have a number of LPARs.

M
Manual Conditions file
The Manual Conditions file contains conditions which are required by jobs in the Active Jobs
file but which will not be available (that is, added to the Conditions/Resources table) unless
there is some form of manual intervention. These conditions include conditions which are never
added automatically by scheduled jobs because manual confirmation is always desired, as well
as conditions which are normally added automatically, but the jobs which add them are not
scheduled for the day.

Migration
Transfer of data, with necessary modifications, from an earlier CONTROL-M version to a later
CONTROL-M version.

Mirror database
A backup copy of the CONTROL-M/Server database which is constantly updated. The Mirror
database allows CONTROL-M to resume functioning with minimal time loss in the event of a
primary database failure.

N
New Day procedure
Formerly “General Daily Procedure.” Daily scheduling and housekeeping procedures that run
on the CONTROL-M/Server platform. The CONTROL-M date is advanced to the next day
when this procedure runs.

40 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

New Day Processing


Processing for the new day that CONTROL-M initiates each day at the same time (New Day
time). During this processing, CONTROL-M runs the New Day procedure which runs cleanup
utilities and loads jobs to the Active Jobs file for the current day’s processing.

New Day time


Site-defined time at which the new processing day begins. At this same time each day,
CONTROL-M begins New Day processing by running the New Day procedure, which cleans
up the database from the previous day’s processing and loads new jobs to the Active Jobs file for
the current day’s processing.

Node group
Under server/agent implementation of CONTROL-M, a user-defined collection of Node IDs.
A node group is specified in a job processing definition to indicate a group of agent platforms
on which CONTROL-M/Server can execute the job.

Node ID
Under the Agent Technology implementation of CONTROL-M, name by which an Agent
platform is identified to the Server platform. This is generally the Agent platform’s host name.

O
Odat, Odate
See Original scheduling date.

Online workspace
Work area that the user can use in CONTROL-M/Desktop for defining or modifying job
processing definitions in the CONTROL-M/EM database.

Order
Request that CONTROL-M review the scheduling parameters in the job processing definition
for the job and, if the parameters are satisfied, place the job in the Active Jobs file for possible
submission. See also Force.

Original scheduling date


CONTROL-M working date at the time a job is ordered (placed in the Active Jobs file) and
represents the date on which the job should be submitted for execution. It is abbreviated Odate.
Odate is also the default date assigned to conditions at the time they are created. The variable
ODAT (representing the Odate) is used when defining job dependencies to ensure that a job
waiting for completion of another job is only triggered by a job with the same working date.

P
Prerequisite condition
A flag representing a user-specified situation or condition. Submission of a job for execution can
be made dependent upon the existence of one or more conditions. Conditions are recorded in
the Conditions table.

Glossary 41
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Production environment
Complete set of job processing definitions and related entities defined to automate batch
processing at your site.

Q
Quantitative resource
User-defined variable representing a resource in the CONTROL-M installation. The user defines
the total quantity of this resource in the CONTROL-M and, for each job, the quantity
required/used by that job. CONTROL-M verifies that a job is not submitted for execution unless
the Quantitative resources required by the job are available. Quantitative resources are recorded
in the Resources table.

R
Remote host
Agentless computer. Computer that runs jobs without using a resident CONTROL-M/Agent.

Resources table
A component of the CONTROL-M database that lists the current status of all Control resources
and Quantitative resources in the CONTROL-M installation.

S
Scheduling group
Extended set of table definition parameters in a group scheduling table. It is this set of
parameters that enable the jobs in the table to be handled as a group.

Scheduling table
A collection of related job processing definitions. Scheduling tables are stored in the
CONTROL-M database (and duplicated in the CONTROL-M/EM database). Scheduling tables
are “ordered” by the New Day procedure or User Daily jobs.

Scheduling Table Manager


Used to define, maintain and control Scheduling tables in the CONTROL-M/EM database. The
Scheduling Table Manager is accessed through CONTROL-M/Desktop.

Service
Set of jobs that are critical to the client’s business.

Sleep time
The length of time that a CONTROL-M/Server process lies dormant before “waking up” to
determine if any request to perform an action was received. The value assigned to Sleep Time
affects CONTROL-M/Server throughput and the load on the Server computer’s resources.

SYSOUT
Output of the commands run on a job.

42 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

System parameter
Configuration parameters that influence the behavior of a wide range of CONTROL-M
components and features.

T
Template
Set of job processing definition parameter values that can be used to populate job processing
definitions, thereby simplifying the process of defining jobs. (Templates replace the skeleton
editor that was formerly available in earlier versions of CONTROL-M/Desktop.)

TokenID
Key attribute that CMDB reconciliation rules use before other key attributes.

Topology
Physical or logical layout of a communication network.

U
Upgrade
Transition from an earlier version of CONTROL-M to a new version that does not necessitate a
migration of data in the databases.

Upload
Operation that copies scheduling tables and job processing definitions from the
CONTROL-M/EM database to the CONTROL-M/Server database.

User Daily job


User-defined job that can be used to automate the ordering of production jobs.

User exits
Mechanism which enables users to modify CONTROL-M operations to suit site needs.

V
ViewPoint
Criteria that determine which jobs in the Active Jobs file are loaded into the database
(collection), which jobs are displayed (filter), and how they are displayed (hierarchy) in the
CONTROL-M/EM window.

W
Write (to CONTROL-M/EM database)
Operation that copies scheduling tables and job processing definitions from the local or online
workspace into the CONTROL-M/EM database.

Glossary 43
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

44 CONTROL-M Concepts Guide


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Index
A
active environment 20 CONTROL-M/Forecast 24
Active Jobs file 17, 19 CONTROL-M/Server 12
administrative tasks 25 CONTROL-M/Server database 17
agentless computers 13 ctmjsa utility 24
agentless job scheduling 13 customer support 3
alerts 22
analyzing the production environment 23
analyzing the system 31 D
architecture 11
Definition file 17, 19
archived data 24
dependencies between jobs 15
Archived Net feature 24
download operation 18
Audit facility 26
dynamic variables, variables 16
Authorization facility 26
AutoEdit facility 16
automated job scheduling 19, 20
E
electronic documentation 9
B
balancing processing loads 13
basic CONTROL-M tasks 13 F
batch services 22 forcing 19
BMC Atrium Configuration Management Database 23 forecasting production flows 24
BMC Batch Discovery 23
BMC Batch Impact Manager, 22
BMC Service Impact Manager 23
BMC Software, contacting 2
G
business logic 27 group scheduling table 15

C H
calendars 14 Help, online 9
cleanup utilities 20
conditions 15
Control module 13
control resources 16
I
CONTROL-M administrative tasks 25 implementing business logic 27
CONTROL-M architecture 11 intervening in production 30
CONTROL-M security 25
CONTROL-M tasks 13
CONTROL-M/Agent 12
CONTROL-M/Desktop 14
J
CONTROL-M/EM database 17 job dependencies 15
CONTROL-M/Enterprise Manager 12 job forcing 19
CONTROL-M/Enterprise Manager console 21 job ordering 19

Index 45
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

job processing definitions 14


job scheduling 18 R
remote host 12
Reporting facility 23
L resources 16
runtime statistics 24
load balancing 13
load operation 18

S
M scheduling table 15
security 25
main administrative tasks 25 shouts 22
maintenance utilities 20 SLA 27
managing by exception 22 SSL 26
manual job scheduling 19 successor job 15
mass job creation 14 support, customer 3
mass job update 14
mission-critical batch services 22
modeling batch flows 13
monitoring job processing 21 T
monitoring jobs by exception 22 technical support 3
monitoring mission-critical batch services 22 templates 14
monitoring production 30

N U
uploading to CONTROL-M/Server 18
New Day procedure 20 User Daily jobs 21
New Day time 20

O V
ViewPoints 22
Odat 21
Odate 21
online Help 9
optimizing the system 31
W
ordering 19 working day 21
Organizing batch flows 14 writing to CONTROL-M/EM 18
original scheduling date 21

P
planning business logic 27
Playback feature 24
predecessor job 15
Prerequisite Condition
Example 16
product support 3
production environment 20

Q
quantitative resources 16

46 CONTROL-M Concepts Guide


Notes
*60797*
*60797*
*60797*
*60797*
*60797*