As SAP teams are transitioning toward agile delivery, there is room for one key question. Can you realize DevOps when SAP is a large portion of your system landscape?
The simple answer is that you can realize DevOps with SAP and leverage your existing enterprise DevOps tools, methodology, and practices. The good news is that this can be true even for companies with large on-premise, heavily customized SAP ECC ERP solutions. Applying DevOps to these areas takes some additional steps - and may not exactly mirror SAP’s newer cloud-enabled DevOps – but it is still possible.
This blog aims to introduce how you can realize DevOps within a hybrid environment, where SAP on-premise and/or cloud solutions are a core component of your landscape. While I cover topics and approaches that will help those new to this topic, I intend to highlight wider opportunities and considerations for companies that have already embarked on this journey.
Understand the change challenge
However, before you assume this will be simple, you must understand the topic and plan how you want to realize this. There are practical issues that you must consider while dealing with the SAP landscape. So be prepared to refine your organizational approach to development and then decide on a timeline to accommodate the standard DevOps approaches or deviate toward more SAP-specific solutions. This is especially relevant if you still have a large ABAP codebase in your on-premise system and are looking to simplify this technical debt.
But for many companies, the challenge is not about the technical tools, associated applications, or methodologies, but about people and organizational set-up. DevOps implies moving from a large, single development team (with a separate support team) into smaller, cross-skilled sub-teams (guilds, squads, iTribes, and/or product teams). They focus on specific business areas and aim to leverage the full development toolchain to build new solutions and continuously develop them.
Realize DevOps within a hybrid environment
These sub-teams naturally look toward general DevOps practices and wonder how they can realize these approaches when SAP is a core component in their landscape, as they also work with a plethora of other systems and tools.
Here are some initial topics to consider while realizing DevOps within the SAP hybrid environment and other best-of-breed, on-premise, and cloud solutions:
- Understand DevOps and its core principles and methodology
- Organization – First, consider structuring your teams by bringing together the development and support areas, including business owners, thereby enabling a full delivery skill set in one DevOps team. This is often easier said than done and may well change depending on how you budget and approve programs of work. So you must understand that an iterative DevOps delivery is often very different from the older style waterfall development estimation and delivery model. This previously had a separate (and later) hand-off to support. Now, it requires more planning for ongoing development, business differentiation, and innovation capabilities.
- Approach/methodology – Confirming your DevOps approach - and specifically how this will work with the SAP landscape - is a key challenge to address upfront. This can include a pure DevOps approach, consistent across the organization, which can be fully adopted within SAP Business Application Studio cloud platform delivery. However, this requires adopting concepts and usage of different tools to apply this to larger, historic, on-premise SAP solutions using SAP’s own ABAP programming language and development tools. Hence, different tools and approaches are required for some of SAP’s historic development methods - but even in those areas, many of the DevOps principles, such as automated testing and deployment, can still be realized.
- Toolchain – The toolchain covers how you manage requests, codebase, automated testing, and deployment to operational areas. It can be an extensive range of items, but often the first core step is to implement the main critical tools and steps in the software development lifecycle (SDLC) to derive the best benefit, visibility, and control through a common toolchain and methodology. The key aspects of the toolchain are security and resilience, and any tools that support these areas must be included in the delivery method and toolsets.
- Link with agile delivery – The DevOps approach is linked to a more agile methodology. So include DevOps and agile in your review and other updated principles, strategy, or ways of working. Additionally, incorporate wider design methods such as design thinking, cloud-native designs, and updated design patterns that support your DevOps delivery.
- Business and IT application – Know how you expect to apply DevOps principles, both from a business and IT perspective. Ideally, you must identify some early adoption areas to run, operate, and facilitate DevOps delivery within your enterprise.
- Review DevOps delivery within your company
- Current position on the DevOps journey– Understand your company’s current DevOps capability, tools, and approach. Even if your company does not formally deliver in a DevOps style, there still can be teams that already follow some aspects and could provide input into the discussion and/or be part of the early adoptions. These could be from areas such as cloud-first delivery, mobile apps, and teams focusing on richer user experiences and applications. DevOps itself can also cover DevSecOps, AI/MLOps, DataOps, etc., and include a wide range of toolchain items. So it’s worth fully understanding how this fits with a possible SAP-focused approach.
- Identify first steps – Agreeing on your core principles, potential methodology, toolchain, and possible business areas to be adopted with DevOps will bring focus to how DevOps (with an SAP focus) is realized within the company.
- Consider available SAP solutions to realize DevOps delivery
- Identify your core toolchain and methodology- This can be a mix of existing pure DevOps items from leading open solutions and best-of-breed tools and specific items to applications such as SAP (which is covered below). The toolchain and methodology must support your required strategy.
- SAP-specific tools or capabilities– SAP can deliver in a DevOps manner, both with cloud platforms and more historic on-premise solutions. Thus, SAP supports Incident management and/or New Requirements from the Solution Manager system (SolMan) and for more agile delivery then Focused Build and/or ALM (Asset Lifecycle Management) can be considered. In addition, to these main SAP toolchain items there are options for code management (AbapGit), supporting Abap Unit Tests (Aunit tests), the ABAP Test Cockpit (ATC) with associated code quality checking and some specific SAP UI testing (such as eCatt), plus links onto SAP’s Change and Release Management (ChaRM) solutions. Also, don’t assume SAP can’t adopt aspects of DevOps delivery. While you may not know how to deliver SAP solutions to beta sub-groups of users with a fast roll back, it is not impossible! Hence, keep your mind open to new approaches and methods with SAP (ECC through to SAP S/4HANA or parallel solutions such as C/4 or Ariba).
- Overall management and control- There are many options and tools where the status and task coordination can occur across SAP and non-SAP tools via available APIs. Also, your company must decide which tool leads in specific areas of the DevOps lifecycle (i.e., requirements in Snow, Remedy, ServiceNow or Focused Build). HCLTech has experience with a wide range of clients and across these differing toolchain components, from pure SAP-focused solutions to more complex hybrid landscapes. These hybrid environments can integrate the tools via their available APIs and solutions such as HCLTech’s Accelerate for over-arching visibility of the entire delivery pipeline across all DevOps tasks.
- Leverage wider DevOps solutions in hybrid environments
- Hybrid landscape – The coordination with other agile and DevOps toolchain items is an important focus area. You can have a short toolchain and pipeline arranged around a few key tools such as IT ticket systems (Snow, Remedy, SAP’s Focused Build & ALM), code management (Github, BitBucket), functional test automation (HCLs One Test, LoadRunner, Tosca), defect management (Quality Centre, SolMan, Jira), Alert/Monitoring (SAP’s CCMS, Splunk), etc. However, over time, your toolchain and footprint of solutions will grow. If you want to maximize automation and speed of delivery, review your overall landscape and how they work together.
- Updated architectural approach – DevOps is a step toward simplifying your core applications. It allows the commercial off-the-shelf (COTS) items to focus on direct standard functions, identifying your enterprise’s main areas to differentiate and innovate, and whether these should occur in a more side-by-side delivery, often in the cloud- all led by real benefits and returns on investments. The architectural approaches should be via de-coupled and loosely linked solutions. This will help support higher resilience and more fault-tolerant solutions, that can also support more frequent deployments to enable rapid delivery of improved business functions and richer user experiences. To achieve this then solutions have to be de-coupled and/or enable forward and backward compatibility. Additionally, business logic controls need to be via configuration or rules under end users control, rather than within coding, plus all of this has to be realized by low code options with improved automation, and at an increased speed of delivery and change ! Thus your architectural principles, strategy and actual delivery must be clear for the DevOps teams to shift to updated designs as well as delivery methods.
- AI/ML – DevOps (and certainly on the operational side) enable AIOps and options to apply AI/ML to understand logs, issues/faults through user or system behaviors, leading to automation, RPA, and intelligent solutions to address and improve issues found. Hence, wider AI/ML and innovation areas must be considered as this can be one of the underlying drivers and benefits of adopting DevOps.
SAP development has historically been very set in its ways, but many new concepts and methods have emerged over the last decade.This is certainly the case with SAP’s latest realization of business application delivery. As you approach DevOps as a concept, you can first take small initial steps, adopting a few key methods and tools, and then progress to full cloud-native options.
To help customers take this journey, HCLTech has identified typical DevOps principles that can be challenging for those more used to historic SAP approaches. To help address this, we outline tactical and strategic options to overcome these issues. We recommend that organizations fundamentally assess how they will align any current DevOps practices with SAP focus.
We are keen to talk to organizations with large on-premise SAP-focused systems to help them understand how they could transform their delivery capability. If you are specifically interested in how this affects SAP development, please check out my other blogs and download our cloud native eBook .