Chaining orchestrations using business rules
In Chapter 7, Planning Service-oriented BizTalk Solutions, we talked about how to chain orchestrations together. The simplest way to do so (from a developer's perspective) is to use the Start Orchestration or Call Orchestration shapes and explicitly invoke one orchestration from another. While this strategy is easy to develop and allows for transfer of more than just message data (such as variables and ports), it's also a very tightly coupled and inflexible way to connect stages of a business process if they are prone to change. If this is the case, you should pursue a route of MessageBox
direct binding which enables fully encapsulated, reusable orchestrations that can be invoked by a wide number of clients (for example, services or other orchestrations).
What if your business process consists of a number of discrete steps that are subject to change over time? That is, let's assume a process by which an inbound "adverse event" must pass through...