Solutions Application Development JOBWARE


Introduction

In a more and more complex world of applications running on different Open System servers throughout the network, system managers and end users do need a powerful tool to manage the workload of their environment. Even if applications tend nowadays to do their work more and more interactively, payroll systems, database maintenance, inventory control, ... need background jobs.

The standard Unix facilities "AT" and "CRON" can do this. Unfortunately these lack some functionality and a lot of user friendliness, e.g. good planning and scheduling, careful execution, thorough monitoring and analysis. A job scheduling system need to match these criteria. In order to control the complexity of scheduling, initiating and monitoring the workload in your environment, Ockham Technology has developed JOBWARE, the powerful tool for workload management.
JOBWARE empowers the System Manager to overview (networked) systems with all its queues, scheduled and completed jobs. Full journalling, recovery, reporting and alarming facilities assist the user to keep the system reliable and complete the job whenever and wherever needed.
Moreover JOBWARE allows you to set up the control of your distributed, heterogeneous servers from a single point or to distribute the control itself all across the network. And, of course, client/server becoming the reality, JOBWARE has been designed appropriately, offering all the practical benefits this approach can deliver.
The next paragraphs explain the benefits of JOBWARE. Discover how easy scheduling can be.

"DAEMON" : The heart of the matter

The heart of the matter, the motor of the JOBWARE product, is the JOBWARE “Daemon”. This background process decides what has to be done, when and depending upon which conditions. This know how is derived from the definitions in the internal database and user initiated actions.
The Daemon pre-schedules these activities every day. This way a check, which jobs need to be executed that day, will be performed according to the specifications of the job.
For security reasons, the Daemon can only be inspected and controlled by the Manager (see following).

Users

JOBWARE users can be of different types, according to the level of capabilities they have been allowed. Capabilities regulate the security of the system. Only the Manager controls the JOBWARE system with its queues, its (other) users and the Daemon. Operators control the job processing. Users are allowed to schedule and control only their own jobs.
This hierarchical structure of capabilities enables the System Manager to set up a strongly secured system where "vital", pre-scheduled jobs are being protected from end user intervention. Besides it helps the operator to intervene only where and when necessary.
A User typically wants to launch his jobs and to have an overview of the status of it. Moreover he needs an overview of the scheduled jobs, those running, the priorities, ... Maybe some jobs need to be rescheduled or released or another configuration is needed. And how about the predefined jobs? How do they interfere with the user launched jobs?
After jobs have been launched, users can have at all times a general overview of all these jobs and execute several actions on these jobs.

Types of actions that can be performed are:

  • modifying the job status : delete, abort, defer, release, suspend or resume a job
  • transferring jobs between queues, even between different machines by means of the virtual queues
  • modifying the priority of the job in the queue
  • modifying the schedule date
  • modifying the prerequisites of a job

All these actions give users of JOBWARE a large flexibility in managing their launched jobs and helping controlling the CPU allocation. Besides they are implemented in such a way any user can handle them in the interface he likes the most.

User interfaces

The way Users, Operators and the Manager handle the JOBWARE product is defined by different user interfaces, thus leaving a wealth of choice to them. The users decide independently from their colleagues what user interface they like to work with. The product is available in a command line interface, with character based windowing, under MS-Windows. This means that a JOBWARE Operator might prefer the command line interface, while the Users themselves within the company prefer Windows '95.

Jobs

JOBS are either predefined or initiated by a user. User initiated jobs are "ad hoc" jobs, jobs a user fires off on the spot. Predefined jobs are waiting to be scheduled at a regular basis, maybe depending upon certain prerequisites. These conditions (date, time, calendar, queue, prerequisites, ...) control or trigger the repetitive character of the job. Special scheduling functions can be added to control the execution flow and/or order of the job. In this way the user may sequence, exclude or synchronize jobs and the job definitions can be analyzed at all times.

JOBWARE has extensive calendar functions. Free naming of groups of days (e.g. to specify company holiday periods, closing dates for bookkeeping, ...) help to plan predefined jobs in a much easier way.
Here is an overview of the extensive launching options of JOBWARE.

Options for user initiated jobs:

  • to execute: a filename or the command(s)
  • date/time: they are only limited to a specific day and time
  • queue
  • priority
  • name: used as aliasname for a job in the different views and reports
  • state options: jobs can be put in a “defer” or “hold” status for later release
  • mail and alarming options: if the job has finished, mail will be sent to a user, eventually acting as an alarm trigger in case of problems

