Luiz - Fotolia
SAP's recent release of ABAP in SAP Cloud Platform indicates that ABAP programmers have a future working in SAP programming, albeit one that relies more on DevOps and Agile methodologies to release new features and upgrades to existing systems. Experts see this move as a way to extend SAP S/4HANA, while still enabling developers to utilize their core skill sets with the new methodology.
ABAP hasn't been at the center of innovation for SAP for quite some time, according to Tamas Szirtes, group innovation director at SOA People. But the release of ABAP in SAP Cloud Platform, coupled with new ABAP releases, is bringing new energy to improve ABAP, which, in turn, will offer a lot to developers, he said.
While the ABAP environment in the cloud is built on the new programming model, it's not quite the same ABAP that developers have used for the last couple of decades. Szirtes noted that older development methods aren't supported, and that a DevOps programming model is required to use the new model. Additionally, developers need to ensure they're familiar with ABAP Core Data Services (CDS) and how to connect data to CDS, he added.
"A lot of ABAP developers have been developing code for 10, 12 years," Szirtes said. "They have to learn techniques to work in this environment."
CDS will be critical
SAP has done a reasonably good job presenting its vision for ABAP and where it is going, said Graham Robinson, an independent developer. Nothing new is on the horizon; SAP is still building out its ABAP capabilities in the cloud.
However, CDS will be an important technology to watch. According to Robinson, CDS is the new way of building a data model, which will be the same across any SAP technology. Right now, developers don't need the SAP Cloud Platform to build a data model, but CDS will fundamentally change the way developers build applications.
"That's going to be SAP going forward forever," Robinson said, noting that CDS should be a primary technology focus for developers right now and that it will be the foundation for the foreseeable future.
In terms of how to program, admins should consider object-oriented programming as a programming method. A lot of developers are only writing procedural ABAP that isn't object-oriented. And if their only programming language is ABAP, they may only know how to write that way, Robinson noted.
"People fall back on the common and familiar. In the ABAP world, a lot of people are not using object-oriented concepts," he said.
DevOps model will be the biggest developer disruption
Moving to a DevOps model is the biggest change for traditional ABAP developers, according to Karl Kessler, vice president of product management for the ABAP platform at SAP. The most recent ABAP release was 1902, which came out in February 2019.
Further, the quarterly upgrades to ABAP differ greatly from how SAP has released upgrades in the past. New ABAP development features are being released on the ABAP platform in SAP S/4HANA, not SAP NetWeaver Application Server ABAP, according to Kessler.
The new release model will also require a cultural change in IT organizations, Kessler said. SAP customers have historically built applications using the waterfall model, but with ABAP in SAP Cloud Platform and the upgrades being released in SAP S/4HANA, developers will need to embrace continuous integration and delivery within their organizations.
Expect more whitelisted actions
Kessler is quick to note that SAP has not invented a new ABAP programming language. However, with SAP's investment in its S/4HANA product, the company expects SAP Cloud Platform use to grow, particularly in line-of-business offerings from partners. That's reflected in how ABAP in SAP Cloud Platform is more of a subset of traditional ABAP.
"ABAP has basically been revised and revisited to understand what can be used," Kessler said.
For example, attempting to access full artifacts in the system, such as SAP standard objects, is no longer an option in the cloud. Traditional call screens and screen processing are also not whitelisted. SAP plans to continue working with ABAP to whitelist actions because, at first, ABAP in the cloud was very strict and didn't allow for dynamics, Kessler said.
Version 1905 has been revised so that developers can access their own objects, but not SAP objects. However, developers should not see this as a backdoor, Kessler said. ABAP programmers will need to learn what actions are valid inside the cloud, as they will grow significantly.
"In essence, what we're doing is building a new foundation on very known standards," Kessler said.
For ABAP developers, if they previously used a modern style of ABAP programming that incorporates Fiori and quality services, the move from on premises to the cloud will be much less painful, as long as they check the whitelist before migration.
Ultimately, what this all means for the future of ABAP is that it will definitely be supported and encouraged in new SAP technology, especially S/4HANA. The challenge for developers will be adopting new ways to iterate and release their code, as well as understanding what actions can and can't be used in this new subset of ABAP.