# US 8,572,616 B2 · Apparatus, system, and method for managing z/OS batch jobs with prerequisites

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,572,616 B2
- Document ID: US8572616B2
- Status: Granted
- Kind: B2
- Application number: 11/420,410
- Filed: 2006-05-25
- Published: 2007-11-29
- Granted: 2013-10-29
- Earliest claimed: 2006-05-25
- Assignees: International Business Machines Corporation
- Applicants: Jin Song Cai; Pedro Sanchez Vera
- Inventors: Jin Song Cai; Pedro Sanchez Vera
- Web page: https://patentgrep.com/patent/US8572616B2

## CPC

- G06F 9/5038: {considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups)}
- G06F 2209/5017: Task decomposition
- G06F 2209/506: Constraint
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An apparatus, system, and method are disclosed for managing computer jobs with prerequisite jobs in a main frame computing system. A determination module is included that determines a job grouping of jobs for processing by a computer with a mainframe operating system. A grouping module is included to generate generating a job grouping structure associated with the job grouping. The job grouping structure comprises one or more prerequisite jobs and a dependent job that depends on successful completion of each prerequisite job associated with the dependent job. A management module is included to submit the jobs in the job grouping structure to the computer for processing. The jobs are submitted such that each prerequisite job of the dependent job successfully completes prior to submission of the dependent job.

## Claims

### Claim 1

A computer program product comprising a non-transitory storage device storing executable code executed by a processor that manages computer jobs with prerequisite jobs in a main frame computing system by:
determining a job grouping of jobs for processing by a computer with a mainframe operating system;
generating a job grouping structure associated with the job grouping, wherein the job grouping structure comprises one or more prerequisite jobs, and a composite job, wherein the composite job depends upon successful completion of each prerequisite job associated with the composite job and is a prerequisite job for at least one dependent job
generating a status structure at a prescribed time interval, the status structure indicating a status of each job in the job grouping structure;
submitting for processing the jobs in the job grouping structure, wherein the jobs are submitted such that each prerequisite job associated with the composite job successfully completes prior to submission of the composite job and the composite job successfully completes prior to submission of the at least one dependent job for which the composite job is a prerequisite job;
reading the status structure;
displaying a task list of the jobs;
editing prerequisite and composite jobs for a first job with an Interactive System Productivity Facility (ISPF) Editor;
displaying a status line of each job in the job grouping structure in response to a user input and if the status structure for the job has a status structure age less than a status age maximum, each status line comprising a status, a job name, a message, and a command line, the status consisting of submitted, running, waiting, complete, error and not run statuses, wherein the submitted status indicates a job number is assigned, the not run status indicates that a prerequisite job failed, and the error status indicates a non-zero completion code;
editing job control language of the first job in response to the first job failing; and
rerunning the edited first job and jobs depending on the completion of the first job in response to a command in the command line.

### Claim 2 (depends on 1)

The computer program product of claim 1, wherein the mainframe operating system comprises a z/OS operating system.

### Claim 3 (depends on 1)

The computer program product of claim 1, wherein generating a status structure further comprises periodically updating the status structure.

### Claim 4 (depends on 1)

The computer program product of claim 1, further comprising displaying the status of each job in the job grouping structure having the status structure age less than the status age maximum in response to user input.

### Claim 5 (depends on 4)

The computer program product of claim 4, further comprising displaying a first job output.

### Claim 6 (depends on 4)

The computer program product of claim 4, further comprising generating the task list, wherein the task list comprises one or more job groupings.

### Claim 7 (depends on 6)

The computer program product of claim 6, further comprising reading status structures of a plurality of job grouping structures within the task list and displaying the status of each job in the plurality of job grouping structures having the status structure age less than the status age maximum in response to user input.

### Claim 8 (depends on 6)

The computer program product of claim 6, further comprising reading status structures of a plurality of job grouping structures within the task list and displaying the status of each job in the plurality of job grouping structures in response to user input.

### Claim 9

A system to manage computer jobs with prerequisite jobs in a main frame computing system, the system comprising:
a computer with a mainframe operating system;
a user interface connected to the computer;
a display connected to the user interface;
a processor in the computer; and
a memory in the computer, the memory comprising
a task list module generating a task list, wherein the task list comprises one or more job groupings;
a grouping module generating a job grouping file associated with a job grouping in the task list, wherein the job grouping file comprises one or more prerequisite jobs, and a composite job, wherein the composite job depends upon successful completion of each prerequisite job associated with the composite job and is a prerequisite job for at least one dependent job and the jobs are for processing by a computer with a mainframe operating system, and generating a status structure at a prescribed time interval, the status structure indicating a status of each job in the job grouping structure; and
a management module submitting the jobs in the job grouping file to the computer for processing, wherein the jobs are submitted such that each prerequisite job associated with the composite job successfully completes prior to submission of the composite job and the composite job successfully completes prior to submission of the at least one dependent job for which the composite job is a prerequisite job, the management module further reading the status structure, displaying a task list of the jobs, editing prerequisite and composite jobs for a first job with an Interactive System Productivity Facility (ISPF) Editor, displaying a line status of each job in the job grouping structure in response to a user input and if the status structure for the job has a status structure age less than a status age maximum, each status line comprising a status, a job name, a message, and a command line, the status consisting of submitted, running, waiting, complete, error and not run statuses, wherein the submitted status indicates a job number is assigned, the not run status indicates that a prerequisite job failed, and the error status indicates a non-zero completion code, editing job control language of the first job in response to the first job failing, and rerunning the edited first job and jobs depending on the completion of the first job in response to a command in the command line.

### Claim 10 (depends on 9)

The system of claim 9, wherein the user interface is a computing device connected to the computer through a computer network, wherein the computing device comprises any of a terminal, a desktop computer, a laptop computer, a tablet computer, and a workstation.

### Claim 11 (depends on 9)

The system of claim 9, wherein the user interface supports the ISPF editor.

### Claim 12 (depends on 9)

The system of claim 9, wherein the mainframe operating system comprises a z/OS operating system.

### Claim 13

A method for managing computer jobs with prerequisite jobs in a main frame computing system, the method comprising:
obtaining a job management tool that manages dependent jobs with prerequisite jobs, the job management tool comprising
determining a job grouping of jobs for processing by a computer with a mainframe operating system;
generating a job grouping structure associated with the job grouping, wherein the job grouping structure comprises one or more prerequisite jobs, and a composite job, wherein the composite job depends upon successful completion of each prerequisite job associated with the composite job and is a prerequisite job for at least one dependent job;
generating a status structure at a prescribed time interval, the status structure indicating a status of each job in the job grouping structure;
submitting for processing the jobs in the job grouping structure to the computer, wherein the jobs are submitted such that each prerequisite job associated with the composite job successfully completes prior to submission of the composite job and the composite job successfully completes prior to submission of the at least one dependent job for which the composite job is a prerequisite job; reading the status structure;
reading the status structure;
displaying a task list of the jobs; editing prerequisite and composite jobs for a first job with an Interactive System Productivity Facility (ISPF) Editor;
displaying a status line of each job in the job grouping structure in response to a user input and if the status structure for the job has a status structure age less than a status age maximum, each status line comprising a status, a job name, a message, and a command line, the status consisting of submitted, running, waiting, complete, error and not run statuses, wherein the submitted status indicates a job number is assigned, the not run status indicates that a prerequisite job failed, and the error status indicates a non-zero completion code;
editing job control language of the first job in response to the first job failing; and
rerunning the edited first job and jobs depending on the completion of the first job in response to a command in the command line.
