Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

RunMyJobs Product Description

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

REDWOOD RUNMYJOBS SOLUTION DESCRIPTION

WWW.REDWOOD.COM
Table of Contents
Introduction ............................................................................................................ 2
1.1 What is the Redwood RunMyJobs® solution? .......................................................................... 2
1.2 The Cloud service advantage .................................................................................................... 2
1.2.1 Unbounded value ........................................................................................................................... 3
1.2.2 Unparalleled support ...................................................................................................................... 3

Architecture Overview ............................................................................................ 4


2.1 Introduction .............................................................................................................................. 4
2.1.1 Unlimited connections – process servers ....................................................................................... 5
2.1.2 Process servers that are connectors ............................................................................................... 6
2.1.3 Process servers leveraging platform agents ................................................................................... 6
2.1.4 High Performance ........................................................................................................................... 6

Security................................................................................................................... 7
3.1 General security........................................................................................................................ 7
3.2 Secure operation through firewalls .......................................................................................... 7
3.3 Authentication using SAML (SSO)............................................................................................. 8
3.4 Cloud security ........................................................................................................................... 8
3.4.1 User access ..................................................................................................................................... 8

Functionality ........................................................................................................... 9
4.1 Defining automation................................................................................................................. 9
4.1.1 Processes ...................................................................................................................................... 10
4.1.2 Chains ........................................................................................................................................... 16

4.2 Automation life cycle in the enterprise .................................................................................. 18


4.2.1 The three-tiered landscape........................................................................................................... 18
4.2.2 Active auditing .............................................................................................................................. 18
4.2.3 Automation definition and version control .................................................................................. 19

4.3 Queues.................................................................................................................................... 19
4.3.1 Intelligent load balancing.............................................................................................................. 19

Operations ............................................................................................................ 20
5.1 Running Automation .............................................................................................................. 20
5.1.1 Automating the workload and processes ..................................................................................... 20
5.1.2 Management dashboards ............................................................................................................. 21
5.2 Monitoring and forecasting .................................................................................................... 23
5.2.1 Issue resolution ............................................................................................................................. 23
5.2.2 Reports.......................................................................................................................................... 24

Conclusion ............................................................................................................ 25

Page | 1
Introduction
The Redwood RunMyJobs® solution (RMJ) delivers the world’s first real-time, event-driven process
automation delivered through the cloud. RMJ features a simple interface and an extremely flexible
operational model that enables IT and business stakeholders to share a single point of visibility and
control. RMJ gives its users the confidence and clarity required to eliminate the limitations of silos
across the enterprise and achieve cross-functional goals for the entire organization.

This document provides a summary description of the capabilities of RMJ.

1.1 What is the Redwood RunMyJobs® solution?


The RMJ platform is real time, event-driven process automation delivered as a service, with no
limitations on the number of process servers used and with all connectors included. It gives you the
ability to automate, manage and monitor process execution for multiple applications across any mixed
operating system and server environment.

RMJ technology provides you with end-to-end process automation on a single platform for centralized
control over any single or multiple-step series of tasks. It allows for coordinated process alignment
and governance between IT and business stakeholders. RMJ simplifies the management of complex
inter-dependencies between disparate applications and systems using intelligent, event-driven
automation. The web-based interface provides meaningful and detailed information about the status
of all processes and inter-dependencies that can be understood by all stakeholders. It’s designed to
be the best automation platform for today’s and tomorrow’s challenges. Updates are automatic.
Minimal effort is required to expand the size and scope of process automation. The RMJ solution
even allows safe remote administration and operational management from anywhere.

The RMJ platform includes automatic error detection, recovery and notification handling for its
automated processes. With it, you establish a pro-active, landscape-wide monitoring infrastructure to
ensure the end-to-end health of your automation environment. The technology also includes dynamic
load balancing to improve performance and increase resource utilization.

The RMJ automation control platform is available in 32 different languages, so, no matter where you
are, no matter who’s on your team, everyone can easily get the results they understand and need.
You can define a different language to use across your interface, which can be changed at any time
as a user setting.

1.2 The Cloud service advantage


As a service delivered through the cloud, RMJ offers the fastest return on investment (ROI) by
providing significant benefits with the lowest possible total cost of ownership (TCO).

Our delivery model allows your organization to avoid:

• Additional infrastructure cost


• Infrastructure personnel requirements
• Operating system maintenance
• Database maintenance
• Technical application management
• Interruptions from application upgrades, fixes, patches and downtime

Page | 2
RMJ’s cloud infrastructure is deployed on the industry’s leading cloud resources, which provide world-
class support for complete elasticity of resources, redundancy and high availability. In fact, our cloud-
based service comes with an availability guarantee underwritten by external certification to ISAE 3402
(SSAE18) type II and ISO 27001.

