Beyond Job Scheduling: The Road To Enterprise Process Automation

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Beyond Job Scheduling:

The Road To Enterprise Process Automation

For more information about


UC4 products please visit
www.uc4.com.
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, real-
time, 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 time-
based, 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 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.
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 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 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 non-
programmers 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 end-
users 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


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
Copyright 2010 systems that drive their business operations. Visit www.uc4.com for more information.
UC4 Software GmbH (UC4),
all rights reserved. The
materials in this publication are Contact UC4 Software
protected by copyright and/or
other intellectual property laws.
Any unauthorized use of the
In the US at (877) 464-7300 (toll-free)
materials in this publication In Europe at +43 2233 77880
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.

You might also like