Rapid iterations and SAP products historically haven't been used in the same sentence. But that might change now that SAP has made the ABAP programming language available in the cloud via SAP Cloud Platform ABAP Environment.
In that way, developers can use their existing ABAP skills with DevOps and Agile methodologies, allowing them to deliver applications to the business faster. According to experts, the SAP Cloud Platform ABAP Environment not only provides something developers want, but also demonstrates SAP's commitment to ABAP for the long haul.
ABAP allows customizations
The idea behind ABAP from the beginning was to allow developers to customize SAP ERP systems as needed, which worked well as long as a company didn't need to upgrade or maintain an on-premises system, according to Daniel Lahl, global vice president of product marketing at SAP. But as customers continued using SAP applications, they often ended up with over 3 million lines of custom ABAP code, all of which require extensive regression testing every time SAP releases an update package.
As SAP moved its products into a cloud-based model, where it manages the application stack instead of the customer, the vendor realized it needed to provide a more agile way for developers to create extensions to SAP applications. The SAP Cloud Platform ABAP Environment was introduced at SAP TechEd in 2017, and the platform was made generally available in September 2018, so developers can use their existing skills to enhance SAP applications using ABAP, Lahl said.
Answering developer requests
Graham Robinsonindependent SAP developer
Developers had been asking for ABAP in the cloud, according to Graham Robinson, an independent developer and SAP mentor based in Australia. Large partners and developer organizations, as well as customers with large development teams, wanted to be able to use the same programming language in SAP Cloud Platform. Without ABAP availability in the cloud, these developers would have no future going forward with SAP.
When large customers and large pieces of the SAP ecosystem "make noises, that's when they listen," Robinson said.
SAP Cloud Platform ABAP Environment is the same programming language found in on-premises environments, Robinson explained, but developers don't need to learn any new syntax. However, developers who haven't moved their development skills to a more modern syntax will need to become more comfortable developing for a cloud-based environment, he added.
Bringing DevOps and Agile to SAP
While SAP indicated that the development environment will be the same for ABAP developers, new development skills may be necessary, according to Lahl. Typically, development for SAP applications used the Waterfall methodology, a less iterative approach that takes logical steps. But developing in the cloud, by its very nature, requires DevOps and Agile development skills to foster continuous delivery and continuous integration of services, Lahl noted.
"Developers will be working in a services-based environment, which is different than classic Waterfall," he said. On the upside, developers will not have to manage infrastructure or the runtime environment, allowing them to focus on application development.
Daniel Lahlglobal vice president of product marketing, SAP
Additionally, with DevOps and Agile comes a host of code snippets created by SAP mentors and the ABAP developer community. A git called abapGit already exists with code that ABAP developers can adapt for their own uses. And more code will be shared as more developers move to ABAP in the cloud, Lahl conjectured, adding that "younger developers are comfortable with taking other people's code, putting it into an application and publishing something that they've written that can be picked up by others."
Robinson, however, doesn't believe the development methodology will change how ABAP developers work. "It does change the software logistics cycle," he explained, "but I don't think that's a big issue. I would think that most modern developers would be screaming for their organizations to become more agile." They can build code today and see it in the production environment tomorrow with a DevOps or Agile approach, he noted.
Accentuating the positive
Releasing ABAP capabilities through SAP Cloud Platform ABAP Environment is a generally positive move for the SAP developer community, according to Robinson. "The most important thing is that it shows SAP's commitment to the ABAP language going forward," he said. "It shows that the language is being revamped and modernized and that programming models will be incorporated."
Yet, ABAP in the cloud is still in its early days and not readily accessible to most developers, since running ABAP in the cloud environment can be very costly. The challenge for SAP, therefore, is to make ABAP in the cloud more accessible. "I am looking forward to seeing what SAP product teams use and develop," Robinson said, "and see SAP applications that run on that environment."