1.2.1 Unbounded value

RMJ is based on an extremely flexible pricing model that includes unlimited connectors and control.
That means it doesn’t matter how many different platforms you use to keep your day-to-day
operations running – it’s all included in our fixed platform fee. We also provide an easy transition to
the cloud and single-pane automation of complex hybrid enterprises.

This approach gives administrators the freedom to add and remove connections or install platform
agents on as many operating systems as they need without worrying about licensing implications.
RMJ makes complex system development and QA testing easy to plan and implement. It also makes
it more practical to configure connections to rarely used systems that run very few processes.

With RMJ you pay only for the execution of automated processes - not process definitions. We
provide total transparency to track value.

RMJ gives you…

• Fast, cohesive and efficient enterprise-wide management of business-critical application


processes
• Flexible, real-time scheduling capabilities based on events, time, date, load or process
dependencies
• Seamless integration with diverse systems, products and applications through APIs and
network management frameworks
• Automated error correction and restart build within a standards-based architecture

1.2.2 Unparalleled support

Redwood maintains the highest standards in the industry by automating all aspects of service
provision - from monitoring infrastructure, the application, and our customers’ automated systems.
Last year alone, RMJ’s cloud-based service automated more than 250 million activities, and, once
again, exceeded our guaranteed uptime commitments with 99.95% uptime.

On top of our proven reliability and flexibility, we also provide unrivalled, experienced support when
you need it. Redwood has been the leader in automation technology for more than 25 years and
remains the only global provider with this single focus. Our more than 3,000 corporate customers
worldwide have a direct line of communication and escalation to the development and engineering
experts who built the RMJ platform. We have offices in the US, UK, Netherlands, Germany and
Australia. We’re dedicated to your success.

Our track record and commitment have earned Redwood the status of both an Oracle® Gold Partner
and the Automation Partner of Choice for SAP®.

Page | 3
Architecture Overview
2.1 Introduction
RMJ is designed to be delivered as a service through the cloud. This delivery model provides the
greatest functionality and ease-of-use for our customers.

The RMJ architecture has two main components: the RMJ instance and the process servers within it.
The RMJ instance is the brain of the service and the process servers within the instance establish
connections to all systems, applications and services where workload automation happens.

Figure 1: Cloud Solution Architecture

Page | 4
2.1.1 Unlimited connections – process servers

With RMJ, you have no restrictions or additional costs based on the number of systems that you
connect and manage. The following figure highlights the most common systems, applications and
services that are supported out of the box with the RMJ service.

Figure 3: Unlimited Connectors and Control

Process servers represent connections to systems, applications and services where the RMJ
software runs background processes - for example, SAP application servers, a remote FTP server,
a virtual system in a VMware environment, or any instance of a supported operating system. These
servers either have a platform agent or are directly connected to the RMJ platform. For example, the
connection of an SAP system is carried out directly from the central server. This connection requires
no platform agent on the operating system level.

Connection to any system you manage with RMJ is configured using a process server specific to that
system. There is no limit to the number of process servers you can use. The multithreaded design of
our process server structure allows for the maximum processing volume and performance for your
workloads.

Page | 5
A process server creates a one-to-one connection between itself and the target. For example, to run
processes (also known as jobs) on a Windows target system, a process server is defined in the
central server and connected to the platform agent on the Windows system. If you’re connecting an
SAP system, you’ll define a different process server and link it to SAP via an SAP interface (XBP).

Process servers communicate with their target system, sending specific instructions for process
execution, including when and with what parameters. They also receive information on process and
task status, output files and other information from the process server.

2.1.2 Process servers that are connectors

We offer specific connectors for common business applications such as SAP RP, Oracle EBS,
PeopleSoft, Oracle Fusion Salesforce.com and others. Most of these also include individual, vendor-
specific protocols and APIs such as RFC/JCo for SAP and PL/SQL for Oracle.

2.1.3 Process servers leveraging platform agents

Platform agents are the first category of connectors that can be installed on operating systems to
enable automation. RMJ’s server uses a proprietary protocol to communicate with them. Through
agents, the RMJ platform can perform any task that is technically possible and allowed at the
operating system level.

Platform agents are also secure.

• Each connection is encrypted through transport layer security (TLS) and authenticated using
both the RMJ certificate and a unique per-agent key.
• The connection features hostname verification.
• It includes man-in-the-middle tampering detection.
• Connectivity is locked to a single automation environment during configuration.

Each agent makes its own connection. The agent’s traffic use is designed to occur in short bursts,
typically only a few kilobytes at a time, so it’s fast, safe, efficient and resistant to error.

2.1.4 High Performance

