Most organizations these days rely heavily on batch processing to support their existing applications. In fact, over 50 percent of current application processing is batch. Often, these processes have been in place for years, are not well-documented and the knowledge owner may have moved on.
Given the importance of batch processing and the current state of the economy, now is the perfect time to improve your current batch processing mechanisms to drive new efficiencies that can translate into lower total cost of ownership and increased return on investment of applications.
Here are five ways organizations can use dynamic automation tools to improve batch processing across applications and computing platforms:
1. Expand the scope of job scheduling with workload automation
Most IT staff already have a mental image of “job scheduling” and many people only consider batch processing for those processes that run on very regular date and time-based schedule. Enter workload automation, which is the modern, state-of-the-art descendent of traditional job schedulers.
Embracing newer concepts such as object orientation, dynamic event processing and service orientation, modern workload automation products allow organizations to expand their scope beyond simple date and time scheduling. Organizations can therefore target a much wider range of jobs and processes for automation and control.
For example, workload automation can control a business process that involves application jobs from multiple applications mixed with Business Process Execution Language (BPEL) processing. Or workload automation can be used to leverage service-oriented architecture (SOA) for business processing and combine dynamic control of virtualized environments with the ongoing business processing.
2. Centralize workload automation and control
In many organizations, the batch processing function is not centralized. Redundant effort is spent managing processing for various applications across multiple operating systems. Large-scale applications and operating systems have their own schedulers (such as cron and winat) that require expertise and effort to manage.
This leaves organizations without a “single pane of glass” through which to monitor and manage processing across their enterprise landscape of various operating systems, physical and virtual servers, and applications.
Organizations should look to consolidate on a single workload automation product or architecture that also provides very tight integration into their enterprise applications. The three benefits of centralization are one-stop operational control for monitoring, notification, troubleshooting and documentation; simplified setup and greater flexibility to mix and match processing across applications and servers; and easier auditing and reporting for compliance purposes.
Integrate Between Workload Automation and Applications
3. Integrate between workload automation and applications
Integration between a workload automation tool and applications is more than just the ability of the tool to execute application jobs. For example, Unix cron-armed with an appropriate script and a schedule-can execute an application job in a rudimentary fashion. But this clearly does not constitute workload automation.
In order to best integrate with applications, your workload automation product needs to have the following eight abilities:
- Appropriately initiate the execution of an application job-working within its security model
- Pass dynamically-calculated parameter values to an application job at its start
- Intercept and control a user initiation of an application job
- Monitor intermediate status codes or names from the executing application job
- Kill an executing job in a manner appropriate
- Collect job log files and reports generated
- Distribute job files and reports automatically
- Accurately determine the success or failure of an application job
An organization that has been using the in-built scheduler of its financial enterprise resource planning (ERP) application, the in-built scheduler of its human resources (HR) application and a general job scheduling tool can consolidate onto a central workload automation tool that has tight integration to both the ERP and HR applications.
Actively Hunt Down Manual Processes to Automate
4. Actively hunt down manual processes to automate
Manual processes are slow, error-prone and can sabotage compliance efforts. Eliminate them with automation. The manual processes to be targeted should not just include those that have a time- or date-based component, but should include any process that requires intervention-even processes that potentially fall under a “workflow” designation.
Organizations can survey users for the processes they least enjoy performing. For example, an existing manual process consisting of several inter-related but disparate steps may be viewed as impossible to automate. Workload automation provides wider coverage so each step of the manual process can be transformed into a “job” which can be strung together into a unified, automated business process.
5. Look for events to drive dynamic processing
One critical capability of a workload automation tool is the ability to pay attention to all events that occur within the organization. Actionable events are more than just the completion of a prior job. Possible event scenarios could include a change to specific data in a database, the arrival or disappearance of a file on a file system, a Web service invocation, receipt of a Java Message Service (JMS) message, or exceeding a critical operating system parameter (such as CPU usage).
The ability to react to events is a strong tool for the automation of manual processes because the same cues that a user might look for to determine if or when they should manually perform a process can be detected and used by the workload automation tool to automate the same process. This detection of events is typically much quicker and less error-prone than a human can ever be.
Events expand the scope of automation well beyond the “scheduling” time-based mindset. A centralized workload automation tool can detect and take advantage of events that occur across a variety of disparate servers and applications to drive and control automated processing. Events, therefore, become a kind of glue that can connect disparate-and previously thought of as unconnected-processes together into a more cohesive, automated whole.
Five Examples of Automated Processing
Five Examples of Automated Processing
Five examples of this automated processing are:
- the failure or unavailability of a given server can push processing dynamically to a different server or force the dynamic startup of a replacement virtual server
- a Web service invocation can initiate a business process
- the end of a business process can invoke a Web service to perform additional actions
- when the accumulation of some critical business item (say, unprocessed invoices or purchase orders) reaches a defined threshold (such as 1,000), can automatically start a business process
- monitor the arrival of files in a directory and start a business process to act on each file
Conclusion
The five ways to improve batch processing just discussed are all powerful mechanisms to drive new efficiencies. These five mechanisms can be thought of in isolation, but work best when used in conjunction with each other. The ability to automate manual processes is greatly enhanced by the ability to use events.
Centralized workload automation and tight application integration allow for better control of processing across a wider enterprise landscape. Tight application integration can help the effort to centralize automation by eliminating application-specific schedulers.
Alex Givens is a Senior Solutions Architect for UC4 Software, Inc. For 13 years, Alex has helped organizations improve the efficiency and effectiveness of their business processing. Alex has spoken on business process automation at many international, national and regional conferences. He can be reached at alex.givens@uc4.com.