BizTalk vs WF
Someone looks at BizTalk Server one day and asked “why BizTalk has this racing issue?” why does BizTalk is our only product providing workflows ?why can’t we do so? And why do I have to buy a BizTalk license to use a workflow ?
Answer : ok don’t be upset . we will remove the feature from BizTalk and put it inside .NET Framework and call it windows workflow foundation (WF) NOT (WWF) so everyone can leverage it J
SharePoint 2007 is hosting WF and use its full features. So SharePoint workflows are WF workflows with some customizations. Next version of BizTalk will utilize WF to manage the framework of workflows.
Perhaps the most well-known Microsoft implementation of workflow today is in BizTalk Server. BizTalk Server lets developers create system workflows for business process management (BPM), enterprise application integration (EAI), and business-to-business (B2B) integration.
BizTalk Server and WF have some obvious similarities. To a developer, for example, the BizTalk Server Orchestration Designer looks much like WF’s Workflow Designer. This commonality is no accident—the same group at Microsoft is responsible for both technologies. What follows are some guidelines to help in making this decision.
Use WF when:
n An application will itself host workflows. WF lets workflow be built into an application, allowing the workflow to be deployed and managed as a native part of the application. Because it’s focused on integrating diverse applications rather than providing a general workflow framework, BizTalk Server always runs orchestrations within the BizTalk Server process.
n The business process being implemented requires human workflow intervention. WF supports Human interaction with the progress of the workflow from approval to tracking, etc…
n BizTalk Server addresses system workflow, and so it lacks WF’s support for things such as state machine workflows (neither sequential nor parallel). State machine workflows are event based workflow. You don’t know the exact order of steps in the workflow , it totally depends on events . if the user takes action1 then step 3 is executed , if the user takes action2 then step 5 is executed and so on..
n dynamic update. When you can change the steps of the workflow on the fly while the workflow is currently being executed .
n The workflow will execute on a client system. BizTalk Server is a server-focused product, and so it’s less well-suited to run on desktop machines.
Use BizTalk Server when:
n Solving an EAI problem that requires communication with diverse applications on diverse platforms. Because of its focus on cross-platform integration, a large set of adapters is available for BizTalk Server that allows communication with a range of other software. WF is focused solely on workflow, not EAI, and so it doesn’t provide these things.
n B2B services are required. WF doesn’t address this area, while BizTalk Server provides tools for working with trading partners, accelerators for RosettaNet, SWIFT, and other industry standards, and more.
n BPM services, such as Business Activity Monitoring (BAM) are needed. While the WF tracking infrastructure can be used to create these services, BizTalk Server provides important extras, such as tools that let information workers define their own BAM views.
n Messaging infrastructure, where BizTalk provides schemas, tracking, reliable messaging, routing, transformations, etc….
n A complete management infrastructure and support for increased scalability are necessary. Unlike WF, BizTalk Server includes a full set of tools for administering and scaling a production environment.
Marriage of 2 worlds :
A scenario that requires both human workflow and more complex system integration services could be addressed by using WF and BizTalk Server together, however. For example, the Office “12” support for document-centric workflows, based on Windows SharePoint Services, might be used for the human aspects of the problem, while BizTalk Server handles the system integration aspects. The two can interoperate using the BizTalk Server Adapter for SharePoint.