For a developer like me, can orchestration help simplify the task of writing business logic needed for integrating asynchronous Web services into my application?"
I am assuming that you are a mainstream developer possessing a commonly available skill set, such as Java programming. Writing code for expressing business logic to handle asynchronous interactions, dynamic flow control and long-running, multi-step business (compensating) transactions is usually a daunting task for developers. It is not unusual for a development team to spend weeks or even months on constructing infrastructure for the application.
Common tasks developers have to perform include: Designing a database schema to represent a state machine, writing code to persist interactions state and conversational context to a database, designing a correlation scheme to map responses back to the requests that initiated them, handling remote exceptions, watching for timeouts on asynchronous service invocations, transforming between programming language constructs and XML (e.g. Java/XML mapping), etc.
Developer tasks become even more complicated when developers have to add support for transactions, reliability (e.g. persistence to ensure recoverability) and scalability. The business logic often gets fragmented and mixed with plumbing code which makes the application difficult to manage and difficult to adapt.
An orchestration solution helps developers to write logic for integrating asynchronous Web services into their application by providing the infrastructure to handle the plumbing complexities. This enables developers to focus on authoring orchestration logic leveraging their skill set and coding at the application level using effective abstractions. An effective orchestration solution also enables developers to keep the code modular and easy to modify to address changes as dynamic business conditions invariably command.
Dig Deeper on Topics Archive
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.