Trying to stop the spinning of terms in my head – work in progress
Even before SAP TechEd 2021 got underway, my head had been spinning with all the different terms related to programming tools, services and platforms and I had actually started a “sticky note” collection with many such terms. My hope was to try and bring some order to them as I get easily confused and have a hard time remembering what is needed for which task and why. So, as TechEd got underway, and while watching sessions and discussions on Channel 1, I started a thread in the new TechEd group to try and get some help. As I’m not sure how much this group will get visited now that TechEd is done and dusted for the year, I decided to reproduce the thread here as a blog post. So please bear with me as this will most likely evolve over time with your help!
Here is what I started out with, some terms placed somewhere on a sheet of virtual paper without any kind of order and haphazard coloring:
The terms are: Process, DevOps, RISE with SAP, Tools, Eclipse, WebIDE, BTP, On Premise, Cloud, SAP Analytics Cloud, Fiori, Cloud Foundry, SAP Fiori Elements, AMDP, SAP Fiori Apps, CDS-Views, Steampunk, Kubernetes, Kyma Runtime, BOPF, BRF+, SAP Data Intelligence, RAP, SEGW, AppGyver
It didn’t take long for even more sticky notes to make an appearance on the chart and some reshuffling to take place. But I wasn’t getting too much closer yet as far as “calling things to order” was concerned!
Thomas Jung to the rescue!
Craig Cmehil had noticed my “plea for help” and Thomas Jung provided an in-depth reply even while very busy with his many appearances throughout TechEd and I was really sorry that I could only give him one “Kudo” for his efforts!
List of definitions (slightly adapted and re-ordered)
Development tools and Objects
Eclipse – that’s an open source foundation to build development tools. SAP in the past (HANA, Fiori, etc) has used Eclipse as the starting point to build our own development tools as extensions that sit within Eclipse. For example HANA Studio. The largest solution still using Eclipse in the SAP context is of course the ABAP Development Tools for Eclipse. ABAP tooling will remain based in Eclipse while most other tooling (CAP, Fiori, HANA native) have moved to browser based or VSCode based foundation to development tooling. ADT is used for both on premise and cloud based development.
WebIDE – SAP has built several development tools with slight variants named Web IDE. Primarily we had SAP Web IDE Full stack (for development on SAP BTP) and SAP Web IDE for SAP HANA (for HANA on premise development – specifically HDI and XSA based development). But SAP is no longer investing heavily in these Web IDE named browser based tooling; instead focusing on Business Application Studio (BAS) and building our tooling as Extensions that can largely also be used in VSCode as well.
AMDP – ABAP Managed Database Procedures. A special feature of ABAP to allow you to call HANA Stored Procedures via an ABAP Class method. Available in both on premise and cloud based versions of HANA and enables code pushdown and access to HANA specific language features (SQLScript) that wouldn’t otherwise be available in ABAP CDS or openSQL.
CDS-Views – Core Data Services. A syntax available in both ABAP core (on premise and Cloud) and within HANA Native/HANA Cloud and SAP Cloud Application Programming Model. In both ABAP and CAP/HANA native versions; this is a syntax in this context to help with the creation of pushdown optimized database views (and HANA optimized as well).
BRF+ – Business Rules Framework + — ABAP based decision table and end user maintainable reusable rules.
SEGW – ABAP Transaction Code for the ABAP Gateway Builder. The way that we created OData services on the ABAP stack before we had RAP.
AppGyver – Recent acquisition that SAP made. The offering is a no-code development tool for creating iOS, Android and browser based user interfaces. AppGyver
Processes, Programs and (Service) Offerings
DevOps – Process/Idea based often built upon open source tools. The general idea is bluring the lines of what are traditional developer tasks and what are basis or system admin tasks. For example in the ABAP context gCTS and ABAPGit are both tools that would allow you to set up a DevOps process for moving code changes through your landscape. Can be used in both on premise and cloud although it probably became popular in the context of the cloud where scale and frequency of small code changes is higher.
RISE with SAP – This is an SAP program or initiative that includes special licensing, agreements with partners, accelerators, and other tools to help customers speed up their move to S/4HANA and in particular S/4HANA Cloud.
Systems and Tools
Fiori – Market name for SAP’s design system. Fiori itself isn’t exactly a technology because it can usually be implemented via SAPUI5 or Fiori Fundamentals. But Fiori defines the consistent user experience and visual language SAP Fiori | User Experience and Apps
SAP Fiori Apps – the brand name for SAP delivered user interfaces that are built using Fiori guidelines and visual interface.
SAP Data Intelligence – tool to help transform, connect, enrich and generally move data around your landscape – SAP Data Intelligence Cloud | Machine Learning and Data Integration Services
Applications and programming models
SAP Fiori Elements – Fiori Elements are applications built using the reusable Fiori floorplans and designed and shaped by the developer largely using annotations. Fiori Elements applications can be built and ran in both Cloud and On Premise and while you can use most any technology to implement them; modern Fiori Elements apps are often created using either SAP Cloud Application Programming Model or ABAP RESTful Application Programming Model
BOPF – ABAP Business Object Processing Framework. A key technology for creating Fiori based apps on the ABAP Runtime although now it is largely replaced by ABAP RESTFul Application Programming Model moving forward. Still available in S/4 on premise; but cloud based extensions should really use RAP instead. Business Object Processing Framework | SAP Community
RAP – ABAP RESTful Application Programming Model – next general ABAP based programming model for usage of CDS and Annotations to create OData Services and Fiori Elements based UIs. Available in both on premise S/4, SAP BTP, and embedded within S/4HANA Cloud (embedded Steampunk) ABAP RESTful Application Programming Model – SAP Help Portal.
CAP – The SAP Cloud Application Programming Model is a framework of languages, libraries, and tools for building enterprise-grade services and applications. It guides developers along a ‘golden path’ of proven best practices and a great wealth of out-of-the-box solutions to recurring tasks.
Platforms and Runtime (on premise)
NetWeaver – SAP NetWeaver is a software stack for many of SAP SE’s applications. The SAP NetWeaver Application Server, sometimes referred to as WebAS, is the runtime environment for SAP on premise applications. (from Wikipedia).
Platforms and Runtime (cloud)
BTP – SAP Business Technology Platform. Those from the NetWeaver days might think of BTP as the next generation, cloud based version of NetWeaver. It is the breath of SAP’s technology offerings and components offered in the Cloud. It has multiple runtime options – Kyma, Cloud Foundry and ABAP being the main ones.
SAP Analytics Cloud – SAP’s cloud based offering for reporting, analysis, planning. Much of what we did on premise with BW Reporting or BOBJ is now within the scope of Analytics Cloud. Blog post about SAP Analytics Cloud.
Cloud Foundry – one of the runtimes offered in SAP BTP. It is a container based microservice runtime/application platform. Cloud Foundry – Open Source Cloud Native Application Delivery We offer standard, open source Cloud Foundry runtime on SAP BTP and SAP created it’s own implementation of a subset of the Cloud Foundry APIs for on premise that we call XSA or SAP HANA extended application services, advanced model (the official name).
Steampunk – unofficial name for SAP BTP, ABAP Environment. Basically the Cloud, hosted version of the ABAP runtime that you can use to write side by side extensions for cloud and on premise S/4 systems but running on BTP in the cloud. Embedded Steampunk is a version of the SAP BTP, ABAP Environment. Blog post by Harald Kuck about Steampunk.
Kubernetes – Another open standard for cloud based managed workloads and application runtime. See Kyma in the next line as well. What is Kubernetes? | Kubernetes
Kyma Runtime – SAP’s open source project that collects many other open source tools and projects that extend Kubernetes. Is the main Kubernetes based runtime offered as part of SAP BTP. SAP Discovery Center – Kyma Runtime (cloud.sap) and Kyma – An easy way to extend enterprise applications on Kubernetes. (kyma-project.io)
Based on Thomas’ explanations, I reshuffled the sticky notes and came up with some terms to be used as column headers, randomly assigned colors to the columns and put the sticky notes where I figured they fit best. This is how it looks like right now:
So, it’s now “ordered” but I’m fairly sure that it’s not yet correct by any stretch of the imagination! I’d therefore be interested to know how close – or not – to a complete and correct picture my current compilation is. Please chime in with suggestions of what needs to be added or moved and re-colored. Or, what your suggestions for better column headings are. I’d also like to add links to good explanations for each of the terms above but haven’t gotten around to searching for them yet. If you have suggestions for those, I’m all ears as well.
I’ll collect your feedback and will update this blog post accordingly, most likely adding more versions of the sticky note collection as it evolves.
Thanks much and cheers for now