The multi-threaded design, enabled by each process server being associated with a single target
system, means that workload submitted by one process server can be managed independently of the
other process servers. This ensures maximum throughput and performance.

Last year alone, RMJ’s cloud-based service automated more than 250 million activities, and, once
again, exceeded our guaranteed uptime commitments with 99.95% uptime.

The robust architecture allows the dispatcher to hand over tasks to process servers to execute when
all scheduling dependencies are met. RMJ technology includes efficient messaging mechanisms that
work between different components so you can easily run more than one million processes daily.

For more cloud-related security details see chapter 3.4 and Technical_SaaS_overview.pdf.

Page | 6
Security
3.1 General security
RMJ solutions are designed to fit seamlessly into your existing corporate security framework. You can
define and maintain specific user roles and authorities in line with your organization’s security
standards. The solution integrates with Active Directory and other LDAP security environments.

RMJ includes a standard set of typical user roles, each with their own set of privileges:

• Administrator - create objects, schedule tasks, run processes and monitor activities
• Operator - schedule tasks, run processes and monitor activities
• View - monitor activities
• Login - can connect but can only perform tasks granted via custom roles
• No Access - cannot access the environment

The security area in the RMJ Dashboards (see section 5.1.2) provides an overview of all users,
including their access level to each environment and the type of user. Here, you can add a custom or
new user or role and select which level of access you want a user to have within each environment.
Administrators can assign different access levels to other users for the different environments.

Users hold privileges according to user or groups of users; privileges are stored in the central server
database. The availability of menu options and visibility of workload is determined by each user’s
authorization level.

All interfaces (web, mobile and API) require a username and password before a connection can be
established with the central server. User and security administration mechanisms are used for all
types of authentication and authorization.

In addition, the RMJ service ensures that…

• All instances are hardened using a standard image that is stripped back to only the
components required for the specific service.
• The monitoring and management infrastructures are independent of the production servers so
that monitoring is not impacted by workload.
• RMJ administration staff and customer access are separated using separate ports, certificates
and firewall rules.

3.2 Secure operation through firewalls


The RMJ platform deploys a platform agent on remote managed systems where, for example,
operating system tasks or file event management are required. As more organizations run processes
across a global environment, it’s not always practical or secure for all components to be configured as
part of the same network domain.

To securely manage these environments, the platform agent may be located outside a firewall. In the
same way our secure gateway technology works, communication with the agent from the central
server inside the firewall-protected area can be enabled without opening any ports in the firewall to
incoming traffic.

Page | 7
3.3 Authentication using SAML (SSO)
Centralized user access administration in large organizations is very important, since new business
applications are constantly deployed. Having to remember or store user credentials for all these
systems can become a problem. That’s why many companies have introduced single sign-on (SSO)
or smart card mechanisms to allow a single login for a variety of resources. This simplifies user
access as well as tracking for admins. Joiners, movers and leavers can be easily managed through
automated on- or offboarding procedures.

The RMJ service supports this operational model. You can configure it to authenticate against an
external security provider that supports the Security Assertion Markup Language (SAML) standard as
defined by RFC 7522. You can also use SAML to directly integrate with your active directory domain
controller using active directory federation services, or through online middleware providers such as
OneLogin, Ping Identity, and Okta. When using SAML authentication, you enable single sign-on,
which means that machines that are part of the domain can transparently login to the RMJ
environment.

3.4 Cloud security


RMJ uses a multi-layer security environment to prevent unauthorized access that could compromise
the service. RMJ technology is both ISAE 3402 and SSAE 18 certified to support end-to-end service
control. All communication is encrypted and authenticated using TLS 1.2+. Communications with the
user interface and connections to the remote servers and applications on which processes are
automated are secured with HTTPS (also with TLS 1.2+ encryption).

The RMJ solution runs on Amazon Web Services (AWS) infrastructure. AWS is one of the industry’s
largest and most established cloud service providers running in highly secure and resilient
datacenters around the globe. As such, it benefits from all built in AWS security measures. See
https://aws.amazon.com/compliance/ for details on compliance and https://aws.amazon.com/security/
for AWS’s security policies in detail.

RMJ infrastructure within AWS includes firewalls between the Internet and the service where the
provisioning and automation infrastructure for customers’ environments are hosted. The account
management system and the customer environments are hosted on different AWS instances. Only
RMJ operational staff have access to this area. Multiple security layers are in place to prevent
unauthorized access at any time.

The RMJ website is protected by an Extended Validation SSL certificate (EV-SSL). This provides a
deeper level of encryption, more in-depth identity checks and an additional visual indicator of
protection to reduce phishing attacks and other risks.

In addition to technical security implemented around the environment, the RMJ service implements an
on-going policy based on a holistic security approach including:

