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 at 1:15 PM

comments powered by Disqus


  • How to Create a Machine Learning Decision Tree Classifier Using C#

    After earlier explaining how to compute disorder and split data in his exploration of machine learning decision tree classifiers, resident data scientist Dr. James McCaffrey of Microsoft Research now shows how to use the splitting and disorder code to create a working decision tree classifier.

  • Microsoft: Move from Traditional ASP.NET to 'Core' Requires 'Heavy Lifting'

    There are plenty of reasons to move traditional ASP.NET web apps -- part of the old .NET Framework -- to the new cross-platform direction, ASP.NET Core, but beware it will require some "heavy lifting," Microsoft says.

  • Purple Blue Nebula Graphic

    How to Compute Disorder for Machine Learning Decision Trees Using C#

    Using a decision tree classifier from a machine learning library is often awkward because it usually must be customized and library decision trees have many complex supporting functions, says resident data scientist Dr. James McCaffrey, so when he needs a decision tree classifier, he always creates one from scratch. Here's how.

  • Blazor's Future: gRPC Is Key

    Blazor guru Steve Sanderson detailed what Microsoft is thinking about the future of the revolutionary project that enables .NET-based web development using C# instead of JavaScript, explaining how gRPC is key, along with a new way of testing and a scheme for installable desktop apps.

  • Don't Do It All Yourself: Exploiting gRPC Well Known Types in .NET Core

    If you're creating business services that send dates and decimal data then you may be concerned that gRPC services don't support the relevant data types. Don't Panic! There are solutions. Here's how to use them.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events