Options for predefined jobs:

  • to execute: a filename or the command(s)
  • date/time: can be a specific day and time or based on a calendar or a complex date and time definition
  • queue
  • priority
  • name: used as aliasname for a job in the different views and reports
  • state options: jobs can be put in a "defer" or "hold" status for later release
  • mail and alarming options: if the job has finished, mail will be sent to a user, eventually acting as an alarm trigger in case of problems

Extra options for predefined jobs are:

  • username
  • groupname
  • prerequisites: these are filters that control the execution of the job. Possible filters are:
    • existence of
    • size of files
    • preventing jobs from running simultaneously
    • chaining jobs

Reports

A scheduling system needs extensive reporting to trace events happening and happened thus enabling appropriate corrective actions to be undertaken. JOBWARE has three different extensive reporting facilities:

  • journals for history logging. They summarize all information on finished jobs. The reports of each executed job show extensive and detailed information concerning jobname, jobid, exit status, etc.
  • job analysis reports for simulations. They assist in creating scenarios of the use of predefined jobs and analyzing this report assists in improving the efficient use of system resources.
  • reports on the Daemon activity for recovery and system management. They indicate when the Daemon has started and when the preschedule has been performed.

Recovery

Full recovery facilities assist the System Manager in ensuring a reliable system. The Daemon indicates when it is not running on a system. It can be restarted in a two ways:

  • recover mode: this mode recovers all jobs which have been launched but failed to execute due to a Daemon stop (system crash, disk fault, ...). In case a job has been aborted during system shutdown, the Daemon adds it automatically to the appropriate queue. Besides a preschedule is being performed for every day the Daemon has been dead.
  • initialize mode: this mode performs only a preschedule, without a recovery of the aborted and not executed jobs.

Networks

In a world of distributed applications, a networked scheduling system is a must; the scheduler needs to control, manage and alarm different server nodes. JOBWARE has been designed to perform this task appropriately. Its easy to configure network database contains all the hosts where JOBWARE is installed. This database enables to specify virtual queues, logical queues which are defined on a host, but which are physical on another host. In this way users define virtual jobs, jobs to be executed on other nodes within the network.
Besides JOBWARE has been developed according to the client/server model and consists of two separate and interacting processes: the client and the server process.
The client is the process that launches a job, either user initiated from the user interface or being specified by a predefined job. The server is the Daemon that sets up a process to execute the job and that returns to the client the necessary information.
Because of this client/server structure, multiple JOBWARE nodes in a network offer the user transparent access to all scheduling functionality on every host in the network.

Application integration

To make life easier for the developers, JOBWARE provides specific commands and Client/Server API’s.
JOBWARE commands can be used to launch jobs from any UNIX application.
The JOBWARE Client/Server API’s can be used in PC applications to launch jobs on the UNIX server, assisting this way in creating real Client/Server applications OR they can be used to create a specific user interface.
This way, JOBWARE is an open solution for all job management issues in applications across a network.

Available platforms

Following platforms are supported:

  • HP-UX
  • IBM AIX
  • DIGITAL Tru64
  • SCO-UNIX
  • SOLARIS
  • WINDOWS server systems.

References

Multiple companies all over the world do benefit from the JOBWARE product. Some major references are: L’Oréal, Bekaert, Ericsson, Prestige & Collections, Logica, Finnish Telecom, Preferred Assurance, ...

Benefits

JOBWARE provides numerous productivity benefits both for the operation staff and for the end-users:

- for the operations staff because:
  • they can quickly and easily manage a massive number of jobs simultaneously
  • JOBWARE handles the workload, so they can concentrate on exception handling
  • they can assure an optimized turnaround time and throughput, because JOBWARE automatically controls and processes the background production workload
  • from one single point, they have an overview of all jobs on all the systems in the network, not matter how complex
  • they can assure an improvement of the system reliability
  • the numerous reports simplify the auditing
- for the end-users:
  • their sessions are not any more blocked by running processes interactively; these can now easily be scheduled in background
  • they have a free choice of interface, thus minimizing learning efforts
  • they can consult at all times a complete overview of what’s happening.
 
Subscribe here for our free WEBISO and STARJET
Workshops!