Designing a Binary Collaboration

You design a Binary Collaboration using a process with a <<BinaryCollaboration>> stereotype.

Organization units design the initiating and responding roles of the Binary Collaboration. They are linked to the process using roles associations.

Example:



The following extended attributes (accessible from the Extended Attributes tab of the process property sheet) apply to the Binary Collaboration process:

Name

Description

Pattern

Optional name of the pattern on which this binary collaboration is based

Scripting name: Pattern

Pre conditions

Description of a state external to this collaboration/transaction that is required before this collaboration/transaction ends

Scripting name: preConditions

Post conditions

Description of a state that does not exist before the execution of this collaboration/transaction but will exist as a result of the execution of this collaboration/transaction

Scripting name: postConditions

Begins when

Description of an event external to the collaboration/transaction that normally causes this collaboration/transaction to start

Scripting name: beginsWhen

Ends when

Description of an event external to this collaboration/transaction that normally causes this collaboration/transaction to end

Scripting name: endsWhen

Choreography

The Binary Collaboration is a composite process with a sub-diagram designing the choreography:



The choreography is a sequence of activities, which can be:

  • A Business Transaction Activity. It specifies the use of a shared Business Transaction in the context of a Binary Collaboration and is designed with a process with the <<BusinessTransactionActivity>> stereotype. This Business Transaction Activity process references the Business Transaction process using the Implemented By attribute that you access by selecting Reuse Process in the Type list of the Implementation tab in the Business Transaction Activity process property sheet:



  • A Collaboration Activity. It specifies the use of a shared Binary Collaboration in the context of another Binary Collaboration. It is designed with a process with the <<CollaborationActivity>> stereotype. This Collaboration Activity process references the Binary Collaboration process using the Implemented By attribute that you access by selecting Reuse Process in the Type list of the Implementation tab in the Business Transaction Activity process property sheet:



The following extended attributes (accessible from the Extended Attributes tab of the process property sheet) apply to the Business Transaction Activity process. The table shows what attributes are available for ebXML BPSS 1.01 or for ebXML BPSS 1.04 process language:

Name

Description

Is concurrent

If the business transaction activity is concurrent, then more than one business transaction can be opened at a time. If the business transaction activity is not concurrent, then only one business transaction activity can be opened at a time

Default value: false

Scripting name: isConcurrent

Is legally binding

The Business Transaction performed by this activity is intended by the trading parties to be binding. Default value is True

Default value: true

Scripting name: isLegallyBinding

isSynchronous

The Business Transaction is intended to be performed by this activity in a synchronous way

Default value: false

Scripting name: isSynchronous

Pre conditions

[BPSS 1.04] A description of a state external to this transaction that is required before this transaction can start

Scripting name: preConditions

Post conditions

[BPSS 1.04] A description of a state that does not exist before the execution of this transaction but will exist as a result of the execution of this transaction

Scripting name: postConditions

Begins when

[BPSS 1.04] A description of an event external to the collaboration/transaction that normally causes this collaboration/transaction to start

Scripting name: beginsWhen

Ends when

[BPSS 1.04] A description of an event external to this collaboration/transaction that normally causes this collaboration/transaction to end

Scripting name: endsWhen

TimeToPerform

The timeToPerform is the duration from the time a Business Transaction Activity initiates the first Business Transaction until there is a transition back to the initiating Business Transaction Activity. To define timeToPerform for a Business Transaction Activity you can use the Duration attribute in the property sheet of the process.

Flow

The flows in the choreography specify transitions between activities. The following extended attributes (accessible from the Extended Attributes tab of the flow property sheet) apply to the flow:

Name

Description

On initiation

Used to specify a nested BusinessTransactionActivity and a second transaction is performed before returning to this transaction to send the response back to the original requestor

Default value: false

Scripting name: onInitiation

Expression language

Specifies the language in which the condition expression has been written

Scripting name: expressionLanguage

Condition guard

The condition that guards the transition. This attribute is available only for model with BPSS 1.04; it can take one of the following values: ProtocolSuccess, AnyProtocolFailure, RequestReceiptFailure, RequestAcceptanceFailure, ResponseReceiptFailure, ResponseAcceptanceFailure, SignalTimeout, ResponseTimeout, BusinessSuccess, BusinessFailure, Success, Failure. (For BPSS 1.01, the type of the flow indicates the condition)

Scripting name: conditionGuard