INTERNAL
Tim Back, Chief Development Architect, Application Development, Automation and Integration, SAP BTP
02.05.2023
The Universe of BTP in a Nutshell
Pro Code based Development with SAP BTP
Business Technology Platform Overview
3
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Build and innovate
App Dev
Connect and simplify
Integration
Give data purpose
Data and Analytics
Infuse intelligence
AI
Optimize and automate
Automation
Public
4
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
PRO-DEVELOPER
TOOLS
SAP BTP products can support your journey
SAP Business Application
Studio
SAP Cloud
Application
Programming Model
Java, JS
ABAP RESTful
Application
Programming Model
ABAP
API & Event Integration
(Cloud & Hybrid)
SAP INTEGRATION
SUITE
API Management
Integration Advisor
Trading Partner Management
SAP-Optimized Frameworks
& Services
SAP Build Apps
SAP Build Process Automation
SAP Build Work Zone
SAP BUILD
Pre-built content: API Business Hub
SAP Business Technology Platform
Public
SAPUI5 / Fiori elements
5
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Consume
Build and
Innovate
Business
User
LoB Expert,
Business
Analyst
Developer,
IT Admin
AIIntegration Data and Analytics
SAP Build Apps
Start Mobile Start
Digital
Experience
AutomationApp Dev
Business
Application Studio
With Low-Code With Pro-code Development
Document
Management Service
Mobile
Services
UI Technologies:
UI5, Web
Components
Cloud Application
Programming
Model (CAP)
RESTful ABAP
Application
Programming Model
Cloud Foundry
Kyma ABAP
Built-in runtime:
Visual Cloud
Functions
Services
Unified
dev experience
Application
Frameworks
Runtimes
Unified
dev experience
SAP Build Work Zone
Ecosystem and Marketplace
Business Technology Platform
SAP content Third-party content Custom-built content Community and technical forum
SAP BTP for Application Development
Public
6
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Integrated Tools and Frameworks for full-stack App Development on BTP
SAP Business Application Studio is the preferred development environment to maximize productivity on BTP
for applications and extensions
SAP Cloud Application Programming Model provides domain-driven modelling powered by CDS
SAP Mobile Services can also be used for native development in XCode and Android Studio with SAP
BTP SDKs for iOS and Android
7
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building Blocks of BTP Applications
UI5 Fiori Elements
CDS
CAP (Node.js / Java)
OData
HANA Cloud
SQL
Data Warehouse Cloud
Work Zone Standard
UI5 Fiori Elements
ABAP Cloud (Steampunk)
RAP (ABAP)
CDS
OData
HANA Cloud
SQL
Application Services
Enterprise Qualities and Standards
Kyma / Cloud Foundry
SAP Standard Technologies
Client Side / UI Services
9
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Client Side / UI Services
Quickly build enterprise-ready applications based on opinionated technologies from SAP
10
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
UI technology option from SAP
Reuse UI technologies
Inner source UI technology options from SAP
Metadata-driven application development
Metrics, colors, logo, and fonts
UI element visual design
UI element behavior
Programming model adaptation
Business application development
Common CSS
*NEW*
Theming base content
Fundamental
library styles
SAP Web Components
(powered by UI5 Web Components)
SAPUI5
Fundamental
library NGX
UI5 Web
Components
for React
SAP Fiori
elements
Micro front-end
development
Luigi
Business application developer
2
Framework / Web application developer
1
Micro front-end developer
3
1. Works with HTML/CSS, using component tool kits, free framework choice, special requirements, limited lifetime of apps
2. Works with UI components, using app framework, built-in connectivity, preconfigured UI flexibility, fulfill enterprise qualities
3. Works with multiple UI components, built in different technologies and put together in a micro front-end with Luigi
A tailored pro-code approach for everybody!
Client Side / UI Services
SAP Fiori elements
12
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
SAP Fiori elements ensures consistent layout, navigation
Object page
Most use cases in the enterprise space involve providing an overview, lists of business objects
and management of these business objects.
Analytical list page
Worklist page
Provide overview on business
relevant data
Work on a list of business
objects
Manage individual business
objects
List report page
Overview page
Flexible Column Layout
13
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
SAP Fiori elements boosts SAPUI5 development efficiency
Developer
Productivity
Focus on business logic
and back-end services
Write less UI code
Reduce development and
maintenance costs
UX
Consistency
Comply with the latest SAP
Fiori design specification
Deliver a centrally managed
user experience
Include uniform fonts, colors,
layout, navigation, actions,
search, filtering, and more
Enterprise
Readiness
Deliver high quality SAPUI5
applications to end-users
Ensure stable, optimized
UI code out of the box
Include standard enterprise
features (accessibility, mobile,
translation support, )
Client Side / UI Services
SAPUI5 and SAP Web Components
15
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
SAPUI5 is an HTML5 framework for creating cross-platform,
enterprise-grade applications
Consistent UX: SAPUI5 enables the SAP Fiori design system evolution
across SAP solutions (and beyond).
Anywhere use: SAPUI5 allows a single, responsive app implementation
for all browsers, platforms, and devices.
Hundreds of enterprise UI elements to build professional UIs: UI5 Web
Components extend UI5 to all Web technology stacks.
Powerful extension options: You can adapt SAP standard apps and
customize UIs without coding.
Flexible tools for any developer: SAPUI5 comes with tools to efficiently
build, test, and deploy apps, including SAP Business Application Studio,
which is our recommended IDE.
Innovations: SAPUI5 brings a separation of apps and framework to
centrally innovate while staying upgrade compatible.
Open source: SAPUI5 qualities are available as OpenUI5.
Building modern Web applications with SAPUI5 and Web components
Video: What is SAPUI5?
16
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
UI5 Web Components in a nutshell
17
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Modern ES language features for SAPUI5
Support in SAP Business Application
Studio and Visual Studio Code
Transpiled into SAPUI5 runtime code
TypeScript as a fully optional layer on top
TypeScript for SAPUI5: Professional application development
TS ES
18
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Flexible programming model blends SAP Fiori elements and SAPUI5 freestyle
Standard
floor
plans
SAPUI5 freestyle
JavaScript framework
and UI library
Custom
layout
Custom
layout*
+
standard
building blocks
Standard
floor plans
+
custom
artifacts*
Flexible programming model
SAP Fiori elements
Metadata-driven
development using
annotations
*Leveraging standard building blocks and/or SAPUI5 controls and custom code
Efficiency Flexibility
Developers have a continuum of options instead of an either/or decision
The Backend
Cloud Application Programming Model
(CAP)
20
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
100+ internal stakeholders
100+ customers and partners
500+ blogs featuring SAP Cloud
Application Programming Model
All growing steadily
NPM downloads
SAP Cloud Application
Programming Model is the most
adopted framework in SAP (non-
ABAP hemisphere).
Productivity tools for a comprehensive pro-code offering on SAP BTP
Quickly build enterprise-ready applications based on opinionated technologies from SAP
21
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
CAP Cloud Application Programming Model
Features Overview
Services
Data
UIs
Services
Data
UIs
Services
Data
UIs
Serving Fiori UIs
OData v4+v2
Draft support
$batch support
Providing Services
Service Definitions in CDS
Generic Providers
Event Handlers
Synchronous and Asynchronous
Consuming Services
Import from API Hub, S/4, SFSF, …
Mashup with local services
Uniform, Protocol-agnostic APIs
Synchronous and Asynchronous
Platform and Database Support
Deplyoment to BTP Cloud Foundry and Kyma
Schema evolution
HANA (prod) and sqlite (dev)
(PostgreSQL upcomming)
22
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
CAP Modeling through CDS: Define what, not how
Service Definition creating
projections on the data model
Data Model Definition creating
or importing entities
23
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Describe the “what” and not the “how” via CDS
Initialize CAP Projects via cds init
Provides only the bare bone things that you need. No unnecessary files
“Grow as you go”: cds add
Add additional parts only when you actually need them
HANA support
Deployment (mta, helm)
sample / mock data
Fast development cycles with cds watch
Automatic spin up of SQLite locally, automatic switch to HANA after deployment
Includes UIs from UI5 and Fiori elements
Mock data for remote service calls
Dummy authorizations
Optionally with hybrid mode (e.g. CAP app local, DB HANA)
CAP basics
24
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Safeguarded investments
Minimized lock-ins to platform,
protocols, and databases
Higher-level APIs, shielding users from
utterly technical disciplines
Accelerated development
Jump-start: x hrs 1 min
Turnaround: x min 1 sec
First app: x days 25 min
Grow-as-you-go with mocked cloud
environment Minimized costs
Cloud scale by design
Services and event-centric paradigm
Memory ~100 mb
Response times ~10 ms
Requests ~5.000 (up to 50k)
Proven support for best practices
Served preconfigured by generic
runtimes, eliminating recurring tasks
Clear guidance along golden paths
Minimized code → raised quality
(100s 010 lines of code)
Focus on domain
What, not how through CDS
Capturing intent in close collaboration of
developers and domain experts
Rapid prototyping for reqs analysis
(from months days)
Intrinsic extensibility
Customizations by SaaS tenants
Verticalization by partners
Feature-toggled extensions
by SaaS providers
Key benefits and value propositions by numbers
SAP Business Application Studio
The high-productivity approach for
professional developers
26
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
SAP Business Application Studio, the preferred IDE to develop applications and extensions on SAP BTP
Core technologies from SAP in one development environment with all necessary design-time and runtime services
Fully flexible developer experience from application composition through graphical productivity tools to command line;
code-exit possible at any time
Optimal integration to SAP data for consumption and deployment (cloud and on premise)
Provision of content, support for best practices, and delivery of tools for guiding developers
Complement to ABAP and SAP BTP, Kyma runtime for UI and mobile development
Productivity tools for a comprehensive pro-code offering on SAP BTP
Quickly build enterprise-ready applications based on opinionated technologies from SAP
27
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
SAP Business Application
Studio: The high-productivity
approach for professional
developers
Scale your development and build smarter
enterprise apps
Visual development environment, tailored for
efficient development of business applications for
the Intelligent Enterprise
Intuitive path from visual tools to professional
development tools
Modern and intuitive Web user interface
Simplified, faster setup of the development
environment
Tight integration with SAP services, technologies,
and systems
Accelerated time to market with high-productivity
development tools
Based on industry best-of-breed IDE and tools,
providing full, tool-independent, developer flexibility
Highly adopted SAP BTP service, across all
channels, with thousands of paying customers
Serves as the official tool of choice for thousands
of internal SAP developers
28
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Visual overview of all
assets of a project
combining
CAP data models and
services
Fiori elements
applications
Mobile Development
(MDK) Applications
External Services like
S/4 HANA APIs
Simplify Application Development for Professional Developers
Enhanced development environment and user experience
One Click Deployment to the BTP by
generating all the necessary configurations
Preview for fast
development
turnaround times
29
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Visual editors provide high productivity but
create standard code with 0 additional meta data
Simplify Application Development for Professional Developers
Visual Data Modeling: Switch from visual tools to textual editors
Textual code editors to allow developers to
continue with normal coding for the last mile
of the app
Switch possible for all editors:
CDS/CAP, Fior elements, MDK +
Deployment Config
30
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Application Business Logic stub generators
for CAP
Simplify Application Development for Professional Developers
Application Business Logic: CAP Handlers
31
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Fiori elements apps
responsive, works on all
devices but optimized for
Desktop
Simplify Application Development for Professional Developers
Choice of UI Application types in Productivity Perspective: Fiori elements and Mobile Development Kit
MDK apps responsive,
works on all devices but
optimized for Mobile
Page Map for Fiori elements apps no manual writing of
annotations, lots of configs e.g. for creating value helps
32
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Service Center Discovery and Connectivity to External Services
Service center provides the developer a single entry point for
discovery and consumption of SAP APIs, originating from any
SAP data sources (Destinations to S/4 HANA, Ariba, C4C, API
Hub, SAP API Hub enterprise)
33
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
BAS Platform
Get VS Code’s latest
and greatest and
better performance
BAS extensibility
100% VSCode
compatibility,
community extensions
working out of the box
Business
Application Studio
comes as a “turn
keysolution with all
the necessary
extensions installed at
the developers’
fingertips
SAP Business Application Studio includes
Visual Studio code compatibility powered by
Microsoft Code OSS Client
Embedded Analytics
Business Application Studio, HANA
Cloud, CAP, Fiori elements
35
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
CAP and Fiori emenents support
analytical content based on OData
Service analytical capabilities
Based on just annotations for
Data model (dimensions and measures)
UI configuration
Free of charge for any customer
Used to be a completely new floorplan
(Analytical List Page, ALP), now just an
additional feature in any List Report
Object Page floorplan, so available to a
large amount of applications
Only supports basic analyticsthat
OData supports
No multi-dimensional analytics, like Pivot
tables
Embedded Analytics in Fiori elements with OData
CAP
Fiori elements
HANA
OData
SQL
36
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
but also work in an editor thatIn order to add basic embedded analytics
in your list application, you can
write CDS annotations like this to model
dimensions and measures
Analytical Charts in Your List Application
And like this to
configure the chart
underneath the list
Lets you add a chart
and its configuration
Lets you define
dimensions and
measures next to
your data model
properties
37
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
New: Design of the Calcview from CDS Entities Without Prior Deployment
Design
Preview
BTP
HANA
Deployment
HTML5 Repo
CF Node.js
Fiori elements
App
CAP Service
BAS
CDS UI
Annotations
CDS
Fiori elements
App
SQLite
Calcview
CAP Service
meta data
deploy
deploy
deploy
deploy
create
create
meta data
deploy
SAP
Analytics
Cloud
FE/Freestyle
UI5 App
OData
InA
Tables/Views
Calcviews
DevOps with BTP
39
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Finding the right approach and toolset can be a
long, complex and challenging task
Manifold toolchain options and variants
Where to find a good starting point taking you where
you are today?
How to reduce cognitive load of your teams and avoid
overburdening them right from the start?
Especially if approached as part of bigger cloud
transformation, concentrate on quick wins first
Confirm and verify the value an agile DevOps approach
can bring in your environment, for your boundary
conditions
Start opinionated for SAP use cases
If required, adapt and evolve by time
Implied complexity for finding the right DevOps approach
CNCF Cloud Native Interactive Landscape
40
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
SAP BTP makes it easy for you to benefit from DevOps principles for your apps running on SAP BTP, as part
of your cloud transformation
Provides opinionated approach focused especially for SAP-centric scenarios and use cases
Respects existing ops processes integrate into change management and operations, as needed
If you should bring DevOps expertise and existing infrastructure, we support you to bring in SAP-specific aspects
Examples:
DevOps with SAP BTP easy start + highly integrated
Continuous
Integration
and Delivery
‘Pipeline-as-a-Service + golden
paths running CI/CD pipeline for
SAP-specific use cases in minutes,
with direct support from SAP
integrate
Respects existing ops processes
integrate into change management and
operations, as needed; such as running
on SAP Solution Manager or SAP Cloud
ALM
Highly integrated standard setup for agile
development on SAP BTP covering the
complete lifecycle from development to
operations; example: automated hand-
over of qualified changes into transport
management
41
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
How to enable DevOps with SAP BTP?
Benefit from highly integrated standard setup especially for SAP-centric dev use cases
Developer
Business
App Studio
push/merge
Git-based
repository
fetch
trigger
Continuous
Integration
and Delivery
notify fail/success
build / test
release
Cloud Transport
Mgmt
integrate
Tighter feedback loops
Reduced risk, better code quality
Pipeline-as-a-Service+ golden
paths running CI/CD pipeline for
SAP-specific use cases in minutes
Option for direct deployment or automated hand-over into
standardized transport mgmt. process for additional control
towards PROD and to enforce company policies
Option to smoothly integrate
into central strategic ops
platforms such as into
change mgmt. + central
ops processes
operate
Alert
Notification
service
Automation
Pilot
integrate
Optimization via technical ops automation + holistic
DevOps alerting for SAP BTP incl. notifications about
pipeline runs and transports into PROD
42
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Out of the box CI/CD Integration in BASProductivity Tools
Out of the box integration with SAP Continuous
Integration and Delivery for CAP based apps to assist with
pipeline configuration and quick access to pipelines
SAP S/4HANA CLOUD ABAP
ENVIRONMENT (Embedded Steampunk) +
UI Applications on BTP
44
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
ABAP Cloud on SAP BTP and on SAP S/4HANA
ABAP Cloud
Public SAP APIs and extensions
points
Cloud-optimized ABAP language
ABAP Development Tools
ABAP RESTful Application
Programming Model
SAP S/4HANA CLOUD ABAP
ENVIRONMENT / ABAP PLATFORM
SAP
S/4HANA
(CLOUD)
SAP BUSINESS TECHNOLOGY PLATFORM
ABAP ENVIRONMENT
public interfaces
remote API
ABAP CLOUD
DEVELOPMENT
ON SAP S/4HANA
ABAP CLOUD
DEVELOPMENT
ON SAP BTP
public interfaces
public interfaces
45
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
New user interfaces or mobile apps on top of S/4
To build modern Fiori user interfaces public remote APIs are needed
While S/4 has a lot of remote public APIs, most of them are optimized for UI consumption (Example: The
Business Partner API has 43 entities).
To build optimized remote UI APIs, either just leveraging the rich existing S/4 functionality or extending it with
additional customer entities and logic, the ABAP RESTful Programming Model (RAP) on Embedded
Steampunk is well suited. To develop these API, developers would use the ABAP Development Tools (ADT).
To build user interfaces developers use BTP tools and technology like the Business Application Studio (BAS)
or Build Apps and deploy the final apps to BTP, Steampunk or Mobile
Use Cases
46
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Embedded Steampunk and SAP BTP tools
SAP S/4HANA Extensibility Strategy
Model /
Business Entity
Extensions
Cross Application
Processes &
Automation
Business Logic
extensions
Customized
Experiences -
Web and Mobile
New Integration
and UI Services
Keeping the core clean is a key priority for
customers
Extending business entities is complex, if done outside
the core
Increasing need to deliver custom apps and processes
fast
Combine the
power of
SAP S/4HANA Public Cloud
Embedded Steampunk for ABAP
+
SAP BTP Tools
“SAP Build & SAP Business
Application Studio” + BTP Services
SAP Business Technology Platform
Leverage Embedded Steampunk for business
entity and logic extensions
Leverage BTP Tools for customized
experiences /web/mobile), as well as automation
and cross-application processes
47
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
New UI app (customized experiences) on existing S/4 business entities
S/4 HANA
Public
Interfac
Custom Interface
BTP
Custom UI
Service
via RAP
(ABAP RESTful
Programming
Model)
Custom UI
App
Custom UI
App
BAS, Build
Apps (*)
SAP S/4HANA CLOUD ABAP
ENVIRONMENT
Embedded Steampunk
deploy
consume
read meta data
SAP Standard Code / Apps
Custom Code / Apps
(*) AppGyver only supports
deployment to BTP right now
ADT (Eclipse)
deploy
deploy
48
INTERNAL© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
New process on SAP S/4HANA / LoB business entities using SAP Build Process Automation (SBPA)
SAP S/4HANA
Public Interface
Extension
Interface
BTP
Extension
Service
(via RAP)
Start UI App
SAP Build
Apps
Embedded Steampunk
deploy
read meta data
SAP Standard Code / Apps
Extension Code / Apps
ADT (Eclipse)
consume
read meta data
SAP Build
Process
Automation
Custom Process
SBPA Start UI
SBPA Task
deploy
start
Events
trigger
Other LoB (Ariba,
SFSF, )
Public
Interface
Public
Interface
SBPA Task
consume
Future Extension App option
INTERNAL - SAP Only