We are designing a system which mimics a BPEL application with sets of functional requirements such as bulk messaging, managing SLAs, error handling and so on.
One of the intentions is to modularize these functional and non-functional aspects into separate web apps so that we can choose at build time and plug them all together.
How does one go about designing this app - choosing design patterns for a controlling framework that delegates between the modules?
Put another way - it's like the chain of activities in an ESB, so the controller passes on to A then B then C. In other cases it goes A > B > D and so on.
So my question: what design pattern does this controller have? How can it decide the logic of whether at the end of A, should it call B or C