Product Information
IT Automation: Management of Background Job Processing with SAP Solution Manager
An important capability of efficient and effective operations and a conditio sine qua non for intelligent enterprise and digital transformation is automation management, aka background job management.
The concept and toolsets are by no means new, the author remembers his sessions educating audiences at SAP TechEd a decade ago. Time to reflect recent implementation projects and provide the latest updates.
Background Job Management
Background Job Management enables job requests, planning, execution, and monitoring of IT automation of background jobs in an SAP-centric system and solution landscape. It comprises several sub-processes to establish one standardized, formal, end-to-end operations standard:
- Requesting, changing, and deleting background jobs
- Documenting background jobs
- Scheduling background jobs
- Monitoring and alerting re background jobs
- Analyzing and visualizing background jobs.
To keep total cost of operations low and to run an intelligent enterprise, IT organizations require an efficient and consistent background job management process. This includes at a minimum a central background job documentation including its life cycle management, the integration with Request Management, Event Management, Incident Management, and Scheduling Management (including the technical integration with a special purpose central scheduling software product if available), as well as the capabilities for job monitoring, alerting, reporting, and analytics.
Business Benefits of Background Job Management
Automation of background jobs
- reduces the cost of operations for background job processing (financial perspective): labor costs are reduced i.e. resources are freed for value added activity,
- implements a more effective automation management process (business perspective): job request processing is simplified, and the degree of automation is increased,
- stabilizes the governance of background job management (IT perspective): business disruptions are reduced,
- improves error handling for automation management/job management by mapping to the OCC concept and processes (OCC perspective): time to error resolution is reduced and process steps for error resolution are documented (if not automated).
Process Flow of Background Job Management
The end-to-end process flow as visualized below neither provide details (i.e. supported job types, system types, technology types, etc.) nor process variants (request new/change existing/retire existing). It also does not outline additional tools, functionalities, and capabilities which SAP Solution Manager 7.2 offers to complement background job management, esp. enhanced scheduling support via Gantt Charts and scheduling assistants, improved job monitoring framework extensibility by offering BAdI support for new job types (e.g. ABAP jobs for SaaS, customer specific job types, etc.), Microsoft Excel based Job Document Mass Creation and Maintenance or activation of job controls in the managed systems (redirect users to the central Job Management process when trying to schedule or change jobs using scheduling transactions). It provides a general understanding of this Operations Standard only.
Here’s a recap:
“Job Request” is used in a formal process to request the scheduling of jobs. This sub-process includes approval/rejection, documentation creation/update and monitoring (re-)configuration/ (re-)activation for the background jobs/IT automation. Business users (Run, aka Ops) or project members (Build, aka Dev) create basic or detailed job requests when they want to have a new job scheduled, an existing job changed, or an existing job retired. Job requests undergo an approval workflow, handled by ITSM of choice, i.e. either in SAP Solution Manager 7.2 itself of in any other software product.
“Job Documentation” stores all job relevant information like job description, contact persons, error handling, further attachments and much more in dedicated documents. This sub-process creates and maintains the background job related solution documentation documents and facilitates their life cycle management with built-in status management and validation checks.
As mentioned earlier, the job documentation document is the central artifact(!) of this Operations Standard. It allows the central management and documentation of background processing of your entire system and solution landscape and use this documentation for various purposes. A selection of business and technical properties of background jobs are job steps, corresponding system (aka logical component), business requirements, job priority, responsible organization, scheduling parameters, monitoring and alerting configuration, error-handling procedures/alert reaction procedures, authorizations to run the programs in background etc. Import of background job data from managed systems as well as mass maintenance/creation of job documentation is supported.
“Job Monitoring/Alerting” allows monitoring and alerting of jobs. This sub-process uses metrics like status, duration, start- and end-delay to provide transparency for subject matter experts (SMEs) and the Operations Control Center (OCC). Technically, background jobs are becoming monitored objects configured as monitoring objects in SAP Solution Manager 7.2, which collect job runtime data (metrics, key figures) in your managed systems and reports it back to SAP Solution Manager 7.2.
Background job monitoring and alerting Monitor is integrated with job documentation and recommends covering at least all critical jobs or job chains in the system landscape. For this purpose, 13 job-type specific metrics available to be consumed in monitoring application or alert inbox including notification engine.
“Job Analytics/Dashboards” provide functionality related to monitoring and alerting but represent different use cases. SAP Solution Manager 7.2 offers Dashboard Builder and ST-OST addon Focused Insights for analysis and role-based transparency.
Job analytics aka job reporting allows for the identification of job-related abnormal or suboptimal situations in the system landscape, i.e. the analysis of workload distribution and resource consumption, the occurence of background job cancellations at a specific time, in a specific system, in a specific business process step, etc., and the detection of peak times and low times etc. in order to apply proactive and continuous improvement of the IT automation/background job processing.
All activities are supported by SAP Solution Manager 7.2 with the exception of “Schedule Job/Run Job”. Job Management supports the scheduling from Job Documentation document (including calling supported schedulers seamlessly from within Job Documentation document), but the actual scheduling, release, and management of the job execution is a responsibility of a local (and/or central) scheduler.
More details please find in the SAP Solution Manager 7.2 Media Center. The SAP Solution Manager 7.2 Public Demo System invites interested parties to log on to an SAP Solution Manager 7.2 and try for yourselves.
Implementation Options for Background Job Management
Several implementation options for end-to-end background job management exist at present in SAP Solution Manager 7.2. Some of the options require a very recent Support Package (SP) level, which is always a good practice.
Firstly, we distinguish between an implementation with or without integration with a dedicated central scheduling software system.
- Background Job Management without central scheduler: Background job management information is handed over from SAP Solution Manager directly via interface to the managed SAP systems scheduler, where the job execution is triggered. This option is valid for jobs of type SAP ABAP, and partially valid for SAP BW Process Chains.
- Background Job Management with central scheduler: Background job management information is handed over from SAP Solution Manager to a special-purpose, external, central scheduling software system via Solution Manager Scheduling Enabling (SMSE) interface. Job execution is triggered by the central scheduler in/to the managed system via the respective interface. The presently SAP certified software products please find here.
Secondly, we distinguish between three main options, depending on UI technology (WebDynpro versus Fiori) and complexity (simplified versus comprehensive).
Options 1a/b offer the classic implementation using WebDynpro UI and CRM UI. This is very similar to what has been demonstrated during the last decade at various events. The difference between simple and detailed UI refers to the implemented comprehensiveness of the Job Request and Job Documentation document, i.e. number and type of fields to maintain the properties of the requested/documented object (i.e. the background job).
Option 2 offers a minimalistic implementation, which does not make use of the Request Management functionality (sub-process). Rather, it offers the utilization of central Job Documentation only, with a built-in document status management but w/o a request process management.
Option 3a offers a comprehensive implementation, which is integrated into the request processing (aka processing status management/sub-process) of an ITSM software system of choice and record. The documentation repository (aka the document status management/sub-process) is in SAP Solution Manager 7.2, embedded into its System and Solution Documentation. The overall process is triggered with a request for a new background job/automation, a request to change an existing background job/automation, or the deletion/removal of an existing background job/automation in the ITSM system of choice.
Option 3b offers a comprehensive best practice implementation, which is integrated into the request processing (i.e. processing status management/sub-process) of an ITSM software system of choice and record. The documentation repository (i.e. the document status management/sub-process) is in SAP Solution Manager 7.2, embedded into its System and Solution Documentation. The request process starts in SAP Solution Manager 7.2 as a Job Request form from SAP Fiori Launchpad.
In SAP Solution Manager 7.2, job management and its feature and functions are implemented through a guided procedure in SAP Solution Manager’s Configuration app. The implementation requires several design decisions and numerous integration aspects affecting various business and IT areas, so a well-planned project-based implementation approach is recommended (either traditionally structured or agile). The simple example process below shows a minimum implementation in BPMN notation.
Stay tuned for further articles detailing specific aspects of job/automation management which the author plans in near future.
Further Information
SAP Solution Manager 7.2 Public Demo System
SAP Solution Manager 7.2 Media Center
SAP Intelligent Robotic Process Automation
SAP ICC Scenario SAP Solution Manager Scheduling Integration
SAP ICC Scenario SAP Solution Manager Scheduling Integration – Certified Software Products (ICC)
Hello Robin,
Is there a way we can automate the jobs which are failed due to system failure or a way from where we can trigger failed jobs of managed system directly form SolMan?
Regards,
Phani.
Hello Phani, this is an excellent question indeed. If you allow me, I provide a couple of perspectives.
Yes, the restart of background jobs (failed background job/process automation) is an important aspect of every event management process - be it via manual restart or automatic (re-)trigger. For this to happen, there has to be an event/alert to indicate the background job to have failed (or any other relevant metric) in the managed system. These job alerts can be configured and activated for example in managing system SAP Solution Manager (we recommend a configuration based on Solution Documentation – Job Documentation).
If a background job has cancelled in your managed system landscape and a corresponding SAP Solution Manager alert is created, you have several options to automate the alert reaction.
Classic SAP Solution Manager Alert Autoreaction
SAP Solution Manager offers an enhancement spot (business add-in, aka BAdI) you can use to create a program or script which can be configured to be called anytime a job cancellation alert occurs. The program or script would then re-execute the failed job or jobs (depending on the implementation). This approach is quite flexible and allows to be used for SAP and non-SAP background jobs alike, but you had to implement the actual program or script to re-execute the background job. The alerting and calling that program or script is executed by SAP Solution Manager MAI.
Find further information here: https://support.sap.com/en/alm/solution-manager/expert-portal/alert-consumer-badi-interface.html
Side remark: Theoretically and practically you can wrap the above alert reaction into an SAP Solution Manager Guided Procedure. However, the automation of a Guided Procedure requires enhancement as well because the SAP Guided Procedure Framework has not been designed with completely unattended processing in mind. SAP Guided Procedures work better for attended mode.
Modern Robotic Process Automation
If you have an RPA software at your disposal you can use the same to perform the background job re-execution in unattended mode if you so wish. In an event management use case, you would trigger this unattended background job re-processing by a corresponding SAP Solution Manager background job alert (or any other managing system which provides reliable background job alerts, for that matter…). This approach is even more flexible and allows for many SAP and non-SAP use cases. You have to implement the actual program or script to re-execute the background job, but generally the RPA software assists you doing so - by offering an authoring environment, i.e. an IDE for designing the attended and unattended automation cases. The alerting on job execution as well as the providing of job documentation is executed by SAP Solution Manager monitoring and alerting infrastructure (MAI).
Find further information here: https://blogs.sap.com/2021/03/29/sap-intelligent-operations-control-center-topics-and-examples-part-i/ -> Chapter: Unattended (automated) event/alert reaction processing. Just think “Background Job Cancelled” instead of “File System Full”.
Side remark: SAP Solution Manager in itself is not a full-fledged RPA software product. So, you want to combine it with such an RPA software system/service.
Background Job Scheduling Software
We cannot withhold the topic of dedicated job scheduling software. SAP Solution Manager offers end-to-end job management as outlined in this article, but it is not a full-fledged, general-purpose background job scheduler. So, in case you have a central job scheduling software system or service at your disposal, you probably want to make the background job re-processing upon failure/cancellation a responsibility of the central job scheduler. In such a case, SAP Solution Manager complements the central job scheduler (and can be technically integrated with the latter) by providing job governance (request management) and job documentation. Job monitoring and alerting can be the responsibility of SAP Solution Manager or central job scheduler, and the same can be said for background job analytics/reporting and dashboards/visualization. The actual scheduling and triggering the execution of background jobs in the managed systems is however done by the central job scheduler.
Find further information here:
Please let me know further questions. Thank you and best regards.