This topic applies only to the IBM Business Automation Workflow Advanced
configuration.

Deferred response with synchronous implementation

Draft comment:
This topic only applies to BAW, and is located in the BAW repository. Last updated on 2025-03-13 12:15
You can obtain Application Response Measurement (ARM) statistics with a synchronous invocation of the request. The returned result is sent as output to a data store for a synchronous implementation.

Parameters

Event monitoring for Service Component Architecture (SCA) components includes the event points that are shown in black Black event point, while the event points shown in blue Blue event point are used only to calculate and fire PMI/ARM statistics.

In Table 1 and Figure 1, the current ARM transaction (denoted as X1) is created when the calling service component was invoked for the first time. If the caller is not a service component, the current ARM transaction is used, or a new one is created. If it is not the starting transaction, it has a parent, as represented in the following table and diagram with the notation Xn.Xn+1. The notation is used to show the transaction lineage. Every SCA invocation starts a new transaction, which is parented by the current transaction of the caller. You can create new transactions and you can access the current transaction, but you cannot modify the SCA transaction lineage.
Table 1. Invocation of request and return result
Type Statistics Formula ARM Transaction
Common TotalResponseTime t3 - t0 X0.X1
RequestDeliveryTime t'0 - t0 X1.X2
ResponseDeliveryTime N/A N/A
GoodRequests CountEXIT X1.X2
BadRequests CountFAILURE
ResponseTime t'1 - t'0
Reference A GoodRefRequest CountEXIT X1.X2
BadRefRequests CountFAILURE
RefResponseTime t1 - t0
Figure 1. Graphic representation of a deferred response with synchronous implementation
Graphic representation of a deferred response with synchronous implementation.
Table 2. Invocation of output to data source
Type Statistics Formula ARM Transaction
Reference B GoodRetrieveResult CountEXIT X1.X2
BadRetrieveResult CountFAILURE
ResultRetrieveResponseTime Σ t3 - t2
ResultRetrieveWaitTime Σ timeout