- Technology maturity – Integration tools like BizTalk Server have exposed a reliable workflow capability (e.g. "orchestration") for many years. Many of these integration servers have achieved higher levels of reliability while increasing the breadth of their line of business (LoB) adapters. BizTalk Server, for example, was re-architected in 2004 to enable enterprise-class scalability and reliability. BizTalk Server 2006 built on the previous version’s improvements by focusing on management, improved messaging and web services while increasing the number and type of adapters that are included with the product. Developer frameworks like Windows Workflow Foundation (WF) enable developers to embed and expose workflow capabilities within an application with minimal effort. The flexibility of a framework like WF supports both automated and human workflows, joining the two “worlds” of workflow that have previously required vastly different tools. The extensibility of WF also supports emerging standards like WS-BPEL while enabling developers to define organization-specific or domain-specific “building blocks” (activities) that can be leveraged in current and future workflow solutions.
- Enterprise maturity – Each year, Gartner’s Executive Program releases their “CIO Agenda” - a list of CIO business and technology priorities compiled from worldwide surveys of their members. 2006 was the second consecutive year in which business process improvement was identified as the CIO’s top business priority, based upon the 1400 global CIOs that participated in the survey.
- Industry maturity – The IT industry as a whole is repositioning itself as an enabler instead of a constrainer business processes, partnering with both users and analysts to help define and implement processes. This collaborative approach avoids the potential risk of misalignment with business objectives (a risk that is frequently realized by adopting a typical “bottom-up” approach to software development).
- Workflow is everywhere
- User Interface (UI) Flows: Using the state of a workflow instance to configure the UI (enable/disable buttons, etc), pageflows with ASP.NET, driving a menuing system and how the Composite UI Application Block (CAB) can make use of WF in a future release. We can also use workflow to orchestrate services or develop and publish our workflows as a service.
- Workflow models can take many forms - the three most common models are sequential, state machines and business rules (sometimes referred to as "data driven"). While there are no hard and fast rules for determining which model to use when there are some well-documented principles that help determine which model may be best for your situation.
- We can modify, interrogate or otherwise manipulate workflows at design time and run time. I showed how we can serialize workflow state (for a long running process), modify a workflow on the fly (adding/removing activities) and modify behavior on the based a set of context-based parameters passed into the workflow at runtime.
- Workflow can bridge the worlds of structured data and structured processes in a system-to-system workflow with the highly unstructured data and processes typically found in a human workflow. SharePoint 2007 ships with several human workflows (built on WF), enabling scenarios such as document routing, management approval and others. The new SharePoint adapter in BizTalk Server 2006 makes it much easier to "bridge" the worlds of system-to-system and human workflows, enabling BizTalk to task a specialist address a specific exception or modify business rules based on the volume or types of exceptions that may arise.
- Workflow is easier to visualize, understand. We can share workflow models with non-technical end-users to communicate the intent of the workflow while maintenance programmers can use the model to both understand and maintain the workflow (or service, if the workflow was published as a such). Demonstrations here included WF"s tracking mechanisms, serialization to XAML and generating the XAML on other platforms for instantiation within WF.
More booth babe duty today again. I need to get out and check out the other exhibitors I hear there are some cool demos on display. IBM is here with Viper - I'm interested in learning about its XML capabilities. I'll try to include a review of who's on the floor and what's cool in an upcoming post.