<Disclaimer>This is personal notes of what I retained during the session. This can be incomplete, partially right or wrong. It is just part of the notes I took and what retained my attention. Nothing prevents the user to get more information on their favorite web site.</Disclaimer>
Todays, applications are facing mainly three challenges : distributed work, code coordination leading to complexity, and, finally, the management and the tracking of these applications is not trivial.
The goal of a WF program is to coordinate work, but the problem with such applications it that it needs a hosting process to run. According to Jon Flanders, the hosting code is taking most of the development time. Moreover, this hosting process code is not the most interesting one to write.
The aim of Dublin is to be the host process by choice of WF applications and this platform is coming with two main applications : Visual Studio Designed using WPF, and an improved version of Visual Studio Debugger. Whereas with the .NET framework 3.5 two execution models are available, State Machine and Sequential, WF 4.0 comes with a third one : Flowchart. This execution model allows to design workflows with branches, loop that are more complex that with sequential workflows.
Another problem with 3.5 is that parallel activities were not running in separated threads, meaning that a pseudo parallelism was in place. WF4.0 introduces a true parallelism and the runtime is able to coordinate multiple activities at the same time.
A little comment from Jon says that code activity should not be used, because it hides the purpose of the workflow whereas a goal of a workflow should be understandable by looking at the design itself.
WF 4.0 introduces compensation through a dedicated activity (Compensable Activity) and also two types of correlation : context based or content based (like BizTalk). The former one is only working in Request-Response scenario. The latest, on its side, one-way communication can also be used.
Finally, Dublin supports tracking and configuration through dedicated consoles applications.