- From: Fletcher, Tony <Tony.Fletcher@choreology.com>
- Date: Wed, 8 Oct 2003 17:25:29 +0100
- To: <public-ws-chor@w3.org>
- Message-ID: <221369570DEDF346AE42821041345E892651A9@exchange1.corp.choreology.com>
Dear Colleagues, If you have further comments of support or opposition, questions and so forth then please mail me directly or via this list. The main point made during the WS-Choreography Teleconference 7 Oct 03 was that there is no single, unique use case for transactions. On the contrary transactions are a generally useful, ubiquitous facility that can be applied to any use case, but particularly those that involve economic interactions including economic commitments. Note that we are taking a 3 step approach here (at least 3, might turn out to be more). Firstly we are agreeing the requirements. If and when these are agreed then there will be consideration of how to meet these in the language - the result will depend on the nature of the language we come up with, but I would hope for a relatively 'light touch' as this should be easy to understand and use. The third step (that might turn out to be several steps in fact) is to map or 'interpret' the transaction demarcation in the choreography language to underlying infrastructure (and protocol). A 'Business Transaction' can be defined as a consistent change in the state of a business relationship between two or more parties. A business relationship is any distributed state held by the parties which is subject to contractual constraints agreed by those parties. This definition highlights that a part of designing a business process / choreography is deciding what activities to group as a transaction (if any). It is therefore essential that the facility to demark transactions is included at the choreography level. A slightly more technical, and therefore maybe slightly less appropriate, definition of 'transaction' is: A complete unit of work as defined by an application. A transaction starts when a part of the distributed transaction first initiates some work that is to be a part of a new transaction. The Transaction Tree may grow and shrink over time and (logical) space. A transaction completes when all the participants in a transaction have completed (that is have replied to their 'Confirm' or 'Cancel' instruction). Note that an atomic transaction is a particular case of this more general concept: an atomic transaction is a transaction, but not all transactions need be atomic! The benefits that using transaction demarcation bring are: Ability to coordinate the outcome of application specific work across two, or more, parties in a generic, non application specific manner, and the fact that each party in a two party relationship has assurance, to a high level of probability, that its partner has the same view of the outcome as it does - sometimes know as mutually assured common knowledge. My original submission on requirements for transaction demarcation is at http://lists.w3.org/Archives/Public/www-archive/2003Sep/0057.html and the revised submission at http://lists.w3.org/Archives/Public/www-archive/2003Oct/0007.html Best Regards, Tony <http://www.choreology.com/> Tony Fletcher Technical Advisor Choreology Ltd. 68, Lombard Street, London EC3V 9L J UK Phone: +44 (0) 870 7390076 Mobile: +44 (0) 7801 948219 Fax: +44 (0) 870 7390077 Web: <http://www.choreology.com/> www.choreology.com Cohesions(tm) Business transaction management software for application coordination Work: tony.fletcher@choreology.com Home: amfletcher@iee.org
Attachments
- image/gif attachment: image002.gif
Received on Wednesday, 8 October 2003 12:30:48 UTC