Introducing 3-System Landscape

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

After completing this lesson, you will be able to:

  • Identify the importance of 3-System Landscape architecture in SAP S/4HANA Cloud

Cloud 3-System Landscape

The 3-System Landscape setup consists of the following systems and tenants:

  • Development system:

    • Development tenant for developer extensibility.
    • Customizing tenant for business configuration and key user extensibility.
  • Test system:

    Test tenant for testing purposes.

  • Production system:

    Production tenant for productive usage.

  • Starter development system:

    • Starter development tenant.
    • Starter customizing tenant.

In such a 3-system landscape, the following users can perform the following steps in the respective systems:

A Business process configuration expert scopes the business scenarios in the workspace in SAP Central Business Configuration, deploys the workspace to the customizing tenant of the development system, and fine-tunes the configuration content via implementation activities. For instance, you may scope the Enterprise Management with the USGAAP scenario and maintain fiscal year variants. When deploying the business configuration to the customizing tenant, the system records the changes on a customizing request for deployment in SAP Central Business Configuration, whereas fine-tuning changes are recorded on customizing transports for fine-tuning changes. Once you have finished content authoring, you can release the customizing requests using the Export Customizing Transports SAP Fiori app.

A key user customizes applications in the customizing tenant using SAP Fiori-based key user apps. For instance, you may add a custom field to the SAP-provided sales order business object using the Custom Fields SAP Fiori app. Once this is done, you can add the extensions to a software collection and export the software collection using the Export Software Collection app.

A Developer implements custom ABAP code in the development tenant using ABAP Development Tools (ADT). For instance, you may create a custom business object using the ABAP RESTful Application Programming Model (RAP). All the changes are recorded on workbench requests. Once you have finished the implementation, you can release the workbench request by using the Transport Organizer view in ABAP Development Tools.

An administrator imports the customizing requests, the software collection, and the workbench request into the test tenant using the Import Collection SAP Fiori app.

A tester runs the customized business processes in the test tenant. For instance, you may create a custom business object instance that was implemented by a developer or maintain data for the custom field that was added to the sales order business object by a key user.

After successful testing, an administrator forwards the customizing requests, the software collection, and the workbench request to the production tenant from the test tenant using the Import Collection app. Afterwards, you import them into the production tenant using the Import Collection app.

As a rule, you can't perform any extensibility or business configuration change directly in the test and production tenant. However, there are certain cases in which you, as a business configuration expert, have to configure settings in the test and production tenant - the so-called system-specific settings - for example, for maintaining number ranges. 

More on Transports:

Transports for developer extensibility, key user extensibility, and business configuration are separated, and content can't be mixed. Transport requests of the different categories can't be merged and during import, transport requests of different categories can be imported together, and transport requests can have dependencies. In this case, the Import Collection app enforces that dependent transports are imported together.

The development and customizing tenants are technically clients in the development and Starter Development systems. A client is an organizational unit in the system. Clients have separate user master records and separate authorizations. Client-specific data is split by the client column in database tables. Development objects are stored in database tables without a client column. Such objects are called client-independent and are accessible in all clients. Hence, when you, as a developer, create development objects in the development tenant, these objects are available in the customizing tenant as well. For instance, when you create a new SAP Fiori app and assign this app to a business catalog in the development tenant, the app is also accessible in the customizing tenant. Master data and transactional data are stored in database tables with a client column. Such data is called client-dependent and is only accessible in the respective client. Hence, when you, as an administrator, create a business role to a business user in the customizing tenant, this is only visible in the customizing tenant.

SAP S/4HANA provides value proposition in the below listed ways.

Developer (SAP_BR_DEVELOPER) Role and Catalog

Business Catalog IDBusiness Catalog DescriptionTask
SAP_A4C_BC_DEV_PC​Development – ABAP Development Tools​Developing in ADT for Eclipse​
SAP_A4C_BC_TRN_MNG_PC​Development – Transport Management​Creating transport requests in ADT for Eclipse​
SAP_A4C_BC_TRN_REL_PC​Development – Transport Release Management​Releasing transport requests in ADT for Eclipse​

Key User (SAP_BR_ADMINISTRATOR) Role and Catalog

Business Catalog IDBusiness Catalog DescriptionTask
SAP_CORE_BC_EXT_FLD​Extensibility - Custom Fields​Extending SAP business object with custom fields​
SAP_CORE_BC_SL_EXP​Extensibility - Transport Management - Export​Adding extension items to a software collection and exporting the software collection with SAP Fiori app Export Software Collection ​

Business Process Configuration Expert (SAP_BR_BPC_EXPERT) Role and Catalog

