[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [stp-dev] Re: Follow on meeting about the Hybrid Model

On 9/7/07, Andrea Zoppello <andrea.zoppello@xxxxxx> wrote:
> Hi Guillaume,
>
> I try to explain briefly about your doubt what are the means of the
> entities in that model.
>
>
> Guillaume Nodet ha scritto:
> > I'm sorry I missed this meeting... :-(
> >
> > I have a few questions wrt to the meta model described at
> > http://wiki.eclipse.org/STP_Metamodel
> >
> > The model defines the notion of service, binding and endpoint, but the
> > comments below do not put any definition behind these concepts ? Do
> > they have the same meaning than in WSDL ? If yes, where is the
> > Interface ? In which case would a service have more than one endpoint
> > ?
> >
>
> This model aims to define both:
>
> 1) the concept of service in very similar way as  it's in the
> webservices world so this is
> the reason for the presence of Service, ServiceBinding and Enpoint entities.

Well, I assumed that, hence my question about the PortType / Interface.
Usually a service has a collection of endpoint.  Each endpoint has a
binding, and each binding has an interface.  The interface is the
abstract model, the binding has the protocol informations and the
endpoint has the location information.

>
> 2) The concept of Process as a set of steps and transitions, each steps
> use a services with
>     a particular binding.
>
>     When you're using the model to define business process you really
> don't care about the
>     services you just need to use in your step.
>
>     Makin a very simple example suppose you have a business process
> defined in terms of
>     three step.
>
>     - Take Input -> Make Some Business Transformation -> Make Data
> Persistent -> Get Output
>
>     this could be mapped to the service in:
>
>     - TakeInput ( InputService) -> MakeSomeBusinessTransformation (
> BusinessService ) -> MakeDataPersistent( BusinessService) -> GetOuptut(
> OutputService)
>
>     In that way you've a process with four step and two of that are
> reusing the BusinessService.
>
>     Then you coul put there the binding so you could have
>
>     - TakeInput( InputService, JBIHttpInputBinding )
>     ->MakeSomeBusinessTransformation ( BusinessService,
> JBI-XSLT-ServiceEngineBinding )
>     ->MakeDataPersistent( BusinessService, JBI-JDBC-ServiceEngineBinding )
>     ->GetOuptut(OutputService, JBIHttpOutputComponent)
>
>     But the "same business process" could have different "technological
> details" changing the binding association in the step instances so the
> same process could
>     result in:
>
>     - TakeInput( InputService, JBIJmsInputBinding )
>     ->MakeSomeBusinessTransformation ( BusinessService,
> JBI-XSLT-ServiceEngineBinding )
>     ->MakeDataPersistent( BusinessService, JBI-JDBC-ServiceEngineBinding )
>     ->GetOuptut(OutputService, JBIJmsOutputBinding)
>
>
> > Also I don't really see why a process step would be linked to a
> > binding ? It seems to me it should be linked to an Interface or an
> > Endpoint (if we want the physical location)...
> >
>
> The physical location URI and other details are expresses as properties
> of the steps.

I'm not sure if you mean that the same process can be used with
different bindings (it actually only uses the abstract model) or if
you want to bind it to real endpoints.
In the first case, I'd say there is a confusion between binding /
interface.  In the second case, the process should reference an
endpoint (with the location information).

Sorry If I missed something...

-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/