DevOps with SAP BTP: Develop & Test
This is an article in a series of blog posts, where I provide more details on the portfolio of DevOps cloud services around SAP BTP.
In this blog post, I will give further insights on the offerings for the Develop & Test phase of SAP’s DevOps portfolio – for an overview of the overall offering and all categories, please see this blog post.
In the Develop & Test phase, your development teams come up with increments in the form of development content (that is, code) and application & configuration content (such as destinations, roles and permissions, SAP Integration Suite iFlow packages, and other app-specific content). As part of the phase, it has to be assured that the developed content is of high quality – for example, verified by transparent results of automated tests, being executed by an automated pipeline, as set up in the previous phase.
For development and testing, SAP Extension Suite offers several approaches and tools (described below) that shall help to come up with meaningful results in SAP environments quickly, where your developers can focus more on business requirements than on technical aspects.
Multitarget Application (MTA) Approach
For handling interdependencies of the software modules and artefacts that your app comprises of, consider to follow the Multitarget Application (MTA) approach that allows to bundle all artefacts of your app into one archive together with a machine-readable description of the contents and its interdependencies.
This allows the deployment infrastructure of the platform to perform an automated deployment of the artefacts comprising your app to the right runtimes and in the right order – which makes an MTA archive an ideal hand-over artifact from development to operation.
Although it is optional, using the MTA approach will help you reduce your efforts for deployment and interdependency handling – also, the MTA approach is the basis for many delivery options outlined in the description of upcoming phases and is therefore integrated in many DevOps tools and processes, such as in SAP Business Application Studio (described next), which also eases the overall handling of your app.
As development environment, consider SAP Business Application Studio, which is a powerful, extensible, web-based tool for full-stack and cloud application development. You can use the IDE to develop, debug, build, test, extend and deploy role-based, consumer-grade apps. SAP Business Application Studio shows a high integration with other best practices and services – for example, it is part of the approach recommended by the SAP Cloud Application Programming model described next.
Alternatively, you could use a local development environment, such as Eclipse or Microsoft’s Visual Studio Code, for which tools/plugins are offered for SAP Extension Suite development.
SAP Cloud Application Programming Model
The SAP Cloud Application Programming Model guides developers along a golden path of best practices and tool recommendations, allowing developers to focus on their domain expertise, while relieving them from tedious technical tasks.
It offers a consistent end-to-end programming model that includes languages, libraries and APIs tailored for full-stack development on SAP Extension Suite. For example, when you define your data model using Core Data and Services (CDS), the framework can take care of an automatic deployment to SAP HANA.
Continuous Integration and Delivery (CI/CD)
As outlined in the previous phase, CI/CD can be a corner stone for increased agility and quality of your development process in a DevOps environment. The corresponding environment set up in the previous phase is now used to perform automated tests of development changes and to provide transparency to your developers on the changes performed by them – which enables them to come up with more qualified increments.
Result of the Develop & Test phase would be a release candidate of your (new or updated) cloud app (in form of a fully-qualified archive).
To propagate this release candidate towards your production environment (so that your end users can start adopting it), continue with Deliver & Change, the next phase in your DevOps adoption journey with SAP BTP.