Beyond Job Scheduling: The Road to Enterprise Process Automation



Similar documents
For more information about UC4 products please visit Beyond Job Scheduling: The Road To Enterprise Process Automation

Key Requirements for a Job Scheduling and Workload Automation Solution

Beyond Job Scheduling: The AppWorx Vision of Enterprise Automation

For more information about UC4 products please visit Automation Within, Around, and Beyond Oracle E-Business Suite

CA Workload Automation Agents for Mainframe-Hosted Implementations

Improve business agility with WebSphere Message Broker

BMC Control-M Workload Automation

BUSINESS INTELLIGENCE. Keywords: business intelligence, architecture, concepts, dashboards, ETL, data mining

Cronacle. Introduction

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

Reducing Total Cost of Ownership for Oracle Retail

IBM Global Technology Services March Virtualization for disaster recovery: areas of focus and consideration.

Enterprise IT is complex. Today, IT infrastructure spans the physical, the virtual and applications, and crosses public, private and hybrid clouds.

Cisco Tidal Enterprise Scheduler

CA Service Desk Manager

MOVING TO THE NEXT-GENERATION MEDICAL INFORMATION CALL CENTER

Enterprise Job Scheduling: How Your Organization Can Benefit from Automation

Vistara Lifecycle Management

ROC SOFTWARE WHITEPAPER: 10 Reasons to Worry if You re Using CRON

UC4 Software: HELPING IT ACHEIVE SARBANES-OXLEY COMPLIANCE

Epicor Vantage GLOBAL ENTERPRISE RESOURCE PLANNING

Successfully managing geographically distributed development

Online Transaction Processing in SQL Server 2008

CA Workload Automation Agents Operating System, ERP, Database, Application Services and Web Services

TNT SOFTWARE White Paper Series

Sage ERP I White Paper. An ERP Guide to Driving Efficiency

SysAidTM Product Description

Applications Manager Version 8.0

IBM DB2 CommonStore for Lotus Domino, Version 8.3

BI and ETL Process Management Pain Points

ORACLE DATABASE 10G ENTERPRISE EDITION

A Tipping Point for Automation in the Data Warehouse.

The Real Challenges of Configuration Management

Solimar Print Director Enterprise

F Cross-system event-driven scheduling. F Central console for managing your enterprise. F Automation for UNIX, Linux, and Windows servers

Measuring Success Service Desk Evaluation Guide for the Midsized Business: How to Choose the Right Service Desk Solution and Improve Your ROI

HP-UX 11i software deployment and configuration tools

Privileged. Account Management. Accounts Discovery, Password Protection & Management. Overview. Privileged. Accounts Discovery

Jitterbit Technical Overview : Microsoft Dynamics CRM

PacketTrap One Resource for Managed Services

Enforcive / Enterprise Security

IT INFRASTRUCTURE MANAGEMENT SERVICE ADDING POWER TO YOUR NETWORKS

GROW. From Intuit QuickBooks to Microsoft Dynamics GP: A move that makes sense for growing businesses

Storage Guardian Remote Backup Restore and Archive Services

Predictive Intelligence: Identify Future Problems and Prevent Them from Happening BEST PRACTICES WHITE PAPER

CA Scheduler Job Management r11

CA Workload Automation

See all, manage all is the new mantra at the corporate workplace today.

DocSavi. Expert Solution for Accounts Payable Invoice Automation. Accounts Payable Automation and ROI

Information Technology Solutions

Near-Instant Oracle Cloning with Syncsort AdvancedClient Technologies White Paper

IBM Security & Privacy Services

Meeting the Challenges of Remote Data Protection: Requirements and Best Practices

Module Comparison Chart

Product Brief. DC-Protect. Content based backup and recovery solution. By DATACENTERTECHNOLOGIES

Workspace Manager 2014 Module Comparison Chart

IBM Tivoli Storage Manager

Solution White Paper Connect Hadoop to the Enterprise

SQL-BackTrack the Smart DBA s Power Tool for Backup and Recovery

How To Create A Help Desk For A System Center System Manager

Rising to the Challenge. The mid-size business and the New World of Work.

EMC Backup and Recovery for Microsoft SQL Server 2008 Enabled by EMC Celerra Unified Storage

SAP Solution Brief SAP Technology SAP IT Infrastructure Management. Unify Infrastructure and Application Lifecycle Management

SOFT FLOW 2012 PRODUCT OVERVIEW

DOCUMENT MANAGEMENT SOFTWARE: SAAS VS. INTERNAL DEPLOYMENT

Enterprise Security. Moving from Chaos to Control with Integrated Security Management. Yanet Manzano. Florida State University.