• Regular internal audit to assess security risks


• Periodic testing of the environment by an external organization to check for vulnerabilities
• Regular coaching of staff in the need for maintaining an appropriate security standard

Please refer to Technical_SaaS_overview.pdf for more information on Cloud and the SaaS
solution.

3.4.1 User access

Customers can only log in with a named account. A specific user at the customer location is
designated as the account administrator during customer account creation. This user can create,
modify and delete additional users for the customer account.

Page | 8
3.4.1.1 Browser authorization

Whenever a user logs in from a browser that they haven’t used before to access the RMJ
environment, they are emailed a link to authorize that browser. Clicking on the link sets a special
browser cookie with the user. Users cannot access the service without this cookie. The only way to
access this cookie is via a link in the email. The link itself times out after a short time. This additional
layer of security means that users may only access their RMJ account from authorized systems using
two-factor authentication that requires them to know their user-specific password and have access to
the appropriate user’s email account.

Separate authorization is required for each browser and for each system. If the authentication cookie
is deleted, browser authorization will be required again, and the RMJ service will send an email to the
user.

Functionality
4.1 Defining automation
RMJ automation brings together three components to execute automated processes: process
definitions, process parameters and event definitions. The basic unit of instructions is a process
definition (see “process definition” in the RMJ Functional Architecture diagram below). A process
definition is a single unit of automation instruction. The data and context required to complete this
process are the process parameters (see “Process context and data”). Information about the timing,
frequency patterns of a process are its event definition (see “Schedule and repetition”).

Figure 4: RMJ Functional Architecture

By separating these three components required to complete a process execution, the RMJ service
gives you the greatest amount of flexibility available in workload automation. The functional architecture
diagram shows how these controls feed directly into the service to provide rapid workload automation.

Page | 9
4.1.1 Processes

To automate processes on one or more servers, users create a process definition for each task; these
can then be arranged into chains that define their dependencies, processing requirements and enable
implementation of logic. These, and all other objects, are defined through the web interface, with
easy-to-use dialogues and wizards, including import wizards and an interactive graphical editor used
for creating chains. RMJ wizards make it easy to import definitions directly from your ERP, web
services, databases and other scheduling tools. Built-in process definitions are readily available; it is
also easy to add your own definitions.

Processes are defined as reusable process definitions that can execute business or operating system
commands, scripts and job control language programs or functions on a target system. RMJ
technology supports many process definition types covering most operating system platforms,
commands for databases or other technologies, or procedures. The solution also allows you to build
out your own automated process definitions using the interface.

To create a process definition, you simply select and define:


• scripting or programming language
• process parameters and parameter constraints
• process instructions or steps
• additional execution controls if required (use of locks, events, runtime limits, file searches
and many more - see also chapter 4.1.1.3)

RMJ technology supports a list of scripting languages so that our solution works with all the
technologies in your enterprise.

Here is an example of the easy-to-use interface that enables you to use scripting language
by simply selecting it from a list. The table below lists the supported scripting languages.

Figure 5: Editing a process definition

Page | 10
SCRIPTING LANGUAGE OPERATING SYSTEM(S) NOTES

BASH / CSH / KSH Linux/Unix

CMD Windows

PS1 Agnostic PowerShell is supported on


Windows, Mac OS X and Linux

VBSCRIPT Windows Visual Basic Script

AS400 AS400 AS/400 Control Language

FTP Agnostic

JCL_FTP Agnostic Job Control Language via FTP

PYTHON Agnostic

REDWOOD SCRIPT (JAVA) Agnostic Redwood Script allows Java


programming and access to
Redwood product APIs

JAVA Agnostic

PERL Agnostic

JDBC Agnostic Database queries or stored


procedures

SQL PLUS Agnostic

GROOVY Agnostic

R Agnostic

SOAP Agnostic

HTTP/REST Agnostic

Page | 11
Process definitions can contain complete operating system commands and process control language
programs or functions directed to appropriate process servers determined by assigned process
definition types. The service supports many process definition types covering most operating system
platforms, database commands, multiple command languages (for example CMD, KSH, Perl, Python
etc.) and Java, to name a few.

4.1.1.1 Process parameters and validation

All process definitions can have parameters. Parameters may include:

• The data that the process receives as inputs


• The data that the process produces as outputs
• Or a combination of both

The RMJ solution enables you to use of one or more parameters in the source code of a process.
With the help of these parameters, you can create generic process definitions that run differently
depending on the parameter values they gather. A process with one or more parameters does not
start until all parameters declared as mandatory have been resolved. Typically, the results are
validated when all the values are present and a process execution is requested.