Business Catalog IDBusiness Catalog DescriptionTask
SAP_CA_BC_IC_LND_PC​Customizing - Business Configuration​Creating tasks​
SAP_CORE_BC_BCT_TRN_MNG_PC/ SAP_BCT_BC_TRN_MNG_PC​Business Configuration - Transport Management​Creating transport requests with SAP Fiori app Export CustomizingTransports​
SAP_CORE_BC_BCT_TRN_REL_PC/SAP_BCT_BC_TRN_REL_PC​Business Configuration - Transport Release Management​Releasing transport requests with SAP Fiori app Export Customizing Transports ​

Administrator (SAP_BR_ADMINISTRATOR) Role and Catalog

Business Catalog IDBusiness Catalog DescriptionTask
SAP_CORE_BC_SL_EXP​Extensibility - Transport Management - Export​Adding extension items to a software collection and exporting the software collection with SAP Fiori app Export Software Collection​
SAP_CORE_BC_SL_IMP​Extensibility - Transport Management - Import​Importing software collections with SAP Fiori app Import Collection ​

Transport Management

 Developer ExtensibilityKey User ExtensibilityBusiness Configuration
Business Scenario Scoping in SAP Central Business ConfigurationClient-Dependent Fine-TuningClient-Independent Fine-Tuning
Changeable inDevelopment TenantCustomizing Tenant

Customizing Tenant (deployed from SAP Central Business Configuration workspace)

Development Tenant (deployed from SAP Central Business Configuration workspace), no transport to test and production system

Customizing Tenant

Development Tenant, no transport to test and production

Test and production tenant for current settings

Customizing Tenant
Client DependencyClient-IndependentClient-independent and Client-DependentClient-DependentClient-Independent
Change RecordingWorkbench RequestSoftware CollectionCustomizing RequestCross-Client Customizing Request (technically Workbench Request)
Tool for Change Request CreationTransport Organizer in ADTTransport is created automatically by the system during export from the Export Software Collection SAP Fiori appCustomizing request is created automatically by the system during deployment of workspace from SAP Central Business ConfigurationExport Customizing Transports SAP Fiori App
Creation of Change Request via DialogAvailableNot AvailableNot AvailableAvailable
Tool for Change Request Release/ExportTransport Organizer in ADTExport Software Collection SAP Fiori AppExport Customizing Transports SAP Fiori App
Tool for ImportImport Collection SAP Fiori App
Collection Type in Import Collection AppDeveloper ExtensibilityKey User ExtensibilityCustomizingCross-Client Customizing
Transport Type of Change Request (Attribute SAP_ATO_TRANSPORT_TYPE)DEVEXTCBCBCCCC
Transport Target of Change Request (<SID> = System ID)

/<SID>_ATO/

/<SID>_CUS/
Customizing Transport Category of Change Request (Attribute SAP_CUS_TRANSPORT_CATEGORY))Not AvailableNot Available

DEFAULT_CUST for default customizing request. There can only be one open default customizing request.

MANUAL_CUST for manual customizing request

DEFAULT_CUSY for default customizing request. There can only be one open default customizing request.

MANUAL_CUSY for manual customizing request

Business Catalog for Creating RequestsSAP_A4C_BC_TRN_MNG_PC-Request is created automatically by the systemSAP_CORE_BC_BCT_TRN_MNG_PC
Business Catalog for Releasing Request/ExportSAP_A4C_BC_TRN_REL_PCSAP_CORE_BC_SL_EXPSAP_CORE_BC_BCT_TRN_REL_PC
Business Role TemplateSAP_BR_DEVELOPERSAP_BR_ADMINISTRATORSAP_BR_BPC_EXPERT

This table gives you an overview of transport management in a 3-system landscape.

There are several tools and apps available for transports. Here are a few of them:

Transport Organizer in Eclipse-based ADT for managing workbench transports for developer extensibility development. With this tool, you can create, manage, and release workbench transports.

SAP Fiori app Export Software Collection to create collections of extensibility objects (items) and export them.

SAP Fiori app Export Customizing Transports to manage and export a customizing transport. It displays customizing transports, their project assignment, and piece list (client dependent objects only).

SAP Fiori app Import Collection to import software collection versions. It allows you to import workbench transport requests, customizing transport request, and software collections into the test or productive system.

Transferring developer extensions between development tenants is easy. The open-source Git client abapGit allows you to export code from and import code into your development tenant. You should use it for the following use cases:

  • Migrating on-premise code to the cloud.
  • Transferring your code from the cloud to on premise.
  • Exporting your code when the development ABAP system is decommissioned. 
  • Transferring your code from the starter development tenant to the development tenant. 
  • Transferring your code from one cloud to another to share it with others, for example as open source, or from a partner to a customer account.

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