CA Database Performance

Enhance visibility into and control over software projects IBM Rational change and release management software

Advanced Remote Monitoring: Managing Today s Pace of Change

Oracle s Primavera P6 Enterprise Project Portfolio Management

Realizing the Value of Standardized and Automated Database Management SOLUTION WHITE PAPER

Network device management solution

MassTransit vs. FTP Comparison

A new Breed of Managed Hosting for the Cloud Computing Age. A Neovise Vendor White Paper, Prepared for SoftLayer

Altiris IT Management Suite 7.1 from Symantec

How To Use Windows Small Business Server 2011 Essentials

Red Hat Network Satellite Management and automation of your Red Hat Enterprise Linux environment

NEXT GENERATION ARCHIVE MIGRATION TOOLS

Private cloud computing

Predictive Intelligence: Moving Beyond the Crystal Ball BEST PRACTICES WHITE PAPER

An Oracle White Paper May Oracle Database Cloud Service

IBM WebSphere MQ File Transfer Edition, Version 7.0

SAS Information Delivery Portal

White Paper. The Ten Features Your Web Application Monitoring Software Must Have. Executive Summary

Integrated and reliable the heart of your iseries system. i5/os the next generation iseries operating system

Enterprise Key Management: A Strategic Approach ENTERPRISE KEY MANAGEMENT A SRATEGIC APPROACH. White Paper February

Accelerating Time to Market:

Eliminating the Need for WAN Acceleration Using the Cloud

Maximizing your SAP ERP

Seven Things To Consider When Evaluating Privileged Account Security Solutions

Explain how to prepare the hardware and other resources necessary to install SQL Server. Install SQL Server. Manage and configure SQL Server.

How To Use Ibm Tivoli Monitoring Software

Backup with synchronization/ replication

Accounts Payable Invoice Processing. White Paper

Versity All rights reserved.

Mary E. Shacklett President Transworld Data

PROFESSIONAL SERVICES

Your Data, Any Place, Any Time. Microsoft SQL Server 2008 provides a trusted, productive, and intelligent data platform that enables you to:

The Business Value of a Web Services Platform to Your Prolog User Community

A new era of PaaS. ericsson White paper Uen February 2015

Transcription:

W HITEP APER Beyond Job Scheduling: The Road to Enterprise Process Automation April, 2000 INTRODUCTION Today s highly accelerated pace of business and the pressures on IT staff that go along with it have created continually increasing requirements for improved responsiveness and reliability of corporate business systems. End-user expectations for reliability and speed have grown dramatically as more and more users have come in contact with a wider array of software applications. Expectations for application reliability now approach that of the telephone with users expecting business systems to be available instantly and operate flawlessly. Coincident with these rising user expectations are the increasing complications of enterprise computing. IT personnel are forced to come to grips with the accelerating rates of change, and the demands of corporations everywhere to respond to the competitive threats and opportunities brought about by e-business. The rise of the web has proven to be the ultimate demise for the socalled batch window - that nightly opportunity to run large groups of transactions offline. Instead we have seen the rise of the real-time organization that needs to respond to changing business conditions quickly and effortlessly in a 24 / 7 fashion. This creates significant challenges for corporations as they try to respond to the demands of near real time processing with their traditional batch-oriented back end systems In traditional enterprise computing, the availability of the batch window meant that a significant period of time could be set aside to launch, monitor and manage a variety of batch/sequential activities that were necessary for the proper running of the business. The global business Beyond Scheduling Page 1

environment of today and in particular the Internet with its implied on-line, real time, all the time operation has dramatically altered this rigid notion of scheduling. The idea of having batch processes with multitudes of similar transactions that are processed at night is still relevant in many Batch Processing Event Based Batch Window Real-Time Enterprise 1960 1970 1980 1990 2000 The demise of the batch window cases, but there are many other examples where traditional time-based, operations centric scheduling is wholly inadequate. Traditional batch scheduling held that business processes could be mapped out and executed in predictable ways that followed one or more business calendars. The dominant concept was that certain business activities and the software systems that supported those activities operated in sequential, predictable ways. Scheduling tools were only required to support notions of day, date, time and multiple business calendars to support corporate and/or departmental needs. For example, Accounting might be scheduled on a calendar year basis and the emphasis would be on months, quarters, and fiscal year end. Alternatively, Manufacturing might place all of its emphasis on weekly periods for purposes of planning, inventory analysis, and production. Manufacturing would also be forced to deal with plant shutdowns and holiday periods that impact production cycles, but may have little relevance for accounting purposes. Today s supercharged environment requires companies to respond much more swiftly to changing business conditions. Referring to the discussion above, it might still be viable for a company s fiscal operations to run on a fairly routine basis. However, the realities of increased global competitiveness dictate that this manufacturer is linked electronically with its business partners in an extended just in time enterprise. To exploit the extended enterprise the manufacturer must replace or automate its manufacturing, ordering and inventory processing systems to respond dynamically to changing business requirements and competitive pressures. Beyond Scheduling Page 2

