• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Design pattern for service orchestration

 
Ranch Hand
Posts: 10198
3
Mac PPC Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm looking for a pattern that would enable me to have a class that calls different processing steps in a sequence where the result of each sequence will determine if the next sequence happens or not. Each of those sequences are coded as an implementation with a certain behavior which will be called by the orchestrator service. Currently, each of those service will throw an Exception which is handled by the orchestrator service. There may be multiple such orchestration services having different sequences. Is there any design pattern that I can look into?
 
Ranch Hand
Posts: 50
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Are you looking for some kind of 'state machine'?
 
Bartender
Posts: 1357
39
IBM DB2 Netbeans IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I found this website about SOA. It may help you.
 
Author and all-around good cowpoke
Posts: 13078
6
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
That sure sounds like a State Machine to me for the control of the sequence of actions.

I would start with a big white board and markers and draw out a diagram containing the processing steps and possible transitions.

It is relatively easy to turn a diagram like that into state machine code.

Bill
 
Claude Moore
Bartender
Posts: 1357
39
IBM DB2 Netbeans IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Isn't an esb well suited for such tasks ?
 
Joe San
Ranch Hand
Posts: 10198
3
Mac PPC Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yes, an ESB is well suited for the task. Having worked with Apache Camel and Service Mix in the last couple of years, I'm now working on a .NET application which is a class library application. We already have a run time engine on which we are planning to host the dll's. There is no way that I could bring in a new infrastructure.

The solution is so modular that each of the steps that I do is well encapsulated as a separate dll. Separately, these dll's accomplish a task, but together they accomplish a business process and in our case, they are the end-to-end solution. I'm now into writing this orchestration service. I mean, it is just a service that is going to call those dll's step by step with the result of each step determining either to proceed or to fail. I'm really happy with what I've got so far. I in fact already have the orchestration service written, but was just looking if there is any fancy design pattern that I could use!
 
Claude Moore
Bartender
Posts: 1357
39
IBM DB2 Netbeans IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I don't think that you will find a single pattern... Indeed, in the above mentioned link I found at least 5 patterns relative to orchestration. Most important: if the backbone service you developed is running fine...well, maybe you have already got a good solution for your business. So, why looking around?
 
Don't get me started about those stupid light bulbs.
reply
    Bookmark Topic Watch Topic
  • New Topic