Analyzing Development Tools and Frameworks

Objectives

After completing this lesson, you will be able to:

  • Analyze development tools.
  • Analyze development frameworks.
  • Introduce the SAP BTP Guidance Framework.

Development Tools

The three developer tools: SAP Business Application Studio, ABAP Development Tools, SAP BTP Cockpit.

There are lots of tools for software development from SAP and from third parties. But, these three tools are very important for the software development lifecycle.

The SAP Business Application Studio is the choice for the future from SAP. It's a modern, flexible, and extensible development environment for building applications for the intelligent, sustainable enterprise.

The ABAP Development Tools (ADT) is a collection of capabilities regarding ABAP programming based on the Eclipse IDE. It can be used for programming ABAP for on-premise purposes and for ABAP codings for the ABAP environment of the SAP BTP.

You can get the ADT from here.

For installing ADT, see this file.

The SAP BTP cockpit is the tool of choice for all administration or operational tasks. Developers deploy their applications on top of the SAP BTP or consume services provided by SAP BTP inside their applications. There are a bunch of services that are interesting for software development. For example:

  • SAP Business Application Studio
  • SAP HANA Cloud
  • Cloud Transport Management
  • Feature Flags Service
  • And many more

The SAP BTP cockpit is one of the most important tools for administrators.

SAP Business Application Studio

Overview

When your company is planning to develop application extensions on the SAP Business Technology Platform (BTP), SAP Business Application Studio (BAS) as an SAP BTP service will be the preferred choice that offers a modern development environment tailored for business application development.

Areas of the SAP Business Application Studio.

The SAP Business Application Studio provides a common development environment for your professional developers and citizen developers independent of the devices and operating systems they are using without missing any tool for modern cloud development, especially specific tools required for business application development in the SAP ecosystem. This is possible due to the flexibility that you have by using SAP Business Application Studio as a web tool from anywhere just with a web browser, but without missing the same development experience as you would have already known from desktop usage as, for example, with Microsoft Visual Studio Code.

By subscribing to the service in your SAP BTP subaccount, you will get, with SAP Business Application Studio, a development environment that offers all required tools for business application development including optimized editors, terminal, debugger and a command line for different use cases. In addition, the user experience is enriched by predefined roles for developers and extension developers as well administrators.

Dev. Spaces on the SAP Business Application Studio.

One of the characteristic features SAP Business Application Studio has are the Dev Spaces which are isolated environments with tailored tools and pre-installed runtimes that simplify and save time in setting up your development environment based on the type of applications that you want to build, for example, SAP Fiori, Full Stack Cloud Application, SAP HANA Native Application and more. Besides that, you can choose additional extensions to enhance your space, due to its open-source nature with the Open VSX Registry that you may also know from Microsoft Visual Studio Code.

SAP Business Application Studio also provides low-code/no-code capabilities that offers the possibility to model your CDS models through a graphical editor or create SAP Fiori Elements applications through a guided procedure. As well as that, there are even more tools available which simplify and accelerate the software development so that with all the other advantages a best development experience is achieved.

We have an own Learning Journey for SAP Business Application Studio with a lot more information you can find here:develop-full-stack-applications-using-productivity-tools-in-sap-business-application-studio

For more information about SAP Business Application Studio, see here.

Learn More

If you want to learn more about the SAP Business Application Studio, you can visit the SAP Community Topic.

Or, you can take a look at the following blog post.

Development Frameworks

Example of Development Frameworks from SAP

Examples of Development Frameworks from SAP

SAP's strategy is to fully unify this developer experience for the business expert, citizen developer, and professional developer.

Today, SAP has several developer tools and frameworks supporting the full stack for UX, Data services, workflows programming models, and much more.

Here is a small extract from the developer tools:

SAP UI Development Toolkit for HTML5 (SAPUI5)

SAP UI Development Toolkit for HTML5 (SAPUI5) is based on the model view controller principle. SAPUI5 is a modern and flexible framework to build web applications for your business needs. In addition, there are tools for planning SAPUI5 apps, testing, icons, and more.

Learn more about SAPUI5.

You can also use OpenUI5, the open source-based UI5 version.

Learn more about OpenUI5: .

Java and Spring

Through the Cloud Foundry or Kyma runtime, you are able to develop Java-based software development projects and operate them directly on SAP BTP. This has the positive effect that your Java project can get integrated easily into your enterprise landsSAP Cloud Application Programming Modele and your application can consume SAP BTP services. In addition, you can also use frameworks like Spring or SAP Cloud Application Programming Model.

Learn more about Spring.

SAP Fiori User Experience

The SAP Fiori design system includes design languages for dedicated technologies: web, native mobile, and conversational. Each design language specifies the look and feel, controls and floor-plans and common functions, and includes guidelines and stencils for designers and developers.

SAP Fiori can be built using many technologies, with SAPUI5 being our reference HTML5 web technology. We have two native mobile design languages: one for iOS and one for Android.

Learn more about User Experience and SAP Fiori in our Learning Journey.

More information about SAP Fiori.

SAP's Mobile Development tools

When you want to create mobile apps, today there are a bunch of technologies that can do that. SAP offerings:

SAP Mobile Development Kit (MDK)
Build multi channel apps based on Javascript. Then, your apps get converted, and they will be a native app for IOS, Android, or even the web.
SAP BTP SDK for iOS
SAP BTP SDK for iOS enables you to quickly develop your own native apps with Swift. The SDK extends the standard Swift Apple iOS frameworks with re-useable SAP content.
SAP BTP SDK for Android

