Introducing Development Tools and Frameworks

Objectives
After completing this lesson, you will be able to:

After completing this lesson, you will be able to:

  • Discover the Development Tools
  • Outline Development Frameworks

Development Tools

Developer Tools

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.

SAP Business Application Studio

SAP Business Application Studio - Landing Screen

When your company is planning to develop extension applications on the SAP Business Technology Platform (BTP), the SAP Business Application Studio is indispensable. Your software developers have different devices and operating systems, but they need a common development environment for their work that runs independently of their technical system setup. The development environment should provide all tools for modern cloud development, especially specific tools required for business application development in the SAP ecosystem. SAP Business Application Studio is a SAP BTP service that offers a modern development environment tailored for business application development. You access the development environment using your internet browser, nevertheless, it provides a desktop like development experience.

If you already know Microsoft Visual Studio Code and you access SAP Business Application Studio for the first time, you might notice many similarities. That is because SAP Business Application Studio is based on an open source IDE, Eclipse Theia, which embraces the Microsoft Visual Studio Code experience.

The development environment offers you all tools required for your business application development, including a command line and editors optimized for different use cases.

When a developer or business user wants to access the SAP Business Application Studio in a subaccount, it is required that in this subaccount the SAP Business Application Studio service is subscribed. In addition to that, the user needs to have the right authorizations. As an administrator, you can dispatch the required Role Collections to the users via the security capabilities of the SAP BTP.

There are three predefined roles for the SAP Business Application Studio:

  • Developer - Develop in SAP Business Application Studio
  • Extension Deployer - Develop and deploy SAP Business Application Studio Extensions
  • Administrator - Administer the SAP Business Application Studio (for example, restart dev spaces, and so on)

Learn more about the authorizations and roles from SAP Business Application Studio: https://help.sap.com/products/SAP%20Business%20Application%20Studio/9d1db9835307451daa8c930fbd9ab264/01e69c53003c4b0a8a64310a3f08867d.html?locale=en-US.

In order to start development with the SAP Business Application Studio, the developer needs at least one dev space they can work in. They can create one by clicking on Create Dev Space.

SAP Business Application Studio - Dev Spaces

The dev spaces are isolated environments in the cloud containing tailored tools and preinstalled runtimes per business scenario, such as SAP Fiori, SAP S/4HANA extensions, Workflow, Mobile, and more. Technically, a dev space is implemented as a Kubernetes Pod with multiple containers providing the tools and extensions. Check out this blog post for more technical information on dev spaces: https://blogs.sap.com/2021/02/18/dev-space-isolation-in-sap-business-application-studio/.

When creating a new dev space, you choose a preconfigured development environment based on the type of application that you want to build.

There are several dev space types available - for example:

  • SAP Fiori
  • Full Stack Cloud Application
  • SAP HANA Native Application
  • And so on

Each dev space type comes with a set of SAP predefined extensions that are required for the respective application scenario. You can select additional extensions to enhance your space. Due to its open-source nature and the close resemblance to Microsoft Visual Studio Code, SAP Business Application Studio also lets you integrate Visual Studio Code-compatible extensions from the Open VSX Registry. It is possible to create multiple dev spaces per user, depending on the chosen application plan.

To learn more about Open VXS Registry, see: https://open-vsx.org/.

Each subaccount has only one subscription. You can choose between two subscription plans.

The following plans are available for subscription:

  • Free - restricted to up to 2 dev spaces, only one space running, and size limit of 4GB
  • Standard - restrictions from the free plan are revoked

A change between the subscription plan from Free to Standard is possible.

Learn more regarding the subscription plans here: https://help.sap.com/products/SAP%20Business%20Application%20Studio/9d1db9835307451daa8c930fbd9ab264/2c72917df87e47c290e061a556d92398.html?locale=en-US.

SAP Business Application Studio - Example Code View

The SAP Business Application Studio brings everything a professional developer needs. It is a full development environment.

The SAP Business Application Studio is the replacement of the SAP Web IDE, if you are familiar with it. The SAP Business Application Studio has a lot capabilities. Here is a small extract:

  • Project Explorer
  • Code Editor
  • Terminal
  • Debugger
  • Code Management Integrations
  • And many more