JOBSCHEDULING DEFINED Improving business responsiveness through automation requires a comprehensive approach. The selected solution must automate processing across a wide spectrum of software, computing platforms and business processes. Implementing a solution that moves beyond mere scheduling and fulfills the promise of enterprise process automation can mean the difference between corporate success or failure. Traditional batch job scheduling products cannot meet today s enterprise automation needs, which has lead to the creation of a new breed of software to handle this increasingly complex and demanding role. Implied in this accelerated business climate is the requirement that IT staffs must build computing infrastructures that create responsive platforms for change. Job scheduling tools with their rigid adherence to the limitations of automating tasks based on day, date and time don t meet this requirement. New solutions are required that can automate and accelerate existing business processes and adapt to new processes and systems as they are arise. This white paper demonstrates the ever-increasing value of adding enterprise process automation software to the IT infrastructure. It traces the evolution of traditional batch scheduling, illustrates where leading edge products are today and outlines a set of requirements for moving beyond batch processing and into the realm of true enterprise process automation. The paper concludes by illustrating how AppWorx addresses these advanced product requirements. At the simplest level, job scheduling is the orderly, reliable sequencing of batch program execution. To handle these duties properly a modern job scheduler provides a host of features that allow it to schedule distributed workload efficiently and in a manner consistent with the operational goals of the business. For instance, all businesses rely on one or more business calendars. Calendars govern such things as when payroll is run, when corporate reports are generated, and when fiscal months and quarters are closed. The key issues with calendars and with other important scheduling features are flexibility and reliability: Can the scheduler adapt to the changing needs of the business, and deliver predictable results time after time? Additionally, programs and applications need to run on a variety of platforms, at specified times, in specified orders, and with varying levels of resource demands and prioritization. Schedulers need to be flexible enough to accommodate these varying technology, business and resource demands. If the job scheduler is able to sequence processes and manage resource contentions, applications will execute faster and more predictably, and scheduling throughput will increase. Unfortunately most scheduling products only focus on sequential activities and ignore other opportunities to balance and prioritize workload. Beyond Scheduling Page 3

Calendar 6:00 PM Job A Job B Job C Simple job scheduling THE EVOLUTION OF JOB SCHEDULING The concept of job scheduling has been around for decades and dates back to the mainframe where originally all business activity was driven through batch transactions. In this section we will outline the evolution of job scheduling and discuss the value and shortcomings of various approaches. In the next section of this document we will outline the additional requirements necessary for moving beyond job scheduling and into the realm of true enterprise process automation. Manual When beginning to manage batch workload most firms inevitably launch their jobs manually. This is understandable and even appropriate, but it is also easy to see how quickly this approach breaks down as the number of machines, jobs and scheduling dependencies increase. Most operating systems provide a command line interface for launching tasks in a manual fashion. As an example, UNIX provides the BATCH and AT commands that allow users to launch background tasks immediately (BATCH) or AT a specific time. These commands represent the bare bones of scheduling and are in no way a solution to complex scheduling requirements. Surprisingly, many modern enterprise applications still require a great deal of manual intervention. Oftentimes a required business process will span several batch processes with each batch process being interspersed with a manual process to set up new batch runs, review program output, gather additional input data, initiate subsequent processes, etc. Standard scheduling tools cannot automate many of these processes due to inherit limitations in their design. Later in this paper we will discuss how AppWorx advanced architecture allows automation of these otherwise manual processes. Beyond Scheduling Page 4

