For more information about UC4 products please visit www.uc4.com. Beyond Job Scheduling: The Road To Enterprise Process Automation
Introduction 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 the UC4 platform addresses these advanced product requirements. Introduction... 3 Job Scheduling Defined...4 The Evolution of Job Scheduling... 4 UNIX CRONtab... 5 Distributed Scheduling Products... 6 Distributed RDBMS-based Scheduling... 7 Application API s... 7 Enterprise process automation... 8 Dynamic, Data-Driven Automation... 8 Conditional Business Rules... 10 Workload Balancing...11 End-user involvement... 12 Fast Flexible Implementations... 13 Accelerated Information Delivery... 14 Java-Enabled Client... 15 Interactive Graphical Management... 15 Security and Auditability...15 Conclusion... 16 About UC4 Software... 16
Introduction The relentless pace of today s business environment and its enormous pressures on IT staff has made it critical for corporate business systems to become more responsive and reliable. End-user expectations for reliability and speed grow dramatically as more and more users have come in contact with a wider array of software applications. Expectations now approach that of the telephone, with users demanding business systems to be available instantly and operate flawlessly. Coincident with these rising user expectations are the increasing complications of enterprise computing. IT personnel have been forced to come to grips with the accelerating rates of change, and the demands of corporations everywhere to quickly respond to the competitive threats and opportunities brought about by e-business. The rise of the web has proven to be the ultimate nemesis for the so-called 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 new global business environment, and in particular the Internet with its implied on-line, realtime, 24x7 operation has dramatically altered this rigid notion of scheduling. The idea of having batch processes with a multitude of similar transactions that are processed at night is still relevant in many cases, but there are many other examples where traditional timebased, operations centric scheduling is wholly inadequate. Instead, companies require near, or real-time processing. 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 a manufacturer to be 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. Improving business responsiveness through automation requires a comprehensive approach build in from the start. 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 and failure. Traditional batch job scheduling products cannot meet today s enterprise automation needs, leading 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 arise. Job Scheduling Defined At the most basic, 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. Simple scheduling 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 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. 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 outline the evolution of job scheduling and discuss the value and shortcomings of various approaches. In the following section, we outline the additional requirements necessary for moving beyond job scheduling and into the realm of true enterprise process automation.
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 adequate for complex scheduling requirements. Surprisingly, many modern enterprise applications still require a great deal of manual intervention. Often a required business process will span several batch processes with each batch process being preceded by 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. 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: 10 5 * * 1-6 /usr/lib/myprog Translated, this statement runs a job at 10 minutes after 5:00 A.M. six days a week (the week starts on Sunday, which is day zero). CRONtab is in very wide use 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 providing the conceptual model for how job scheduling worked, the implementation challenges in the distributed environment were mainly architectural. Specifically, how do you implement secure job scheduling cross a potentially large number of diverse platforms? When the batch workload is widely distributed, the scheduling becomes increasingly complicated. Specific distributed scheduling issues include: In the event of a failure, how will the machines resynchronize with one another when the network is restored? How can I manage and monitor the workload from these broadly distributed systems? 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. State-of-the-art schedulers use a relational database and eliminate scripting. In recent years, hardware and operating system vendors have concentrated on building failover 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. Despite these architectural advances, most schedulers are actually updated versions of CRONtab: they simply schedule 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. 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. Application API s The rise of ERP (Enterprise Resource Planning) 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, disks, and more require management and monitoring. Specific tools appeared for each of these areas 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 missing the big picture: monitoring and managing the enterprise. Therefore 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 goal 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. 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, isolated from 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 interfaces (APIs). APIs, designed for use by programmers and other technical personnel, allow the scheduler to communicate directly with the packaged application to launch and monitor jobs. Sometimes these API s 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 discussed later, this is an important, yet still incomplete, approach to automating packaged application processing.
Enterprise process automation The previously discussed features are the minimum core selection criteria for any jobscheduling 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 use 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: Dynamic, data-driven automation Conditional business rules Workload balancing End-user involvement Fast, flexible implementations Accelerated information delivery Interactive graphical management Security and auditability The following section describes how the UC4 platform implements the above requirements to provide unprecedented levels of automation, ease-of-use, 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 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, and 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 inventories. 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. The UC4 platform can accelerate this application process with a completely different approach. With minimal effort, process flows can be configured to analyze changing application data and trigger events based on that data. Advanced design tools allow data values to be interrogated, its status to be checked and initiating of 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 will see later, the UC4 platform is also capable of incorporating complex conditional processing into its automation rules to create custom solutions that further automate and integrate corporate business processes.
Dynamic application automation contrasts with the capabilities of 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. The UC4 platform 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. Frequently, 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 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. Using the UC4 platform, organizations can automate these previously manual 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 UC4 users 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 to Step n, but is broken up by a series of manual reviews and job submissions. Eliminating the manual steps of gathering input data, reviewing output, and launching tasks changes the nature of the business process as shown below: Business Process X with the UC4 platform Begin Start task 1 The UC4 platform validates data from task 1, passes it to task 2 Start task 2 The UC4 platform validates data from task 2, passes it to task 3 Start task 3 Step n End
The decision to run a job is based on calendars, system events, application events, and user requests. Eliminating manual process accomplishes two very important goals. First, the processing latency inherent in manual efforts is removed and processing is accelerated. Second, 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. The UC4 platform 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. UC4 provides powerful tools for modeling these conditional business rules. When implementing business rules with the UC4 platform, logical operators are used to check for a variety of business conditions including greater than, less than, equal to, is like, etc. A wide variety of conditional operators for querying data values and making decisions based on the results of those queries are provided. Creation of these conditional operations is straightforward and supported through a natural language interface meaning nonprogrammers can create business rules without coding. Traditional schedulers only provide conditional processing for return codes, if they are provided at all. 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. If there are more than 50 transactions in table y, start process A.
With the ability to add additional logical operators like AND and OR, it is easy to see how complex business rules can be constructed to model the dynamics of the business. The UC4 platform 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. Often 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 Traditional job scheduling products don t provide the advanced functionality required to model conditional business logic. Queues balance the workload on application machines. 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. Ignoring the effects of these resource contentions can severely impact processing, with the result that service levels can suffer. Efficient automation products need to provide technology for managing these resource contentions. The UC4 platform uses queues to balance the workload on application machines.
Workload balancing provides not only the ability to set priorities for processes, but also to create multiple queues 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. Creating and managing queues, changing queue priorities, and assigning priorities to processes and schedules are all features provided by UC4. These capabilities optimize application throughput and balance the load across systems and applications. 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 24/7. 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 the unique end-user capability available from UC4. By combining the automation of end-user interaction with the 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 endusers often have the best grasp of the business and know how their business processes can be accelerated or streamlined. The UC4 platform gives them that chance. A Request window provides a mechanism to safely manage conflicting user requests and gives end-users the ability to request jobs on an ad-hoc basis. Additionally, authorized users can submit chains (groups of jobs linked together with one or more dependencies) and monitor and manage them to completion. Upon completion, users have the ability to view output online and redirect 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. 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 gained an unprecedented level of control and visibility. Launching, monitoring, and canceling requests at will, no longer requires intervention from IT staff. This 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 input data sources can be validated at the time of the user s request, the simple but potentially costly errors associated with running ad hoc submissions with incorrect data can be avoided.
In some cases, IT departments have found it desirable to have the UC4 platform 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 automation software is involved in processing the request. The UC4 platform can still be configured to control the requested tasks and operations personnel can capitalize on queue management and prioritization schemes to meet their service objectives. However, 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. The UC4 platform provides the necessary facilities to allow this type of user participation. Fast Flexible Implementations As stated above, most schedulers are nothing more than updated versions of CRONtab: they actually schedule 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 also the creation of a script for each program to be executed. This reliance on scripts, rigid scheduling rules, and complex API s slows implementations and limits flexibility. The reliance on scripts, and the technical knowledge required to write them, precludes most job schedulers from being used by end-users. The UC4 platform provides a unique and much more efficient method for managing classes of programs: an object-oriented 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 simply 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 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, with no assurance that all required modifications were made. Note that there is nothing that precludes UC4 users from scheduling the typical UNIX, OpenVMS, or OS/400 script or Windows batch file, but efficiency and cost-savings is gained when the object-oriented approach is implemented for an application. Another benefit of the modular approach is that it speeds migration of programs from development to production. Because the automation rules are stored in a database, objects can be freely exported and imported across environments. A mapping utility replaces fields unique to a given environment (i.e. database logins/passwords) with ease. Unique import/export functions allow quick migration of automation rules through the entire application lifecycle - development, quality assurance, user acceptance testing and production. This approach speeds deployment and creates a flexible platform for rapid changes in the environment. Dozens of standard templates are available for the UC4 platform, with new templates being added as new opportunities arise.
Accelerated 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 accurate data. Unlike many other schedulers, the UC4 platform offers output distribution capabilities. You can create a definition for each output device, and then assign the definition to one or more jobs (modules). In this way, an output definition can be created once and reused for multiple tasks. Output device definitions can specify a single device, or a distribution list of multiple output devices. Supported output device definitions include devices such as laser printers, plotters, faxes, pagers and e-mail. This ability to drive output to a number of different 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 and how many copies of a given piece of output should be retained. 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. Automate report publishing and distribution to any type of output device. The UC4 platform 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. Conditions can be designed to check for the arrival of an FTP file before executing a business process. This function is extremely convenient when consolidating data transferred from different locations. The easy-to-use FTP feature improves developer, administrator, and end-user efficiency by saving time during setup and maintenance that would otherwise have been spent developing scripts.
The UC4 platform provides integrated online-viewing for standard job output (stdout), and 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. Java-Enabled Client To take advantage of the widespread use of the Internet in corporate computing, the UC4 platform offers a fully enabled Java client. It can be accessed from any standard browser, and it automatically installed when the user enters the correct URL. Maintenance demands on IT staff are significantly reduced as updating to the latest release of the Java client happens the next time the users log in. Interactive Graphical Management Graphical monitoring component provides a tree 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 right-clicks on the object and elects to retrieve job information. This instant action gets the job back up and running quickly. Many graphical displays provide forecasting information, but the UC4 platform displays job streams in a real-time, interactive environment, and allows users to interact with the display to take actions. Security and Auditability In the post Sarbanes-Oxley world, enterprise security and corporate accountability 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: user and network. User security prevents individual users from taking unauthorized actions with the tool. These include creating and modifying modules and chains, 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. The UC4 platform provides control over major functions and every managed object. Network security focuses on the distributed nature of today s computing environment. It is well documented that standard UNIX security has some holes -- many products are already on the market to improve distributed security. The UC4 platform uses standard system interfaces and data encryption and does not open up holes that allow unauthorized network access. Compared to typical script-based scheduling solutions security is significantly improved with the UC4 platform. Database and host user logins and passwords required to access systems are securely stored in a central repository.
This removes the risk of security breaches created when passwords are embedded directly in scripts or given directly to end-users requesting jobs. Optional logging capability is available that keeps track of user activity. If this feature is enabled, all modifications to the UC4 platform repository are logged, 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 tool to automate business processes. This new breed of tool must go beyond the world of scripting and simple time-based events, venturing into a new realm where applications and events can be driven dynamically in response to constantly 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 to offer maximum functionality and flexibility. 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 free IT resources that can be better utilized on profitable initiatives like e-business. Finally, this new breed of tool needs to be much more application and data aware, with facilities to access the underlying application s data and use that data to drive the dynamics of the business. The UC4 platform provides all these capabilities and more in a straightforward and easy to implement solution. The product has proven itself in hundreds of corporations worldwide as the right solution for enterprises seeking a state of the art solution to their automation needs. By adopting the UC4 platform early in a development cycle, organizations can maximize their ROI, and build in a comprehensive automation philosophy from the ground up. About UC4 Software Copyright 2010 UC4 Software GmbH (UC4), all rights reserved. The materials in this publication are protected by copyright and/or other intellectual property laws. Any unauthorized use of the materials in this publication can result in an infringement of these laws. Unless expressly permitted, the copying of information or documents from this publication, in any form, without the prior written permission of UC4 is prohibited. UC4 Software is the leading provider of intelligent service automation solutions that enable organizations to connect IT service delivery with business demand. Combining real-time intelligence with just-in-time execution ensures customers can automate processes that traverse on-premises, virtualized and cloud computing platforms at low risk and cost. In excess of 1600 organizations worldwide trust in UC4 to automate the mission-critical IT systems that drive their business operations. Visit www.uc4.com for more information. Contact UC4 Software In the US at (877) 464-7300 (toll-free) In Europe at +43 2233 77880