Best practices for creating and deploying composites

The model for assembling components into composite applications is very flexible. To reuse your application composites in multiple CICS regions, whether you are moving applications through development and test to production or you are cloning applications in your production environment, you are recommended to separate the application logic from the bindings.

Separate implementation logic from the composite service and reference
To more easily reuse the same application logic in different CICS regions, separate the composite service and reference from the implementation logic of the application and deploy them as separate bundles. The composite service and reference can contain information specific to a CICS region, such as a particular set of system resources or a transaction ID. Using this method, you can change or update the composite services and references without having to redeploy the application composite.
Define an SCA domain for the bundle
The bundle is represented in CICS by the BUNDLE resource. Every bundle that is deployed into CICS has the same SCA domain by default, although the value is empty. The BUNDLE resource has an optional attribute called BASESCOPE that the system programmer can use to set an absolute name to represent the SCA domain. If you follow the recommended model of splitting the service and reference from the composite application and deploy them as separate bundles, you can request that the same BASESCOPE value is used on each BUNDLE resource to indicate that the bundles are related.
You can also deploy the same bundle multiple times into the CICS region by specifying different SCA domains for the BASESCOPE attribute. CICS uses the SCA domain and the composite together to identify the service during runtime processing. The scope of the service is available to the task that is processing the request. It is recommended that the value of the BASESCOPE is a unique URI.
The graphic shows a box that represents the SCA domain. Inside the SCA domain is composite X that contains an external service. Composite X links to composite Y, which contains two components. The first component is also a composite and contains two further components, demonstrating the nesting capabilities of the SCA Assembly model specification. Composite Y links to Composite Z, which contains an external reference.