UNIX CRONtab If the manual approach is not the answer for distributed scheduling, the next logical step is to look to UNIX or other distributed platforms to supply some of the necessary tools. In the world of UNIX the tool is CRONtab. CRONtab is a positional, character-based tool designed to facilitate repetitive scheduling. To use CRONtab a user enters the required positional characters in a text file that in turn is read by CRONtab. An example of CRONtab is below: 10 5 * * 1-6 /usr/lib/myprog Translated, this statement runs a job at 10 minutes after 5am six days a week (the week starts on Sunday, which is day zero). CRONtab is in very wide usage, despite a number of serious limitations including: No business calendars No dependency checking between tasks No centralized management functions from which to control and monitor the overall workload across the network of CPUs. No cross platform dependencies are allowed. CRONtab only manages workload on the specific machine where it resides and it cannot manage dependencies on other machines. No audit trail of jobs that have executed. No automated restart/recovery of scheduled tasks. No recovery is possible from machine failure. If the machine where CRONtab is executing crashes, there is no mechanism to move processing to a backup machine to continue the scheduling. The scheduling rules are rigid and not easily changed. No dependencies are possible on the arrival of a file If we extend our CRONtab example to other environments, similar parallels exist between MVS/JES and DOS/Windows BAT files. Distributed Scheduling Products When mainframe-centric computing began to give way to distributed computing, job schedulers were created for this new environment. Conceptually, the requirements for distributed job scheduling were thought to be no different than they were for the mainframe time-based sequencing and dependencies. With mainframe scheduling tools Beyond Scheduling Page 5

providing the conceptual model for how job scheduling worked; the implementation challenges in the distributed environment were architectural. Specifically, how do you implement secure job scheduling across a potentially large number of diverse platforms? When the batch workload is widely distributed the scheduling becomes increasingly complicated. Specific distributed scheduling issues include: 1. In the event of a failure, how will the machines resynchronize with one another when the network is restored? 2. How can I manage and monitor the workload from these broadly distributed systems? 3. How can I keep my activities secure from unauthorized users? High-end distributed scheduling solutions address these issues. Moreover, improvements in the reliability of networking, security and hardware have made the underlying environments stable and secure. In recent years, hardware and operating system vendors have concentrated on building fail-over mechanisms into their systems, which have dramatically improved reliability of the underlying IT infrastructure. This has the additional benefit of allowing a single fail-over approach to be implemented across the enterprise instead of needing to create and document dissimilar fault tolerance and recovery routines for each application or tool in the environment. In reality, most schedulers are actually updated versions of CRONtab inasmuch as what they actually schedule is a script written around the core program that needs to execute. With traditional job schedulers, scheduling involves not only the creation of scheduling rules within the scheduler, but the creation of a script for each program to be executed. Distributed RDBMS-based Scheduling Early distributed scheduling solutions relied on flat or index files for their implementations. This made sense at the time given the lack of reliable, high performance distributed database software to manage the scheduling repository. The flat file structure was highly portable and fast, but lacked standards for data access, which limited interoperability and reporting capabilities. Beyond Scheduling Page 6

Today however modern scheduling solutions rely on relational database technology to store their scheduling data. Today s relational database technology is portable, fast, efficient, and easily accessed using SQL queries or third party reporting tools. Given the dramatic improvements and wide availability of relational technology today, it is the right choice. Scheduling Database Scheduler Application Database Agent Via adapter Packaged Application Script A Script B Typical job scheduler architecture Application API s The rise of ERP and other packaged applications in the late 1990 s created another force for change in distributed job scheduling. Historically, job scheduling and systems management emphasized the management of the various components in the IT infrastructure. Networks, CPU s, Databases, Controllers, Programs, Disk, etc. all require management and monitoring. Specific tools grew up in each of these domains to monitor each component in the infrastructure. Over time, IT personnel realized that focusing strictly on a given component without regard to the applications that these components supported was completely inadequate for monitoring and managing the enterprise. During this time, the notion of application management became popular and large systems management frameworks became available. One-size-fits-all frameworks have been discredited as costly, difficult to implement, and lacking best of breed functionality. But the notion of managing applications and not just the underlying components has prevailed. For many IT organizations, managing and monitoring core business applications and maintaining service level agreements (based on those applications) is the essential service they provide to the rest of the organization. Beyond Scheduling Page 7

Interestingly, most packaged applications have some type of rudimentary scheduling and management capability. This built in scheduling capability creates its own challenge as each application becomes its own island of automation which is not linked to the other applications in the enterprise. This creates significant integration problems when trying to synchronize processing across the multitude of enterprise applications. Enterprise application vendors responded to this challenge and created the application/program interface (API). These APIs, designed for use by programmers and other technical personnel, allows the scheduler to communicate directly with the packaged application to launch and monitor jobs. Sometimes these APIs work in conjunction with the application s own scheduling/automation tool. In other implementations the application s scheduling tool is completely bypassed with the external scheduler controlling all batch activity. The scheduling vendor writes an interface to the application s API, which then allows the scheduler to perform some minimum subset of commands necessary to launch and monitor the application s batch jobs. As we ll see later this is an important, but still incomplete approach to automating packaged application processing. ENTERPRISE PROCESS AUTOMATION The previously discussed features are the minimum core selection criteria for any job scheduling product. However, the market requirements for automating system and business processes have moved beyond job scheduling and its rigid paradigm of scheduling jobs based on day, date and time. Today s enterprise process automation solutions utilize day, date and time as pieces of the automation puzzle, but also incorporate additional features designed to address the dynamics of the business and improve the responsiveness of enterprise computing. Enterprise process automation goes beyond job scheduling in the following areas 1. Dynamic, data-driven automation 2. Conditional business rules 3. Workload balancing 4. End-user involvement 5. Fast, flexible implementations 6. Accelerating information delivery 7. Interactive graphical management 8. Security and auditability The following section describes how AppWorx implements the above requirements to provide unprecedented levels of automation, ease-ofuse, reliability and security. Dynamic, Data-Driven Automation Traditional schedulers completely ignore the application s data as a source for automating business processes. By doing so, schedulers miss Beyond Scheduling Page 8