Here’s an example of how this works. In this case, we would like to start a job on an SAP system.
The template offers a long list of available parameters, divided into four groups. The ability to group
parameters make it easy to find and select the required parameters. Red lines on the left-hand side of
the parameter field indicate that these parameters are required. Parameters can also be pre-filled with
default values, hidden or set to non-editable.

Figure 6: Entering parameters when submitting a process execution

You can make any parameter of any process visible to users, but that’s not always practical.
Typically, when you design a process, the team involved ensures that all process parameters that
change or are different between legal entities, teams or business units, are available at the process
level. That way, one basic process can easily be adapted to support all existing variations. This allows
the business team to change parameters as needed, without having to change the underlying process
flow or even the processes themselves. With RMJ technology, you can use standardized processes

Page | 12
based on your specific needs across the entire enterprise and roll them out in a variety of situations
with just a few changes.

Additionally, you can create calculated parameters that are evaluated at the start of any process
execution. These runtime parameters are supported by the built-in Redwood Expression Language
that can be extended by a custom Redwood Script function. The Redwood Expression Language
enables you to easily make calculations within the RMJ platform. Calculated parameters can be
particularly useful, for example, in doing some time and date arithmetic to calculate the first and last
days of the month. If a process definition contains one or more parameter definitions, they must be
entered either by the user or by another process before the process can be transferred. For each
parameter, you can determine a default value as well. The automation engine automatically checks to
see if any parameter validation rules have been observed each time it runs.

On the runtime level, the RMJ user interface and automation engine evaluate these rules at the time a
process is submitted for execution and as the process runs. Select values are displayed in the user
interface. This way, the solution automatically keeps your values correct before handing a process
over to a system, preventing errors before they impact your activity.

4.1.1.2 Calendar

The process calendar can also be used to start automated workloads. A process calendar is a
combination of a time window and a repeat pattern that sets the repeat interval. The time window
specifies the period in which an activity can start; for example, between 6 and 8 o’clock during the
work week, Monday through Friday, except on public holidays and the repeat pattern interval; for
example, every hour.

The RMJ platform supports operations across multiple time zones. This ensures that any workload
can be submitted using local time at multiple locations with any dependencies honored between
processes correctly. Complications that can happen when different countries make the switch to and
from daylight saving time are also automatically resolved. RMJ technology includes the full set of
standard Olson time zone definitions.

Figure 7: The Process Calendar

Page | 13
The RMJ solution comes with multiple calendars that define major public and religious holiday dates
for many countries around the world. You can also define your own company or implementation-
specific calendars. Here an example: the time window is open from Monday until Thursday, between
8 and 11 am, except on Ash Wednesday, every week, every month and every year.

Figure 8: The Time Window Object

The expected result can be checked immediately. In this example, you can see that Ash Wednesday
will not be taken into account (February 26th).

Figure 9: Opens At - preview

These calendars are perpetual and do not need to be re-defined every year. If you start a process
with a time window, the RMJ automation engine starts the process according to that time window. If a
repeat pattern is used, the engine automatically re-schedules the process after it has completed or
pre-submitted in advance for a certain period or total amount of executions.

Page | 14
4.1.1.3 Execution control and governance

RMJ execution controls allow users to define what should happen before a process begins, while it’s
running or after it’s completed. These functionalities enable you to configure any type of business
logic into an automated process.

Execution Control and Description


Governance Term

Wait Event This defines an event that, when it occurs, allows the process to be
scheduled automatically, or if other execution conditions are met.

Raise Event This is an event that is set when a process is terminated. It can be used to
influence the completion of other processes.

Time Window Restrictions This defines the default time window and time zone or if a given time
window must open at least n milliseconds when the process tries to start

Queue This is the assigned default queue. Can be changed during the process
submission.

Priority This is defined by the user. Highly prioritized processes can be executed
in time before low-priority processes.

Locks These prevent processes from running concurrently.

Output Format This is the standard format for process output. Output type includes PDF,
XML, HTML, CSV, plain text, Java Archive and RMJ archive.

Restart Options These are used to reprocess tasks automatically if the final status is error,
unknown, killed, cancelled or completed. By default, the process is not
started again.

User Account This executes the process under the name of the specified user.

Runtime Limits These define the maximum or minimum duration of a process. The value
can be an absolute value, a user-specific estimate, or based on the
average value of earlier process runs.

Overdue Action This is an option used to limit the timeframe of an activity. If this option is
set, a process gets the status of overdue if it is not started within its time
window or if the RMJ automation engine was not reachable.

Retention - Keep Properties This defines the number of process run versions that are kept in the
database. It can be defined as user-specific, per key parameter value or
system-wide.

Status on Submit This is the status of a process when it starts. A process can be started
with the status held instead of scheduled.

