What are the use cases when using the Composite Designer?
Generally speaking, you use it in two possible use cases: to create a new composite application or to enhance (via import) an existing composite application.As we mentioned before, the product is used as a major development unit in the Composite Designer. This allows you to directly execute operations such as build, deploy, create, delete, import (or export) of a certain composite application as a whole unit. This prevents the need of operating with several software components (SCs) or archive files one by one.
The first use case is when you create (meaning develop) your product.
When you create a product in the SAP NetWeaver Developer Studio, there are several possible ways of starting the development. The common between any of them is that you have to comply with the SAP component model principles.Let’s briefly mention two of these possible ways.
The first way of creation is the so called “local development” in which you develop your product as a standalone application. You can use your local file system, or you can perform team development with a third party versioning system. You start with creating a local development configuration file, and then you set up the environment for your development. You directly create a development configuration from scratch, and manually create the SCs that you want, using only the SAP NetWeaver Developer Studio. You do not need the System Landscape Directory (SLD) or the SAP NetWeaver Developer Infrastructure (NWDI) at all.
The second way for creation is the “remote development” which covers development integrated with the SAP’s Development Infrastructure. You use this approach when the “local development” does not meet your requirements, so you can decide to move your development to a central development system landscape. Then you need SLD and NWDI involved.
All the possible scenarios are well-described in the official Composite Designer conceptual documentation.
The second use case of using the Composite Designer is when you enhance (via import) an existing product.
You have the options to import a product from a development configuration, that can be a local development configuration or a different one that has been set up for you by a landscape administrator. You also have the option to import from a local file system.
Importing existing products is an important feature that every developer working on specific application uses. But it is also suitable for architects who want to analyze the content of the product (with all the objects and relations), or to investigate for any possible optimizations, and so on. Additionally, the import of an existing product can be beneficial when training junior colleagues.
Of course, there is a possibility to export your product once it is ready. You have the options to include or exclude the source of your product in the exported file.
Possible use cases for product export would be: sharing a product between Eclipse workspaces (if the product is not developed using the SAP NWDI) or producing archive files (.sca) for manual development.