- From: Paul Prescod <paul@prescod.net>
- Date: Tue, 22 Oct 2002 09:21:01 -0700
- To: Assaf Arkin <arkin@intalio.com>, www-ws-arch@w3.org
Assaf Arkin wrote: >... > > [AA] Rule #1 of the interface: what the customer does not care should not be > in the interface. WSCI does not force you to include that information in the > interface. Let's call this rule Assaf's Principle. It is similar to Occam's principle in that it lets us strip away that which is inessential. Now let's turn it into something measurable and concrete: Given a SERVICE and a CUSTOMER. Given a contract expressed in a choreography language called CONTRACT. Given CONTRACT expresses a constraint/condition/thing called CONSTRAINT. CONSTRAINT is part of the public interface between CUSTOMER and SERVICE if and only if it is possible to observe whether constraint has been upheld or violated in the packets on the wire between CUSTOMER and SERVICE. I claim that that's the long form of Assaf's principle. So the fact that the travel agent confirms seats on the airline one leg at a time is demonstrably not part of the customer interface because the customer _cannot observe_ whether they do this or not in any data on the wire. Now this is just the start, but it is an easy, clear starting point. The harder question is to determine what _should be_ in the interface and what needs to be declared at design time versus discovered at runtime. But it would be positive forward progress if we could agree that if there is _no way_ for a client to know whether a constraint has been followed or not, then that constraint is NOT relevant to that client and should therefore not be exposed to them (Rule #1). >... > Think value chain processes. Choreographies involving multiple participants, > where the relation between the activities performed by all the participants > are explicitly modeled. Check out your favorite book about supply chain > management for some examples. A supply chain is an _implementation_ of a process. > No, internal operations are not shown. When a particular participant talks > to their SAP or Oracle, that is not exposed in the choreography. But the > model of the value chain often depicts how participant A sends a message to > B, and B sends a message to C before coming back with a reply to A. Some > business user think that information is important. I prefer to fulfill the > requirement of my customers. >... Your company is a business process management company. Of course your customers come to you for implementations of business proceses. The same goes for BEA et. al. That doesn't mean that there is no difference between interface and implementation. It means that it is your job to help your customers distinguish between them. Paul Prescod
Received on Tuesday, 22 October 2002 12:21:46 UTC