Map Return Code to This allows users to override return codes set through automation and
Completed interpret non-zero return codes as “completed” in any event.

Job File Searches This allows users to set process status and output parameter values
based on the content of output files created by RMJ processes.

Page | 15
4.1.2 Chains

Groups of process definitions that define dependencies and processing requirements are called
chains. Chains allow users to combine multiple process definitions into a defined order of sequential
and parallel processes using steps. These steps can be combined with logical operators, rule-based
steps or other controls that build logic into the chain. In parallel processing, all process calls in a step
are started at the same time. In sequential processing, the automation engine waits until all calls are
finished before the next step is started or to continue in specific situations with the next steps although
certain calls are still running. This can accelerate the entire process when waiting is not required.

Chains allow you to define interdependencies across technologies, departments and other segments
of your enterprise so that you can manage a complete process as understood by the business from
end-to-end. Chains can also be nested together and combined with other chains to automate and
build out repeatable and extensible components for any kind of workflow.

The RMJ platform includes built-in status handlers so that you can choose the required path based on
the status of a process in a chain. You can set preconditions that determine when a certain step or
call should or should not be executed.

A chain includes the following elements, so you can define any process:

• Steps - one or more process calls that can be started in parallel


• Calls – call a process or another chain in a step
• Events - chains processing can be made dependent on events
• Pre-conditions – the state before the chain or step is executed
• Status handlers – this enables you to control the flow of the process after it completes (e.g.
start over, skipping steps, operator prompt, etc.)
• Call parameters - use default values in process parameters or to reference a value in another
step or process

Figure 10: The run-time view showing a chain

Use the run-time view to check progress within a chain.

Page | 16
4.1.2.1 The Chain Editor

The RMJ solution provides an intuitive, drag-and-drop interface to build processes and bring them
together in chains - the chain editor. With it, you can create chains from groups of individual
processes. This feature includes an intuitive graphical drag-and-drop interface. Chains can have the
same execution controls as individual processes.

Figure 11: The Chain Editor

You have several options for control, including:

• Locks – locks prevent the competing start and run of processes — for example, when two or
more processes access the same system resource, such as a tape backup
• Dependencies – processes can be dependent on different things determined by the user
• Calendar – the process only happens in a specific time window
• Other processes – the result of a predecessor process determines when another one runs
• Events – when processes reach a specific status, they can start an event
• Files – an automated event happens when certain files are created or modified
• Queues and load factors – a process can run through a specific queue that is limited by CPU,
paging rate, number of processes or priority level. The process will not start until is below a
certain threshold value.

To automate processes on one or more servers, first create a process definition for each task. These
can then be arranged into chains that define their dependencies, processing requirements and enable
implementation of logic within a group of processes. These and all other objects are defined through
the web interface, with easy-to-use dialogues and wizards, including an interactive graphical editor
used for creating chains.

Chains can change their activity dynamically using status handlers after each step. Use them to skip
steps, request operator intervention through the console, set error conditions, perform recovery steps
and more. You can set single process calls as well as complete steps to be on hold within a running
chain.

Page | 17
The chain editor also provides a playback feature that uses history data to replay an automated
process; this can be used for optimization as described in subsequent sections. Hotspot and critical
path analyse features support you to recognize long-running processes and their impact on the entire
chain run.

Search functions support the user to find specific steps, calls, parameter or parameter values fast.

4.2 Automation life cycle in the enterprise


The service enables simplified management of the lifecycle of automation in your enterprise.
It’s designed to provide essential control with just a few clicks so that you can easily control the
promotion, re-use and versioning of automated workloads.

4.2.1 The three-tiered landscape

Best practices for RMJ automation involve separating the production, or live, environment from
development and test environments. New RMJ objects such as processes or chains are defined
within a development (DEV) environment, fully checked in the test or QA environment before being
put into production (PROD). The RMJ service delivered through the cloud delivers this three-tiered
landscape to every customer.

The process of moving new object definitions through different environments


is known as promotion. The RMJ platform has several tools to help you export
definitions from one environment and import them into another through
defined promotion pathways.

You can create rules for exporting and importing specific objects that are
based on name patterns, applications and object types. Establish pathways
between environments that allow authorized users to promote a set of
processes from one system to another, requiring only a single action.

You can also import rules selectively so that only required objects are imported. The import process
allows different object naming to be applied so that site standard naming conventions can be
maintained. For example, when importing development processes that have users in the DEV
Windows domain, the DEV can automatically be replaced with “TST” for Test. You can also add
governance processes to promotion setting up approval steps within a process or chain or limiting
promotion privileges to only certain people. Promoting the workload to production involves a similar
export from test and import to production, although promotion can be from any RS environment to
another.

4.2.2 Active auditing

The RMJ service includes active auditing for your entire automation environment. It logs the changes
made to any definition object and makes the data accessible directly through a plug-in to the admin
interface.

The amount of audit information that the solution gathers is configurable, with the option of collecting
full sets of data or just information on changes. The user interface enables a secure global view of all
change details – including the changes that were made, by whom, and when – as well as the
differences between two specific versions of an object.

The rollback feature enables any object to be restored to its previous state, enabling controlled and
secure implementation of new and updated process definition versions. Users can implement a
standard rollback at an individual object level, or, a point-in-time rollback can be initiated for the entire
environment. Point-in-time rollbacks allow controlled restoration of all monitored objects to their
respective states at a specific point in time.

Page | 18
Audit information can be archived, enabling secure long-term retention of data. Audit archives are
written in standard XML format so that the information can easily be imported into external data
manipulation or reporting tools.

Figure 12: Object Level Audit Trail and Rollback Capabilities

4.2.3 Automation definition and version control

Every process automatically generates an HTML report which includes a complete audit trail. This
audit trail captures all the details on the steps and activities that were performed in every automated
process. Using these reports, you can keep a detailed record of your process definitions, process
chains and the versions you use.

For each individual step within the entire process, the audit trail includes information on:

• The parameter values that were used to run the process


• The reports that were produced by the automated process
• All details on how people interacted with workflow processes and their decisions/input along
the way
• The RMJ solution also saves the actual report as a part of the audit trail

4.3 Queues
The RMJ platform enables you to configure process servers connected to multiple systems of the
same type for automated, dynamic workload balancing. Using a concept of queues, the technology
can be configured so that specific process servers execute work according to a given queue, or pre-
set order of execution. These process servers are all available to run any task in a queue.

4.3.1 Intelligent load balancing

The RMJ service constantly monitors system resources on all process servers to determine those that
are the least stressed. For example, a production queue may be configured with a group of four Linux
systems. When a production process needs to be executed, the platform monitors system resources
such as CPU load, paging rates and memory utilization on all process servers in the queue. The
process server on which resource usage is lowest will be selected to run the task to balance the
workload across the servers and reduce overall execution time. You can make processes even more
efficient by combining different queues into the same process servers to maximize resource usage.
Additionally, you can set specific load factors per process server when they should get different
weights; for example, when one of the process servers within a group is more powerful than the
others or when one process server should not run more than 5 processes.

Page | 19
Figure 13: How queue management works

Use queues to configure process servers so that they will only accept certain types of workloads. For
example, you can configure one HP-UX server to allow execution of SQL database enquiries but not
operating system commands. Like the central server, RMJ process servers deploy techniques to
ensure high availability. Your processes will start if there is a process server available serving the
queue with the right environment type to execute the process.

Operations
5.1 Running Automation
Once a process has been defined, authorized users can request its execution (also called
submission). After that, the automation engine calculates when the process will run, based on factors
such as date and time, pre-existing processing load, and events - whatever you have specified. The
submitted instance of a process definition is associated with a unique “id”, for monitoring purposes.
After process execution is requested, the solution calculates when it will take place based on factors
such as date and time, predecessor workload and events. The process receives a scheduled status
right up to its actual execution.

The process gets the status “scheduled” until the necessary conditions enabling execution are met.
When this happens, the status is changed to “queued”. The automation engine then verifies that all
dependencies and preconditions for process execution are met (CPU load, paging rate, events, rules,
etc.). Finally, the process starts and changes the status to “running”. This status changes to
“completed” if the process finishes correctly. If an error happens during execution, it gets a status of
“error.”

By default, processes run directly when their start time is reached. You can also put processes on
hold. These processes won’t start until they are manually released by an authorized user.

5.1.1 Automating the workload and processes

The great strength underpinning the RMJ service is its ability to automate business processes based
on different events that occur across the enterprise, so you can coordinate all your processes. This
event-driven capability enables processes to be initiated based on real-time events.

Page | 20
Events are signals for processes to start execution. If a process is made dependent upon one or more
events, it will not execute until those events occur, or, in RMJ terminology, are “raised”. Events can be
defined in the user interface, within scripts and via the API.

The service provides a convenient web-based GUI that requires no additional client software, only a
supported web browser. The interface allows authorized users with access to the internet to perform
all aspects of configuration, management and monitoring to be performed through the connection to
the central server. It enables administrators and operators to manage all RMJ objects, monitor task
and message information, define and manage workload, implement custom code, define events and
establish automated alerting requirements.

Figure 14: The Graphical User Interface

5.1.2 Management dashboards

Figure 15: The RMJ Management Dashboard

