What is the need for the Business Transaction Protocol (BTP) specification?
Applications have changed from monolithic entities to composites constructs of distributed elements selected and called by an initiating component. There is a class of these distributed, composite applications that require more assurance and information about the outcome of the remote components than is available in a simple request / response model. BTP provides the means to associate and coordinate the requests, responses, and outcomes for distributed applications elements.
At a most simple level BTP allows a set of remote calls to be grouped together and the outcomes tied together. It allows for
- all or nothing outcome
- mixed outcome
- service alternative recognition and selection
- time qualification
- exception reporting
Who should be involved in this development?
Transactional characteristics are a requirement for a set of internal and external business interactions. These interactions are not specific to any application or infrastructure implementation.
An enterprise that has or is planning to couple together application elements on disparate systems or with disparate protocols should be involved.
Infrastructure product vendors should be involved to ensure that the needs of their customers are reflected in the specification.
Application vendors interested in providing business process management products or business process execution products should be involved.
Organizations interested in ensuring the deployment of reliable, manageable industry-specific business processes into loosely-coupled web services environments.
Anyone with an interest in helping web services evolve from simple messaging to long-lived, highly complex, cross enterprise collaborative processes.
Who will benefit from this work and how?
Companies interested in automating and integrating their internal business processes or those related to interactions with their partners. Any organization planning to deploy and support complex business processes using web services.
To solve real-life business problems, companies may need to invoke multiple web services applications inside their firewalls and across networks to communicate with their customers, partners, and suppliers. The BTP specification allows sequencing and coordination of internal and external web services to accomplish business tasks.
How does this work compare with related efforts at other standards organizations?
There is currently no comparable work in other standards organizations. There are two known proprietary sets of specifications for transactional Web services, but these do not encompass protocols other than the Web.
BTP uses two-phase interaction of which all other transactional interactions are a degenerate form. This two-phase capability can be collapsed into simpler interactions when interaction delays are more important than transactional visibility or control.
BTP provides transactions independently of the protocol used to carry application semantics, defining the abstract messages, message semantics, and a concrete binding.
BTP addresses the issues of transactionality within and across entity boundaries. It defines only a small set of obligations for the service invoker and the service provider. The service provider is free to choose appropriate cancellation or recovery semantics.
The UN/CEFACT BPSS and related work contains an embedded business transaction protocol that is much more limited than BTP.
What is the status of BTP?
The Business Transaction Protocol 1.0 was approved as an OASIS Technical Committee Draft on 3 June 2002.