Scenario: I have a CRM system, and my app. When a new order is created in the CRM system, myApp should do some stuff (create a project room for the order), and write something (project room url) back to the CRM system.
So I could easily implement this using a point to point integration, myApp host a service that, when finished with stuff, calls a service in the CRM.
Question is: Should I go for the extra effort of adding some service bus (extra code, extra maintaince) or is it not a suitable case? The company has no service bus today, and no integration strategy at all.
In case of a 'yes' to the above question (I'm sort of expecting that) what is the extra time I should estimate for including, say nServiceBus or rhino-service-bus ((never tried either of them), into the scope? Do you have any recommandations on other esb's, or a case study I could read?
Thanks for any help
Regards
Larsi
The question is whether or not it's a business event that other systems may care about. If I take the case of new customer, perhaps the marketing system sends them an email and the ordering system then starts processing the order.
If that is something you can see happening, I would then use the push pub/sub model (http://www.eaipatterns.com/ObserverJmsExample.html) using nservicebus. All you have to do is build a handler to listen for a new customer message for each applicaton that cares and then in that method, do your thing.
Also.... what you're doing is moving to SOA but you need several more things to be SOA. SOA is architectural philosophy. The pub/sub that we're talking about is more of using MoM.