The RMJ management dashboard is your gateway to workload automation. Here, you can define
processes, build out chains, control them and execute them using a visual interface. Users log in to
the RMJ service through an authorized web browser. Once logged in, you have access to the
dashboard with features based on user type.

Page | 21
The dashboard allows authorized users to create other users, edit environment settings and view
payment information. All users have access to reference documents in the help section that are
designed to explain configuration and management of the solution. From here, you can connect to
any one of your automation environments - development, test and production. These environments
can be renamed, if required.

The dashboard provides information on key areas to help you manage your RMJ environment. It’s
broken down into the following areas:

• Environments
In the environments area, you get a more detailed view of each environment's (DEV, Test and
PROD) current usage plus views of the number of processes run in each environment during
previous periods. You can also change details for each environment, including the
environment name and recipient email addresses for process and server alerts, by clicking on
the appropriate 'Edit' button.

• Security
The security area shows an overview of all users, including their access level to each
environment and user type. Add a new user and select which level of access the user is to
have for each environment from the drop-down menu.

• Help
This provides access to the comprehensive RMJ help area.

Note that only account administrator level users can see the all areas of the RMJ dashboard.

Page | 22
5.2 Monitoring and forecasting
The web-based user interface provides additional monitoring views to give a central overview of all
processes running on all managed systems in any queue. Users can customize the monitor with
powerful filtering and configuration options and can view and interact with process chains in a
dynamic ‘run time view’. After selecting a process, administrators and operators can view the details
and edit, cancel or hold scheduled/waiting processes, kill running processes and restart completed or
failed processes. The monitor also displays all messages that are sent to operators. The operator can
respond to messages that require a reply.

The process monitor also enables a forecast view, showing which processes are scheduled to run,
when and what events they may depend on.

Figure 18: The Process Monitor with Interactive Process Chain Run Time View

The RMJ service web interface offers different monitor views to create an overview of all running
processes on all process servers and in all queues. Using filters can change this view. After a process
has been selected in the monitor, administrators and operators can view its details and edit them,
cancel or set them to "hold", kill running processes and/or restart processes in final status. The
monitor also includes all messages from the system to the operators. Operators can edit all messages
that require a response.

5.2.1 Issue resolution

Automated error detection, notification and correction features enable lights out operation and ensure
that any exceptions are dealt with in a timely manner, wherever possible, without manual intervention.
These capabilities allow for integration with enterprise systems management and service desk
solutions, such as ServiceNow, while RMJ active monitoring functionality provides an easy-to-use
mechanism for creating alerts for different object types and enables rules-based escalation.

Users may monitor processes for compliance with service levels and exceptions raised when a
service level breach is anticipated, so that SLA breeches can be prevented before they impact the
business.

Page | 23
Figure 19: Monitoring Automation

5.2.2 Reports

The RMJ service has built in reporting capabilities that provide an easy-to-use interface for extracting
historical data from underlying tables. Easy to define filters can be used as well as SQL queries so
that all data stored in the database can be requested. Previews allow users to see the result in
advance to adjust the report as needed. Reports can be created in an ad-hoc manner or scheduled
for creation as part of regular processing. For example, users can create a monthly automatic report
of processes that have ended in error.

Figure 20: Report

Report output can be generated in HTML, XML or CSV format. As part of the definition process,
users can see a preview of the report to ensure that they’ve selected the right data and that all the
necessary information is included. Once generated, reports can be displayed within the platform,
downloaded for export to a separate report management tool such as Excel, emailed or printed.

Page | 24
Conclusion
The RMJ solution is the most flexible service for automating and monitoring business processes.
Redwood’s approach moves organizations from the confines of the daily batch structure of antiquated
schedulers. You define when and how processes happen according to time, events and rules you
create. The RMJ solution combines the best of batch and process-centric automation, and users can
create meaningful reports for business and IT stakeholders.

RMJ as a service gives our customers the lowest possible total cost of ownership for an enterprise-
level automation platform. Our unique pricing removes the restrictions of traditional licensed software
and offers a highly adaptable automation environment that can grow dynamically to meet your needs
quickly. It’s not dependent on a protracted procurement process or complex, expensive and outdated
license model.

For more detailed information, please contact your Redwood representative.

Page | 25
http://www.redwood.com

USA: +1 919 460 5400, 888 425 2235 (Toll Free)

UK: +44 1628 60 1500

Germany: +49 211 530 63 53

The Netherlands: +31 30 635 4555

Copying, distributing, re-creating or any other unauthorized use of the content in this document
without the express written consent of Redwood Software, Inc. is strictly prohibited

© 2020 Redwood Software, Inc. All rights reserved. Reproduction of this document or
any portion thereof without prior written consent is prohibited.

You might also like