the opportunity to remove processing latency and respond dynamically to the changing needs of the business. As a result, simple job schedulers don t fulfill today s increased requirements for automating, integrating and accelerating complex business processes. Application data found in flat files, reports, or relational databases represents the current state of the enterprise. Cash fluctuates, inventories rise and fall, and invoices are paid on a day to day, hour by hour basis. To accelerate application processing, automation products must respond dynamically to the changing state of the business as represented by changes in the corporate data. Take the case where the inventory of a part has dropped below its reorder level. A typical scheduling approach would run a job at some interval daily or weekly to determine inventory quantity. If the corporation wanted to accelerate this process it would need to write a program to check this reorder quantity and take some subsequent action order more parts. Depending on the nature of the application, several programs might need modification, which could potentially take significant time and money. AppWorx can accelerate this application process with a completely different approach. With minimal effort AppWorx can be configured to analyze changing application data and trigger events based on that data. AppWorx advanced design allows it to interrogate a data value, check its status and initiate events immediately or at some future time. IT personnel are then in a position to accelerate business processing without making expensive modifications to program source code. As we ll see later, AppWorx is also capable of incorporating complex conditional processing into its automation rules to create custom solutions that further automate and integrate corporate business processes. As shown above, AppWorx is capable of dynamically automating applications. This contrasts with typical job scheduling tools that rigidly schedule system events or scripts. As discussed above, true enterprise automation requires the ability to interact with the application and its underlying data to achieve a complete solution. Appworx is designed to manage applications, and can leverage information stored in multiple application databases to accelerate application processing. It is important in this discussion to define a business process. For purposes of this document, a business process is a series of interrelated steps to achieve some stated goal. Oftentimes the business process while conceptually simple close the books is very complex when broken down into its individual tasks. A process is not a single task or a job, it is more likely a collection of tasks. Surprisingly many packaged applications still rely on extensive manual effort to complete a business process. This manual intervention typically involves supplying data necessary for processing and validating the results of each step in the business process - checking date ranges, generating additional reports, validating file arrival and file contents etc. There are numerous examples where the application vendor simply did Beyond Scheduling Page 9

not provide all of the necessary facilities to automate a given business process. The result is that critical processes are labor intensive, error prone and consume inordinate amounts of time. Utilizing AppWorx, organizations can automate these previously manual processes. AppWorx automates these processes by combining scheduling, conditional business processing and an awareness of application data. Including all of these capabilities in the automation effort, and using them to drive processing allows AppWorx to automatically interrogate, update, process, and check this data as a part of the business process. This in turn improves timeliness, accuracy, and reliability. Let s imagine a process that looked like this; Business Process X Begin Start task 1 Manually review results Manually start task 2 using data from task 1 Manually review the results Manually start task 3 using data from task 2 Etc. Step n End The entire business process X runs from Step 1 ÿ Step n but is broken up by a series of manual reviews and job submission. Using AppWorx and eliminating the manual steps to gather input data, review output and launch tasks changes the nature of the business process as shown below; Business Process X with AppWorx Begin Start task 1 Followed by task 2 Followed by task 3 Step n End Beyond Scheduling Page 10

By eliminating the manual process, AppWorx accomplishes two very important goals. First, the processing latency inherent in manual efforts Calendar launches job Enterprise Application Scheduled Tasks system event user request Application Event Application data AppWorx application-centered design is removed and processing is accelerated. Secondly, errors are reduced or eliminated by removing or reducing end-users involvement in the process. Error reduction is very important. Recovering from the effects of bad data or incorrectly managed processes can be costly and time consuming. Additionally, in today s accelerated business environment, there is very little time available to recover from processing errors. AppWorx uses application data to provide superior automation, and in so doing improves business responsiveness, eliminates errors and frees up staff time. Conditional Business Rules Another important requirement for enterprise process automation is the ability to implement conditional business rules. These rules can be based on the underlying application data as described above, or may be based on other factors. AppWorx provides tools for modeling these conditional business rules. When implementing business rules with AppWorx, logical operators are used to check for a variety of business conditions including greater than, less than, equal to, is like, etc. AppWorx provides a wide variety of conditional operators for interrogating data values and making decisions based on the results of those queries. Creation of these conditional operations is straightforward and supported through a natural language interface meaning non-programmers can create business rules without coding. Traditional schedulers only provide conditional processing for return codes, if they are provided at all. Beyond Scheduling Page 11

