Skip to content
nkaputnik edited this page Jun 27, 2023 · 11 revisions

Verticalization, Customization, and Composition with CAP

Welcome to the Extensibility Hands-On Workshop at re>≡CAP 2023.

Overview

In this workshop, you'll learn how to verticalize and customize SaaS applications using intrinsic extensibility capabilities of SAP Cloud Application Programming Model. We'll offer feature-toggled verticalizations as a SaaS provider, see how to create and share prebuilt extension packages as SAP partners, which customers can reuse to compose tailored solutions. Also, we will be working with an experimental feature to create custom business logic using a secure sandbox.

Sample Tasks

We will illustrate this by walking through the following use cases:

  • SAP builds an incidents management app, served as a SaaS solution, subscribed by three customers: 1, 2, 3.
  • Customer 1 vends solar panels and wants specific system details to be entered when opening incidents, so extend incidents objects by respective fields
  • Customer 1 decides to share what they did as a pre-built verticalization package for reuse by other vendors in the solar panel industry
  • SAP decides to offer that very same extension as a standard toggled feature of the incidents app, turned on or off on demand.

In summary, we'll cover all the range of extensibility features offered by CAP, as depicted in this illustration:

Requirements

To follow the exercises in this repository, you need to have

  • Access to SAP Business Application Studio or a local VS Code installation
  • A browser, preferably Google Chrome

Exercises

Spotlights

When doing the exercises, we'll also benefit from these key design principles and value propositions of CAP:

  • Accelerated Development at Minimized Costs through CAP's principles of
  • Grow-as-you-go and Convention over Configuration.
  • Focus on Domain, e.g. when capturing domain models.
  • Proven Best Practices, served out of the box.
  • Intrinsic Extensibility, used for Verticalization and Customization.

Visit the About CAP page in the capire docs for details.

Clone this wiki locally