Deployment patterns

Developers use Service Flow Modeler to define a combination of elements or characteristics that describe how the adapter service will run in the CICS® Service Flow Runtime environment to process requests.

Deployment patterns vary depending on the characteristics of the adapter service and the nature of the request. For example, an adapter service of a complex business transaction could require access to multiple target applications and might result in data being updated. While an adapter service of a simple business transaction could require access to only a single target application and might result in no data being updated (a simple inquiry request for example). The differences between simple and complex adapter services mean that different processing patterns are used at run time.

Deployment patterns manifest in the modeled adapter service at build time.

Single connector simple patterns

A single connector pattern consists of a single generated and deployed server adapter program as modeled in Service Flow Modeler to compose an adapter service. The server adapter program can consist of one or more interactions with multiple target systems, but does not require an Adapter Navigator to manage request processing. This pattern is intended to support simple screen-sequencing if the server adapter type is FEPI or Link3270, or where a distributed programming link is invoked using a DPL server adapter. Only one server adapter can be generated in a single connector pattern.

WebSphere® MQ server adapters, the DPL server adapter that is generated with version 7 of the tooling, and the Web services server adapter are not supported in a single connector pattern.

There are two single connector patterns:

Nonpersistent single connector pattern
The term nonpersistent indicates that no record is written to the BTS repository data set to reserve the name of the BTS process. This is implemented using the BTS NOCHECK option on the BTS DEFINE PROCESS command. Using this option improves BTS performance by removing the need to write to the repository and its associated logging. It also requires little if any BTS configuration.
Persistent single connector pattern
The term persistent means that a record is written to the BTS repository data set to reserve the name of the BTS process. In this pattern, the BTS NOCHECK option is not specified on the BTS DEFINE PROCESS command. Omitting this option ensures that the context of the adapter service (the request and reply data, as well as an intermediate state data) is persistent through a failure.

Aggregate connector complex patterns

An aggregate connector pattern consists of multiple generated and deployed server adapter programs as modeled in Service Flow Modeler to compose an adapter service. Each server adapter program can consist of one or more interactions with multiple target systems. This pattern also includes the use of a generated and deployed adapter Navigator to mediate and control the flow of the adapter service. During adapter service request processing, multiple server adapters can be run without requiring action by the service requestor.

There are two aggregate connector patterns:

Nonpersistent single connector pattern
The term nonpersistent indicates that no record is written to the BTS repository data set to reserve the name of the BTS process. This is implemented using the BTS NOCHECK option on the BTS DEFINE PROCESS command. Using this option improves BTS performance by removing the need to write to the repository and its associated logging. It also requires little if any BTS configuration.
Persistent single connector pattern
The term persistent means that a record is written to the BTS repository data set to reserve the name of the BTS process. In this pattern, the BTS NOCHECK option is not specified on the BTS DEFINE PROCESS command. Omitting this option ensures that the context of the adapter service (the request and reply data, as well as an intermediate state data) is persistent through a failure.

Passthrough pattern

In addition to the single and aggregate patterns, a passthrough processing pattern is also supported to run target CICS transactions using the CICS Link3270 bridge mechanism only. Passthrough processing refers to the programmatic functions coded in, and managed by the service requestor in order to fulfill a business transaction using the CICS Link3270 bridge mechanism. The BTS NOCHECK option is always used for passthrough processing.

Although developers do not model or deploy passthrough processing as an adapter service in Service Flow Modeler, it is included here for clarity as it is neither a single connector nor aggregate connector pattern.

See the CICS External Interfaces Guide Version 2 Release 2 or higher for information regarding the Link3270 bridge mechanism and related processing.