Low-Code No-Code Capabilities of SAP Business Application Studio

The SAP Business Application Studio is a cloud-based modern development environment – it offers a lot of capabilities for professional developers and citizen developers. The SAP Business Application Studio is:

  • Available on SAP’s multi-cloud environment, in various hyperscalers and regions
  • A seamless end-to-end development environment with a desktop-like experience
  • Spinning up isolated development environments with tailored tools and pre-installed runtimes that simplify and save time in setting up your development environment

The low-code no-code capabilities 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.

For more information about SAP Business Application Studio, see: https://www.sapstore.com/solutions/45318/SAP-Business-Application-Studio---the-evolution-of-SAP-Web-IDE.

For further details about SAP Business Application Studio, see the official product documentation: https://help.sap.com/docs/SAP%20Business%20Application%20Studio?locale=en-US.

Benefits of SAP Business Application Studio

SAP Business Application Studio brings a lot of helpful functionalities and benefits.

Following are the benefits of SAP Business Application Studio at a glance. It provides a managed, preconfigured, hosted environment optimized for SAP application development. It can be centrally administered with tools repositories, systems access, and company policies. It integrates with existing SAP solutions, systems, and services. It provides easy access to Visual Studio Code-compatible extensions from open source Open VSX Registry.

If you want to learn more about the SAP Business Application Studio, you can visit the SAP Community Topic: https://community.sap.com/topics/business-application-studio.

Or, you can take a look at the following blog post: https://blogs.sap.com/2021/01/26/sap-business-application-studio-info-blog-ii/.

Development Frameworks

Extract 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 a number of powerful developer tools and frameworks supporting the full stack for UX, Data services, mobile apps, 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: https://ui5.sap.com.

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

Learn more about OpenUI5: https://openui5.org/.

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 landscape and your application can consume SAP BTP services. In addition, you can use frameworks like Spring or SAP Cloud Application Programming Model, of course.

Learn more about Spring: https://spring.io/

SAP Cloud Application Programming Model

The SAP Cloud Application Programming Model is a superset of languages, libraries, and tools to develop enterprise applications. It is focused on a domain model powered by SAP HANA Core Data Services (CDS). The SAP Cloud Application Programming Model can be used for service development or application development. You can combine a SAP Cloud Application Programming Model project with SAP Fiori projects. In addition, the SAP Cloud Application Programming Model allows you to work with a Node.js or a Java stack, according to your needs.

Learn more about SAP Cloud Application Programming Model: https://cap.cloud.sap/docs/.

Learn more about SAP HANA CDS: https://help.sap.com/viewer/09b6623836854766b682356393c6c416/latest/en-US/b710731496cf43b7ba76e15a928f1a80.html

ABAP RESTful Application Programming Model

The ABAP RESTful Application Programming Model offers developers an efficient way to build enterprise-ready, SAP HANA-optimized, OData-based Fiori UI services and Web APIs in the cloud as well as on-premise. It is based on technologies and frameworks such as ABAP Core Data Services (CDS) for defining semantically rich data models and a service model infrastructure for creating OData services with bindings to an OData protocol and ABAP-based application services for custom logic and SAPUI5-based user interfaces.

Learn more about ABAP RESTful Application Programming Model: https://help.sap.com/viewer/923180ddb98240829d935862025004d6/Cloud/en-US.

Learn more about ABAP CDS: https://help.sap.com/viewer/53b14a3c9f7d4837a9c1f271ee3b24a4/latest/en-US/4ed1f2e06e391014adc9fffe4e204223.html

SAP Mobile Development Kit

You can use the SAP Mobile Development Kit (MDK) to build multi channel apps based on Javascript. Afterward, your apps got converted and they will be a native app for IOS, Android, or even the web. In the same way, you can update your apps easily and quickly and your end users get a new version of your app.

Learn more about SAP Mobile Development Kit: https://developers.sap.com/topics/mobile-development-kit.html

You can find a lot of SAP tools for software development purpose here: https://tools.hana.ondemand.com or more details here: https://www.sap.com/products/technology-platform/developer-tools.html.

Save progress to your learning plan by logging in or creating an account