ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WS in MB

Post new topic  Reply to topic
 WS in MB « View previous topic :: View next topic » 
Author Message
RocknRambo
PostPosted: Tue Mar 20, 2012 6:54 am    Post subject: WS in MB Reply with quote

Partisan

Joined: 24 Sep 2003
Posts: 355

I understand a msg flow in MB can be exposed as a web service... we are in the process of putting up a standard when to use MB as service provider contrast to service mediator.

we have come to an understanding that only integration logic will be MB and not any business logic. We have a new req for creating a WS which accepts a incoming request does a lookup from couple of databases and provides a result set (for ex: product availability)

The debate is where should we develop this service, either in MB or a separate JEE engine ?

has anyone come to an understanding with the governance body on when should we consider MB as WS provider in contrast to service mediator? if so what criteria ?


Thanks for any pointing

--RR
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Mar 20, 2012 7:08 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

IMHO the correct answer to this question is "it depends".

Your scenario would seem to turn on the question of "no business logic"; a well understood best practice within WMB. To extend your example, if the question of "product availability" is simply a lookup of stock levels in a database then WMB is a contender. Even if the "product availability" stretches into "product availability for that customer" and includes a web service call to check credit as well as a database lookup, then WMB is still in the running.

Once it moves into the "product availability for that customer in the timescale required" and you need to work out order fulfilment & delivery schedules it gets a lot less clear cut. Much of that requires access to business processes, and what happens if "check product availability" morphs into "order product" 2 years down the line?

So if it's a straightforward service or mediation then WMB is a good choice provided you can tie down the requirements & they're not going to creep because your architecture govenance is strong and future business logic will be forced where it needs to go.

If there's a risk this will inflate slowly into something other than a service, you might be better advised to start in a separate environment.

You should also remember that a solution is usually more than a service. There's no good reason that for a given solution (like determining product availability) you can't write a lightwieght service in some engine that fronts a WMB flow (called as a web service by the engine) that does all the aggregation, transformation, database handling & other heavy lifting. The reverse is equally true; you can expose the function as a web service enabled flow that, as part of the it's processing, calls an external service that contains the business logic and rules.

My 2 cents, other opinions are equally valid and may be better.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Tue Mar 20, 2012 7:30 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Classic Enterprise Service Bus provides value in two ways: (1) Context-based routing and (2) data transformation. Since your proposed use-case is neither of these, I would host the service some other place besides WMB.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Tue Mar 20, 2012 7:34 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

If you don't already have an existing JEE app server environment, don't build one.

You really need to discuss this with your own governance board, rather than random strangers on the internet.
Back to top
View user's profile Send private message
RocknRambo
PostPosted: Tue Mar 20, 2012 7:45 am    Post subject: Reply with quote

Partisan

Joined: 24 Sep 2003
Posts: 355

Agreed the final decision is from the governance body... but, would like to get some brains/thoughts/view point on how this is implemented in other org's...

what are the practical points and criteria to consider in making a choice.

We always talk to abt no business logic in MB/ESB... can someone throw an example of integration logic and business logic

Thanks

--
RR
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Mar 20, 2012 7:52 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

RocknRambo wrote:
We always talk to abt no business logic in MB/ESB... can someone throw an example of integration logic and business logic

It's a useful notion, but it's not entirely accurate.

For one thing, as you say, the distinction between these logics can be a bit fuzzy.

If I call one back end system and only transform the request and the response, then probably this is integration logic...

If I have to call three separate back end systems and aggregate the responses to provide a unified view of data, is that integration logic or business logic?

If I have to take one of the three responses and perform complicated math on the data in it before I can call the second with that information, and then do the same on the second response to call the third... is that business logic or integration logic?
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Mar 20, 2012 7:59 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

RocknRambo wrote:
We always talk to abt no business logic in MB/ESB... can someone throw an example of integration logic and business logic



Integration logic is where you determine product availablity by reading the QuanityInStock & Units columns from a database, converting the quantity integer returned into an XML tag called QuanityAvailable & setting an attribute of Units to "Boxes", "Crate" or "Other" depending on the Units value.

Business logic is where you determine product availability by reading the QuanityInStock & Units columns from a database, checking to see if this customer has any outstanding invoices & returning a value of 0 in QuantityAvailable if the result is less than the RestockLevel column & the customer is not a Premier customer.

Other & better examples undoubtably exist.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqsiuser
PostPosted: Tue Mar 20, 2012 8:28 am    Post subject: Reply with quote

Yatiri

Joined: 15 Apr 2008
Posts: 637
Location: Germany

There is an interesting thread on business logic "yes or no within MB".

There actually are companies that have MB only (no AppServer) and they need to do certain things. This brings down you choices very much

Also depending on where you want to have your business logic "burried"... Kind of which team or persons take responsibility/maintainance ... usually you/everyone are/is pushing away from that !

Somewhere/someone will have to do it (and take responsibility/maintainance for it).

I'd guess someone resonably able/skilled is a good candidate. Or you are of the view that your/a partner(s) should just do.
_________________
Just use REFERENCEs
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WS in MB
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.