While many of the generic DevOps tools work seamlessly with SAP solutions and platforms, there is also a wide range of tools and services offered by SAP for DevOps purposes.
DevOps Tools Offered in SAP S/4HANA
SAP S/4HANA is the enterprise resource planning (ERP) business suite that runs on the SAP HANA in-memory database. It’s the successor to SAP ERP and SAP Business Suite, and it’s designed to streamline and simplify business processes while providing real-time insights into business operations.
The main objective behind SAP S/4HANA was to modernize the traditional ERP system and improve its speed and user-friendliness. This was achieved through a simplified data model, a leaner architecture, and a revamped user experience (UX) with the tile-based SAP Fiori UX. SAP S/4HANA incorporates several advanced technologies like AI, machine learning, IoT, and advanced analytics, either through inclusion or integration. With the help of the in-memory database architecture of SAP HANA and integration of advanced technologies, SAP S/4HANA is capable of efficiently resolving complex problems in real time and can process and analyze large volumes of data much faster than previous SAP ERP products.
SAP S/4HANA is designed to be deployed on premise, in the cloud, or in a hybrid environment, and it can be customized to meet the specific needs of an organization.
SAP S/4HANA supports a range of DevOps tools that can be used to streamline the development, testing, deployment, and maintenance of SAP applications. While we can seamlessly use third-party tools like Git, Jenkins, Docker, and the like in SAP S/4HANA, there are also some great tools offered by SAP itself. Let’s take a look at these.
abapGit is an open-source tool used for version control of ABAP development objects in SAP systems. It allows developers to manage ABAP source code in a Git repository, which provides a way to track changes, collaborate with other developers, and manage the development process more efficiently.
abapGit is a client-based tool that’s installed in the SAP system as an ABAP package. It integrates with SAP development tools such as the ABAP editor, the ABAP development workbench, and Change and Transport System (CTS) to enable developers to manage their ABAP source code in Git repositories.
With abapGit, developers can create, push, pull, and merge Git branches, manage Git repositories, and view Git history directly within the SAP system. This allows developers to manage their ABAP source code in the same way they manage other software projects, and it provides a familiar development environment for developers who are already familiar with Git.
SAP Cloud ALM
SAP Cloud ALM is a cloud-based application lifecycle management (ALM) tool designed to help customers manage the entire lifecycle of their SAP applications, from requirements gathering to deployment and beyond. It’s a platform that enables customers to plan, build, test, and operate SAP applications with greater efficiency, consistency, and quality. SAP Cloud ALM includes a range of features and functionalities, including project management, quality assurance, testing, and deployment management. It provides tools and templates to support the implementation of SAP solutions, as well as best practices and guidelines for application development and operations.
Change and Transport System
The Change and Transport System (CTS) facilitates the organization of development projects in the ABAP workbench and Customizing and enables the transportation of changes between SAP systems within the system landscape. It allows developers to create and track changes to SAP applications and transport them through the system landscape. The CTS is an essential part of the SAP development process as it ensures that changes are managed in a structured and controlled manner. The system helps to prevent conflicts between changes made by different developers or teams, and it ensures that only tested and approved changes are transported to the production environment.
Enhanced Change and Transport System
The Enhanced Change and Transport System (CTS+) is an extension of CTS that enables customers to manage transports across non-ABAP systems, such as Java-based systems and databases. CTS+ extends the functionality of the CTS to non-ABAP systems and enables the management of changes and transports across the entire system landscape.
With CTS+, customers can manage changes to both ABAP and non-ABAP systems in a single, integrated system. CTS+ supports the transport of non-ABAP objects, such as Java applications and database objects, and it provides a unified transport management system that works across different technologies.
Git-Enabled Change and Transport System
gCTS allows for the management of ABAP change and transport processes using Git as an external version control system. This feature is available from SAP S/4HANA 1909 onward.
With gCTS, developers can create and manage transport requests as Git branches and use standard Git commands to manage changes, such as committing, merging, and reverting changes. gCTS also supports branching and merging, which enables developers to work on multiple changes simultaneously and merge them into a single transport request.
SAP Solution Manager
SAP Solution Manager is a central management platform designed to support the entire lifecycle of SAP solutions, from implementation to maintenance and operations. It provides a range of tools and features to help customers manage their SAP systems more effectively and efficiently.
The key functions of SAP Solution Manager include project management, application lifecycle management, and IT service management. It provides a centralized location for managing SAP projects and system landscapes and enables customers to streamline processes and reduce costs by providing a range of automation and monitoring tools.
DevOps Tools Offered in SAP Business Technology Platform
SAP BTP provides a range of DevOps tools to support the development and deployment of applications and services on the platform. For the DevOps planning phase, SAP BTP offers the SAP BTP cockpit and the SAP BTP command line interface to setup and manage project landscape. It also offers a great bundle of best practices guides and various sample missions via SAP Discovery Center.
For the develop, build, and test phases, SAP BTP offers some excellent tools and services.
CI/CD in SAP BTP
SAP BTP offers three options for CI/CD:
- SAP Continuous Integration and Delivery, an SAP BTP service mainly suited for SAPcentric use cases. It doesn’t require lots of skills to build a pipeline.
- Project “Piper”, an open-source project and collection of libraries that provides templates for pipelines, best suited for when you want to use a predefined template and have some flexibility.
- Continuous Integration and Delivery Best Practices Guide, a guide for when you want to completely own a CI/CD pipeline with full flexibility.
SAP Business Application Studio
SAP Business Application Studio is a cloud-based development environment provided by SAP as part of SAP BTP. It provides a range of tools and features for developing cloud-based applications and extensions using SAP technologies. SAP Business Application Studio is designed to support a range of programming languages and frameworks, including SAPUI5, SAP Fiori, Node.js, Java, and others. It provides a range of templates and tools for developing applications, including wizards for generating boilerplate code, and supports version control using Git.
SAP Cloud Application Programming Model
SAP Cloud Application Programming Model is a programming model and framework developed by SAP for building cloud-based applications and services. It provides a range of tools and features for developing, testing, and deploying applications on SAP BTP. SAP Cloud Application Programming Model is designed to be flexible and to support a range of different programming languages and frameworks, including Node.js, Java, and others.
SAP Cloud Transport Management
For release and deployment phases, apart from CI/CD services, SAP BTP also provides an excellent option called SAP Cloud Transport Management. SAP Cloud Transport Management is a service provided by SAP as part of SAP BTP for managing the transport of applications and changes between different environments in the cloud. The service enables developers to manage the lifecycles of their applications and transport changes between different systems in a more efficient and streamlined way. This can include transporting changes from development environments to testing and production environments, as well as moving applications between different cloud providers.
Finally, for the operate and monitor phases, in addition to the third-party tools, the following services are available natively on SAP BTP.
SAP Alert Notification Service for SAP BTP
The SAP Alert Notification service is a cloud-based service provided by SAP that enables users to create and manage alerts and notifications for their applications and services running on SAP BTP. With this service, users can set up rules and conditions for triggering alerts and notifications based on events or data changes in their applications. This can include things like low disk space, system failures, security breaches, or other critical events that require immediate attention. The service provides a range of notification channels, such as email, SMS, or mobile push notifications, to ensure that users are notified in a timely and effective manner.
SAP Automation Pilot
SAP Automation Pilot is a tool provided by SAP as part of SAP BTP for automating business processes and tasks. It uses robotic process automation (RPA) technology to automate repetitive and time-consuming tasks, allowing businesses to improve efficiency and productivity. SAP Automation Pilot provides a visual workflow editor that allows users to create automation workflows by dragging and dropping predefined actions and activities. These actions and activities can include tasks such as data entry, file uploads and downloads, report generation, and other activities that can be automated.
Editor’s note: This post has been adapted from a section of the book DevOps with SAP by Raja Gupta and Sandip Jha.