Chapter 5 Building a Collaborative Business Process Model


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 Internal code Description
Pattern Pattern Optional name of the pattern on which this binary collaboration is based
Pre conditions preConditions Description of a state external to this collaboration/transaction that is required before this collaboration/transaction ends
Post conditions postConditions 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
Begins when beginsWhen Description of an event external to the collaboration/transaction that normally causes this collaboration/transaction to start
Ends when endsWhen Description of an event external to this collaboration/transaction that normally causes this collaboration/transaction to end

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:

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

Internal code

Description
BPSS 1.01 BPSS 1.04
Is concurrent isConcurrent

(true | false) "false"
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 Yes Yes
Is legally binding isLegallyBinding

(true | false) "true"
The Business Transaction performed by this activity is intended by the trading parties to be binding. Default value is True Yes Yes
isSynchronous isSynchronous

(true | false) "false"
The Business Transaction is intended to be performed by this activity in a synchronous way Yes Yes
Pre conditions preConditions A description of a state external to this transaction that is required before this transaction can start No Yes
Post conditions postConditions 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 No Yes
Begins when beginsWhen A description of an event external to the collaboration/transaction that normally causes this collaboration/transaction to start No Yes
Ends when endsWhen A description of an event external to this collaboration/transaction that normally causes this collaboration/transaction to end No Yes

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 Internal code Description
On initiation onInitiation

(true | false) "false"
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
Expression language expressionLanguage Specifies the language in which the condition expression has been written
Condition guard conditionGuard 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)

 


Copyright (C) 2007. Sybase Inc. All rights reserved.