Business systems frequently use scheduling systems to run programs at specified times. Scheduling systems typically run applications that generate reports, reformat data, or do audit work at night. In other cases, scheduling systems provide callback APIs that can alert subsystems of events such as due dates, deadlines, etc. Scheduling systems often run batch jobs (a.k.a. scheduled jobs ), which perform routine work automatically at a prescribed time. Users in the Unix world frequently run scheduled jobs using cron , a simple but useful scheduling system that runs programs listed in a configuration file. Other job-scheduling systems include the OMG’s COS Timer Event Service, which is a CORBA API for timed events, as well as commercial products.
Regardless of the software, scheduling systems are used in many different scenarios:
In a credit card processing system, credit card charges are processed in batches so that all the charges made for an entire day are settled together instead of separately. This work is scheduled to be done in the evening to reduce the impact of processing on the system.
In a hospital or clinical system, Electronic Data Interface (EDI) software is used to send medical claims to various HMOs. Each HMO has its own processing requirements, but they are all routine, so jobs are scheduled to gather claim data, put it in the proper format, and transfer it to the HMO.
In just about any company, managers need specific reports run on a regular ...