Simple examples of the use of conditional logic include If the value in row x of table y is greater than 100, start process A. With the ability to add additional logical operators like OR and AND, it is easy to see how complex business rules can be constructed to model the dynamics of the business. Appworx also provides the ability to apply this conditional logic before, during and after task execution. This provides tremendous flexibility when attempting to model complex business processes. With this capability any process can be checked to ensure that all precedent conditions, execution conditions or successor conditions are valid. Oftentimes this conditional logic will eliminate required manual intervention or writing of program code. A simple example of this would be to check to see if a task or requirement has completed prior to starting a process, or possibly checking to see how long the current job has run and canceling it if it has run in excess of some predetermined time. More complex processes can be constructed around a variety of inputs, temporal conditions and events. An example of one of these more complex conditionals would be; Number of rows in Table A > 100, AND Inventory_Quantity in Table B < 1000, AND Time is > 22:00, AND Files A, B and C are all present, THEN Start Task(s) X, Y, Z Job scheduling products don t provide the functionality required to model conditional business logic. Workload Balancing Application processing today cannot be separated from the notion of workload balancing. Workload balancing ensures that scarce computing resources are allocated appropriately among competing tasks and applications. There are so many tasks within an application competing for scarce resources that ignoring the effects of these resource contentions will impact processing. Efficient automation products need to provide technology for managing these resource contentions. Workload balancing provides not only the ability to set priorities for processes, but also create multiple queue s so that jobs of similar priorities can be grouped together and run according to a predetermined algorithm. Additionally, priorities and queues must be easily changed to accommodate the changing needs of the business. AppWorx provides solutions for creating and managing queues, changing queue priorities and for assigning priorities to processes and schedules. These capabilities optimize application throughput and balance the load across systems and applications. Beyond Scheduling Page 12

User Requests Calendar Scheduled Tasks Dynamic Tasks Queue A Queue B Queue C High Priority After 6 PM Other AppWorx queue management and load balancing End-user involvement Many of today s enterprise applications are designed to empower the end user. Empowered users submit their own requests, generate their own reports and are free to make demands on the system round the clock. As organizations have implemented these large applications and their companion reporting products they have realized some additional challenges. The users, enticed by the promise of more control and better data access, want to submit requests and reports in a 24/7 fashion. This poses a problem for the operations staff as these user requests create fluctuations in system load that impact overall system performance. These fluctuations are often severe enough that operations personnel can no longer meet their service level objectives. Some user requests also collide with other mission critical business processes. The challenge is to continue to allow end-users the freedom to maximize their use of the system while maintaining a reasonable system load and managing resource contentions. The answer to this problem lies with AppWorx unique end-user capability. By combining AppWorx end-user component with the AppWorx workload balancing and security capabilities, both operations and end-users receive the control and responsiveness they need. Like the enterprise applications themselves, an enterprise process automation product must be flexible and easy to use so that an end-user can exploit the product s features. The end-users often have the best grasp of the business and know how their business processes can be accelerated or streamlined. Beyond Scheduling Page 13

