-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Welcome to the Extensibility Hands-On Workshop at re>≡CAP 2023.
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.
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, enabled or disabled on demand.
In summary we'll cover all the range of extensibility features offered by CAP, and as depicted in this illustration:
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
- Getting Started
- Exercise 1 - Building a CAP-based application (quick recap)
- Exercise 2 - Deploy as extensible SaaS app (by SaaS Provider)
- Exercise 3 - Adding custom extensions (by SaaS Customers)
- Exercise 4 - Providing pre-built extensions (by SAP Partners)
- Exercise 5 - Providing feature-toggled extensions (by SaaS Provider)
- Exercise 6 - Providing cusom business logic (experimental)
- Summary
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.