Wednesday, 12 November 2008

Day 3 - 10:45 : Windows Workflow Foundation 4.0: A first look (SOA207)

Presented by Aaron Skonnard, co-founder Pluralsight, this session looked at the up-coming release of windows workflow foundation 4.0.

Firstly, my definition of workflow is slightly different to how MS define workflow. I think of workflow as the definition of a process - usually some form of state machine type process which involves activities consisting of system and human interaction. MS define workflow the same in most ways, but consider workflow to additionally be a new way to write software overall.

In this guise, WF helps to move traditional sequential processing (get input, store state, with control flow logic) into a loose coupled distributed world (SOA). However, the current implementation of WF has challenges for adoption including;

  • Limited support for XAML only workflows.
  • Versioning is problematic
  • Limited base activity library
  • Writing custom activities and managing data flow is not easy enough today
  • Limited WCF integration and activity support
  • No generic server host environment

WF 4.0 aims to address these issues in .NET 4.0 by introducing:

  • XAML only workflows are the new default, with a unified model between WF, WCF and WPF. (Set breakpoints in XAML, designer writes XAML etc)
  • Extended base activity library
    • Flow Control
      • Flowchart
      • ForEach
      • DoWhile
      • Break
    • WCF
      • SendMessage
      • ReceiveMessage
      • ClientOperation
      • ServiceOperation
      • CorrelationScope
      • InitializeCorrelation
    • Others
      • Assign
      • MethodInvoke
      • Persist
      • Interop
      • PowerShellCommand
    • + MS are planning to ship additional activities via codeplex.
  • Simplified WF programming model
  • Support for arguments, variables, expressions
  • Major improvements to WCF integration
  • Runtime and designer improvements (designer is WPF based)
  • Hosting and management via "Dublin"

No comments:

Post a comment