AppWorx Request Manager provides a mechanism to safely manage conflicting user requests. Request Manager gives end-users the ability to request jobs (modules) on an ad-hoc basis. Additionally, authorized users can submit chains (groups of modules linked together with one or more dependencies) and monitor and manage them to completion. Upon completion, users have the ability to view output on-line and re-direct output to a desired printer. The key to making this all work in the enterprise is being able to set the correct processing and prioritization policies for managing user requested jobs. AppWorx provides facilities so that Operations personnel can create and maintain process queues, priorities and end-user profiles. These parameters can be tuned to eliminate undue system load and resource contention. Queues can be established that only handle certain classes of requests and/or operate only during certain times of the day, which in turn allows users the flexibility to submit jobs for execution at any time without IT staff needing to worry about unmanageable processing loads. From an end-user s perspective, he or she has unprecedented levels of control and visibility. Users can launch, monitor and cancel requests at will without requiring intervention from IT staff. This control eliminates an unnecessary burden from IT staff in terms of handling ad hoc user requests via phone or email. Moreover, since end-users control the submission, the chance for costly errors to be introduced when the user passes the request to the IT group is eliminated. Additionally, because AppWorx can validate input data sources at the time of the user s request, AppWorx can eliminate the simple but potentially costly errors associated with running ad hoc submissions with incorrect data. In some cases IT departments have found it desirable to have AppWorx in the background, intercepting user requests after they have been submitted through some other means. With this approach it is not necessary for users to learn a new interface to submit their requests. They re often not even aware that AppWorx is involved in the processing of the request. AppWorx can still be configured to control the requested tasks and operations personnel can capitalize on AppWorx queue management and prioritization schemes to meet their service objectives. Involving the end-users in the managing and monitoring of their requests increases user satisfaction and cuts down on help-desk calls. Users feel empowered and more involved when they are able to actively participate in managing the application. AppWorx provides the necessary facilities to allow this type of user participation. Fast Flexible Implementations Most schedulers are actually updated versions of CRONtab inasmuch as what they actually schedule is a script written around the core program that needs to execute. With traditional job schedulers, scheduling involves not only the creation of scheduling rules within the scheduler, but the creation of a script for each program to be executed. This reliance on scripts, rigid scheduling rules and complex APIs slows implementations Beyond Scheduling Page 14

and limits flexibility. The reliance on scripts and the technical knowledge required to write them also eliminates most job schedulers for use by end-users. Appworx provides a unique and much more efficient method for managing classes of programs. AppWorx provides a scriptless approach to automation. This method is based on the module concept. A module is a template that describes a given set of inputs, outputs and error handling for an entire class of programs. Once a module or template is developed for a class of programs, then it s a matter of pointing and clicking to automate additional programs of that type. This saves time not only by eliminating the error-prone development of scripts, but also by improving future maintainability and flexibility. For example, if a database login or a parameter value changes, then the administrator makes a single change in AppWorx that propagates through all applicable modules. A traditional job scheduler could require modifications to tens or hundreds of scripts using commands such as grep and find, that can easily overlook a required modification. Note that there is nothing that precludes AppWorx from scheduling the typical UNIX script or Windows NT Batch file, but efficiency and costsavings is gained when the scriptless approach is implemented for an application. Another benefit of AppWorx scriptless approach is that it speeds migration of programs from test to production. Because the automation rules are stored in a database, objects can be freely imported and exported across environments. AppWorx mapping utility replaces fields unique to a given environment (i.e. database logins/passwords) with ease. Unique import/export functions allow quick migration of AppWorx automation rules through the entire application lifecycle - development, quality assurance, and production. This scriptless approach speeds deployment and creates a flexible platform for rapid changes in the environment. Dozens of standard templates are available for AppWorx and the software developer s kit allows creation of additional templates. Accelerating Information Delivery To further accelerate business processes it is imperative that the data and reports move swiftly through the system and get delivered to the right systems and personnel. The prevailing Internet time is pervasive across all industries, which in turn places a premium on accelerating processing and making fast, informed decisions using on accurate data. Using AppWorx object-oriented approach, you can create a printer definition for each output device, then assign the printer definition to one or more jobs (modules). In this way, a printer definition can be created once and reused for multiple tasks, or chains. Printer definitions can specify a single printer, or a distribution list. In AppWorx, a printer definition includes output devices such as laser printers, plotters, faxes, pagers and e-mail. This ability to drive output to a number of different Beyond Scheduling Page 15

media has become increasingly important and is now an expected part of the information delivery chain. An additional feature allows administrative personnel to create retention strategies for output files. Administrators create policies to determine how long output should remain on the system, how many copies of a given piece of output should be retained etc. System Administrators can manage available disk space by combining business needs with hardware and software limitations. Essentially, important files are stored and less important ones can by systematically removed. This alleviates users and administrators from housekeeping duties and ensures that identical reports aren t re-run time and time again if they are lost. Appworx provides its own built-in ftp capability. This built-in function allows programmers, systems personnel, and end-users to transfer files without the need for coding. Files may be moved between servers and applications or even sent to the desktop. Likewise, conditionals in AppWorx can be designed to check for the arrival of a file before executing a business process. This function is extremely convenient when consolidating data transferred from disparate locations. This easy-to-use feature improves developer, administrator and end-user efficiency by saving time during setup and maintenance that would otherwise have been spent developing scripts. AppWorx provides integrated online-viewing for standard job output (stdout), or report output. Operations personnel, as well as end-users, can use this viewing function. On-line viewing results in significant cost savings over printed output since it allows users to either skip the printing process entirely, validate report contents prior to printing and/or print only selected parts of desired reports. Beyond Scheduling Page 16