SAP BTP SDK for Android enables you to quickly develop your own native apps using Android Studio and your preferred programming language. In addition, SAP is offering content for Android-based projects such as SAP Fiori Guidelines for Android, or the SAP BTP SDK Wizard for Android, to accelerate your projects.

More information about SAP's Mobile Development Tools: https://www.sap.com/products/technology-platform/developer-tools.html#mobile or here: https://community.sap.com/topics/mobile-technology

ABAP RESTful Application Programming Model

The ABAP RESTful Application Programming Model (RAP) is a framework for developing end-to-end, SAP HANA-optimized OData services, such as Fiori applications, in the ABAP environment. RAP supports creating various types of Fiori applications and publishing Web APIs. It uses technologies like Core Data Services (CDS) for defining detailed data models and a service model infrastructure for creating OData services compliant with the OData protocol. RAP also involves ABAP-based application services to implement custom logic and integrate with SAPUI5-based user interfaces.

RAP projects typically start with data modeling using CDS, where you define the data structures and relationships. Then, you specify the behavior of your data model, determining what operations can be performed, such as creating, reading, updating, and deleting data. This is followed by creating OData services that expose your data model and its capabilities through standardized protocols. These services can then be consumed by various front-end technologies, including SAP Fiori, SAP Build products, or third-party frameworks like React and Angular.

Key components of RAP include:

  • Core Data Services (CDS): A universal language for defining data models.
  • Service Model Infrastructure: Tools for creating OData services.
  • Behavior Definitions: Guidelines for how data models can be manipulated.
  • ABAP-based Application Services: Custom logic implementation using ABAP.

While RAP is tailored for ABAP developers and SAP’s cloud environments, the SAP Cloud Application Programming Model supports a broader range of environments and programming languages, providing a versatile framework for various development needs.

Learn more about the ABAP RESTful Application Programming Model here.

SAP Cloud Application Programming Model

The SAP Cloud Application Programming Model is a comprehensive framework consisting of languages, libraries, and tools designed to develop enterprise applications. It primarily centers around a domain model powered by SAP Core Data Services (CDS). SAP Cloud Application Programming Model can be used for both service and application development, making it a versatile option for various project needs. You can combine a SAP Cloud Application Programming Model project with SAP Fiori projects to create user-friendly interfaces. Additionally, SAP Cloud Application Programming Model supports both Node.js and Java stacks, allowing developers to use the technology best suited to their needs. It facilitates the creation of OData services, which are essential for integrating different systems and providing a standardized approach to data access and manipulation.

SAP Cloud Application Programming Model framework

The main components of SAP Cloud Application Programming Model include:

  • Core Data Services (CDS): A universal modeling language for defining data models and services on a semantic level.
  • SAP Cloud Application Programming Model Services: Supports the creation of services based on these models, providing mechanisms for data access, business logic, and service orchestration.
  • Event-Handlers: Enable the implementation of custom business logic beyond standard CRUD operations.

A typical development workflow in SAP Cloud Application Programming Model include:

  • Project Initialization: Use SAP Cloud Application Programming Model CLI tools to create and configure a new project.
  • Modeling: Define data models and services using CDS.
  • Business Logic Implementation: Write handlers and custom logic in Node.js or Java.
  • Deployment: Deploy the application on the SAP Business Technology Platform in the Cloud Foundry environment or other supported environments.

Cloud Application Programming Model projects integrate easily with various SAP technologies, including SAP Fiori for building user-friendly interfaces, SAP BTP for platform services, and SAP HANA for database services. Developers can use annotations in CDS models to automate the generation of SAP Fiori UIs, simplifying the creation of interactive and consistent user experiences based on OData services. Importantly, the OData services created using SAP Cloud Application Programming Model can be consumed many others frontend or user interface technology beyond SAP Fiori, including SAP Build products and third-party UI frameworks like React, Angular, and Vue.js.

Learn more about SAP Cloud Application Programming Model.

Learn more about SAP HANA CDS.

SAP BTP Guidance Framework

Picture of the guidance framework showing SAP BTP with its five pillars and three lanes for the personas architects, developers, and administrators. These three lanes are filled with small boxes describing the relevant content for these personas.

SAP BTP Guidance Framework is your compass for architecting, implementing, and operating solutions on SAP BTP. It provides a central access point for decision guides, reference architectures, methodologies, and many best practices. The framework consists of the following elements:

  • Decision guides helping you to identify the technology option that best fits your needs
  • Reference architectures that allow you to explore how to architect solutions on SAP BTP with the help of curated solution templates
  • Methodologies that offer a guided approach toward increasing your cloud technology maturity level, covering both technical and organizational aspects
  • Recommendations for different technology domains, helping you to evaluate and choose the right implementation option
  • DevOps principles that enable your development and operations teams to be more efficient

Get started with exploring best practices, grow your skills with learning and enablement offerings for SAP BTP, and engage with us in the SAP Community. Make sure to bookmark the SAP BTP Guidance Framework and keep an eye on it, as it gets updated and enhanced from time to time.

You can access the SAP BTP Guidance Framework here:

SAP BTP Guidance Framework

Key Takeaways Of This Lesson

SAP has a lot of developer tools and frameworks which provide the full development and user experience. The SAP BTP Cockpit is the central entry point for managing your SAP BTP accounts. In addition, there are the ABAP Development Tools for developers who program ABAP in the IDE Eclipse and the SAP Business Application Studio (BAS), which is a powerful and modern development environment in the cloud tailored for efficient development of business applications.

Log in to track your progress & complete quizzes