[Guest Blogger] Guy Barrette on Workflows

Guy Barrette (Microsoft Regional Director, Microsoft Most Valuable Professional (MVP))

[WinFX] Have You Ever Worked With Workflows?

Have you ever worked with workflows? Neither did I. Oh yeah, I often use flow diagrams but these guys are static; useful to describe the program logic but not very useful when you want to apply them to your apps. I recently looked at Windows Workflow Foundation (WinWF) and I was blown away. Windows Workflow Foundation (WinWF) is part of WinFX, a set of APIs that will extend the .NET Framework 2.0.

I'm going to make a bold statement here; I think that Windows Workflow Foundation (WinWF) will change the way we code applications like OOP changed it some times ago. Why? First of all, Windows Workflow Foundation (WinWF) is free. Usually workflow engines cost in the thousands. Secondly, it is part of the WinFX so it will be installed everywhere. Third, objects get their full meaning when used in workflows. Picture this: you'll write Lego blocks using the well known and well adopted OOP techniques and then, you'll insert these objects right into the program logic using a visual designer. Fourth, Microsoft will use Windows Workflow Foundation (WinWF) in Office 2007, SharePoint 2007, the next version of BizTalk, Dynamics and so on.

Coding with workflows gives you a graphical view of the program logic, something pretty hard with the tools we have right now. Let's say that you're looking at the source code of an app that you didn't write. Where do you start looking? The Main sub? Then what? You place a breakpoint and step to discover what objects are called, right? A workflow gives you a graphical representation of code logic.

Will Windows Workflow Foundation (WinWF) create a cleavage between developers similar to the one created by the adoption (or non-adoption) of OOP a while ago? That's what I'm afraid of.

Interested in learning more? Take a look at the Windows Workflow Foundation (WinWF) community site at www.windowsworkflow.net

Guy Barrette is a Solutions Architect based in Montreal, Canada. He is the Microsoft Regional Director for the Montreal region and a Microsoft Most Valuable Professional (MVP) for ASP/ASP.NET. He has been working and developing with Microsoft development tools since the launch of VB 3 in 1994. His focus is helping organizations create better software using Microsoft Team System and other Microsoft tools and also architecturing and developing Web applications. He's been a speaker at developers' conferences like Microsoft DevDays and DevTeach. Speaking of DevTeach, Guy is the tech chair for the French track. Guy has the following Microsoft certifications: Site Builder and Solution Developer. Guy is also president of the Montreal Visual Studio User Group, writes a monthly .NET book review column for the Level Extreme Magazine (www.levelextreme.net) and is the Visual Studio Talk Show Internet radio show co-host (www.visualstudiotalkshow.com).