WorldWideWeb Fax/Paging Output System Printer FTP Enterprise Application Desktop PC Online Viewing AppWorx output delivery capabilities Interactive Graphical Management AppWorx graphical monitoring component provides a graphical view of the current scheduling activity and an intuitive point and click management console. For instance if the graphical display indicated that a process had abnormally terminated, a user simply clicks on the object and retrieves job information. This instant action gets the job back up and running quickly. Many graphical displays provide forecasting information, but only AppWorx displays job streams in a real-time, interactive environment and allows users to interact with the display to take actions. Security and Auditability Enterprise security and auditability become increasingly important as the automation solution expands to include additional users, applications and data. A distributed environment is inherently more prone to security intrusions. The widely distributed machines, networks and end-users present multiple opportunities for unauthorized access. An enterprise process automation solution must be flexible enough to allow the product to be safely used by the widest number of users without jeopardizing security. Security has a minimum of two dimensions: users and network. User security prevents individual users from taking unauthorized actions with the tool. These include creating and modifying modules and chains, Beyond Scheduling Page 17

launching processes, viewing output, etc. User-level security must provide enough granularity to allow or deny access to the complete range of functions within the product. For instance, personnel might be assigned to creating scheduling objects, but other personnel might be chartered with managing the production systems. Network security focuses on the distributed nature of today s computing environment. It is well documented that standard UNIX security, has some holes and many products are used to improve distributed security. AppWorx uses standard system interfaces and data encryption and does not open up holes that allow unauthorized network access. AppWorx also improves security over and above typical script-based scheduling solutions. AppWorx stores required database user logins and passwords in a central repository and eliminates the security breaches created when passwords are embedded directly in scripts or given directly to end-users who are requesting jobs. Auditability AppWorx provides an optional logging capability that keeps track of user activity. If this feature is enabled, AppWorx tracks modifications to the AppWorx repository, including which user made the modification, date, time, and before and after images of the data that was changed. This feature improves systems integrity and ensures compliance with various regulatory statutes. Financial and governmental institutions have historically been the most security conscious, but any organization that holds sensitive personnel, financial or trade-secret data in their network should closely investigate the security issues surrounding their distributed applications environment. CONCLUSION The rapid pace of today s business environment has created demand for a new breed of automation tool to automate business processes. This new breed of tool must go beyond the world of scripting and time-based events and venture into a new realm where applications and events can be driven dynamically in response to changing business conditions. To achieve these new levels of automation the tool selected needs to reach out across a wide array of platforms and applications. Additionally the tool must be easy to use and responsive to change. Users need to be able to interact with the new breed of tools so that the corporation can leverage their skills and also free up IT resources that can be better utilized on other initiatives like e-business. Lastly, this new breed of tool needs to be much more application and data aware and have facilities to access the underlying application s data and use that data to drive the dynamics of the business. AppWorx provides all those capabilities and more in a straightforward easy to implement solution. The product has proven itself in hundreds of Beyond Scheduling Page 18

corporations worldwide as the right solution for enterprises seeking a state of the art solution to their automation needs. Beyond Scheduling Page 19

Enterprise Automation Evaluation Matrix AppWorx Other General Multi-platform, UNIX and NT Support Single point-of-control for entire network Import/Export Utility for migrating test to production Fault tolerant architecture Resynchronization of schedules after network failure Use RDBMS for data storage and reporting Built in FTP capability Schedule Creation Schedule processes using day, date, time, interval Schedule processes using business calendars Schedule processes based on file arrival, size and stability Initiate processing via application events, data or conditions Automate complex business processes Balance workload among several machines Allow static and dynamic parameter passing Evaluate conditions before, during or after job execution Event Management Centralized management console SNMP capability for communicating events Insert job information in alert messages Notification via fax, email, pager, etc. Job Execution/Recovery Step restart Automated recovery from failed tasks or schedules Prioritize jobs via queues, roles, and load balancing Customizable on-line documentation Retention parameters for archiving job output Graphical User Interface Support remote access Light-weight, web browser enabled Display current schedules, real-time events, and history End user component Output management Allow on-line viewing, text searching and local printing Beyond Scheduling Page 20

Allow printing of just selected pages Control output distribution Send output to multiple output devices Retention parameters for archiving application output Auditing Capture before and after images of all modifications Track automated and manual activities. Security Role-based security for all AppWorx objects Role-based security for all AppWorx users Encrypted application passwords Use secure network protocols Application Integration Extensions to major applications Automate non-standard jobs Scriptless approach for application integration Published API for developers Beyond Scheduling Page 21