MHonArc v2.5.0b2 -->
ebxml-msg message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: RE: [ebxml-bp] Closing the gap between MSI and BSI and move on
Hi John,
Comments inline.
Am Freitag, den 04.02.2005, 10:22 -0800 schrieb Yunker, John:
> Hmmm... I'm a little concerned about where this is going. We are trying to decouple the business execution from the physical software components. Please see comments below.
>
> >>So what is a specific BSI?
> >>
> >>o J2EE applications, busses, simple backend application,
> >>series of web services, currently íts just about anything ...
> >>
> >>I can argue contrary that you do not want to give the
> >>responsibilities of the BPSS signals to all and everything
> >>being part of the BSI. This is the opposite to rip out existing
> >>applications or internal data formats.
> >>
> >>So I see two cases:
> >>
> >>1) A BSI is anything spread among anything at one party
> >>2) A BSI (or BSH) is a specific component (a ebBP business
> >>process engine) which takes on the responsibility of the BPSS
> >>signals. A component that is build for ebBP´s.
>
> The above is a fine description of a conceptual BSI, that is a partner exposing business services.
OK.
> However BPSS is much more explicit in defining the BSI so that partners can truly define and optimize shared business behavior.
I do not understand what you mean with optimize.
>
> A BSI is a partners implementation of the shared definition of business states and actions used to accomplish a business use case.
Agree.
>
> BSI execution uses the current state of the business process (as defined in the neutral collaboration model) to prescribe actions and report the current state of the business process.
Agree.
>
> In the context of the BPSS the business process being managed by the BSI is only the SHARED business process.
Agree.
To me, shared business process and public business process are synonyms.
>
> So a BPSS BSI is:
> 1) A discrete set of business process states (results of transactions) shared and aligned between partners.
> 2) A discrete set of business transactions.
> 3) A discrete set of transitions between business transactions.
> 4) The rules governing the above.
Agree. (I tend to think that the execution of business transaction is OK
but I have no experience when using joins, forks, and decisions)
>
> The MSI supports (and enforces) the BSI through
OK here you start to bring together MSI and BSI.
> 1) Messages that represent transactions
> 2) Signals that align state
> 3) Behavior upon receipt/non-receipt of messages and signals
> 4) Enforcement of security constraints
I guess I agree here, too.
Thanks to real world ebMS implementations we feel comfortable to think
of a MSI. I think of a MSI as an interface to the ebMS MSH (very
symplistic eg sendMessage(), sendSignal(), etc. ).
If you have to get specific, again, what is the BSI?
I am interested to get down to the implementation of this and for that I
need one example of specific BSI. Once I have a specific BSI then we can
define an interface between the BSI and MSI. Eg what are the parameters
of sendMessage()? conversation ID?, CPA id?, ebBP instance id?, ebBP.
Who creates the conversation ID? The MSH or the BSH? Whois responsible
to responsible to check the timeToPerform? Again I want to implement
against a MSI which is the same for all MSH's. The same should be true
the other way round. It is very nice if my MSH also works with any BSI.
The ebXML message is the reason we have interoperablity between ebXML
Message Service implementations. So we need something similar for BSI
and a ebXML Message Service implementation (MSH). Only then we can start
to test interoperability between BSI's.
I guess I start to repeat myself.
>
> The MSI can do this either through design time embedding of BSI rules in the MSI, or through communication between the MSI and BSI implementations at run time. This is left to the implementer at this time.
>
> The set of web services, beans, etc that define the business services are NOT the BSI, they are the business services that the BSI fronts and abstracts.
Agree. The set of web serices, beans etc that define the business
service is what I call the private business processes.
> The BSI is the shared definition of how those business services are EXPOSED to the parties as a defined business process and discrete set of business messages.
Also agree.
One can ask:
what was first?
o the private business process? or
o the public business process?
Probably you will find both:
b) Organisations sit together to define their public business processes.
Then each party goes home and organizes their own private business
processes to participate.
c) An organisation provides a service, composed of private business
processes. The organisation wants to connect its trading partners. The
organisation creates public business processes to allow its trading
partners do B2B with the organisation.
Another pro for a specific BSI component (say BSH) (ebBP aka BPSS
execution instance). A component between MSH and backend application or
services:
o This BSH can termine time signals because it is the instance
monitoring message flow.
o This BSH can teremine if a business message is in accordance with the
ebBP instance. This is true for incoming and outgoing business messages.
(once I was looking at this a bit closer and I remember that it might be
tricky if it is the first message of a eBP but I might not have thought
that through). Please remember that for this I need an interface between
BSH and MSI. Oh yeah I remeber when a backenapplication sends a new
business messages, that is the pure payload. Again without metadata ...
the BSH would not know what type of business message this payload is.
For which trading partner is this payload? Impossible to know without
looking into the payload or having that information accompanied the
payload document.
This BSH still is not in a position to know about Acceptance
Acknowledgements (positiv nor negative) but it can handle time signals.
Actually, to me the definition of a BSI is so vague, that my world view of a
specific BSI (an ebXML business process execution engine implementation having a specific interface with a MSH and having a to be defined interface to backend applications, services, business process execution engines)
is likely to be valid ;)
The one way or the other a BSI has to communicate with a MSH and vice
versa. If we want to have interoperable BSI's and MSH's we need an
interface.
Regards
Sacha
>
> Thanks,
> John
>
>