Developer's Toolkit

Blog archive

Windows Workflow Foundation and Business Process Modeling

I have an ongoing professional interest in business process modeling (BPM). I did an afternoon workshop on the topic at the FTP Enterprise Architect Summit last month, and I played to a packed and very engaged room full of professionals. That's why I attended the Microsoft TechEd session on using the upcoming Windows Workflow Foundation (WWF – now in beta version 2.2, if you can believe that numbering scheme) and using a state-based approach to building workflow applications.

I gave a brief demonstration of WWF in my workshop at the Enterprise Architect Summit. My sense at the time was that it was useful in tying together both modeling and the actual code that implements the model, but I was disappointed that it didn't follow one of the already-established standards. Both the Business Process Modeling Language (and the accompanying Business Process Modeling Notation) and the Business Process Execution Language (BPEL) have significantly more industry backing and tool support than WWF. The new technology, which will be in beta until at least the release of Windows Vista, seeks to establish yet another standard, and one that is tied closely to Vista and Visual Studio.

The principal advantage of WWF is that it provides a seamless interface between the workflow model and the code that implements that model. In contrast, BPMN is a notation language only, and while BPML provides the execution language for the notation, there is not the tight integration that Microsoft has created between model and code. As a state machine, WWF can probably be modeled by a state-based approach such as BPMN or Petri nets, but that removes the link between model and code.

While I came away impressed with the power and simplicity of WWF, I still can't help but think that it confuses rather than solidifies the BPM world. It is a good approach for those who rely on Windows and a Microsoft language for their workflow applications, but few enterprises fall entirely into this category. Instead, I would like to see Microsoft support one of the established standards while providing a similar link to Visual Studio and .NET code.

Posted by Peter Varhol on 06/13/2006

comments powered by Disqus


  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot AI has been a boon for developers, but it might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube