Charles Young

  Home  |   Contact  |   Syndication    |   Login
  201 Posts | 64 Stories | 521 Comments | 373 Trackbacks



Article Categories


Post Categories

Image Galleries

Alternative Feeds

BizTalk Bloggers

BizTalk Sites

CEP Bloggers

CMS Bloggers


Other Bloggers

Rules Bloggers

SharePoint Bloggers


WF Bloggers

Microsoft Business Rule Framework

I’ve been asked a few times how the performance of WF (Windows Workflow Foundation) Rules compares with that of the Microsoft Business Rules Engine (MS BRE). Having done no testing, I could only guess at the answer. I’ve now undertaken some initial performance testing to compare WF and MS BRE, and decided to publish the results. You can read my write-up of the results here. ......

I got an email today requesting help in deciding the appropriate selection of rule processing technology for a workflow application.   I’ve got requests like this before, so I’ve decided to post a reply publically.

I posted an article on MS BRE side effects yesterday. I had immediately to withdraw it for a few hours because I realised it was incomplete (and actually a little wrong) in one part. Then I noticed I had swapped the legend text on the graph making it appear that caching made things slower, rather than faster! I then discovered today that for the last three years I have been completely ignorant of the fact that you can drag and drop object constructors onto the 'assert' argument in the Rules Composer ......

For almost two years now, I've been intending to write an article about the mysterious 'side effects' flag used in Microsoft Business Rule Engine policies. Microsoft documents this feature (see, and describes very briefly how to control it. The mystery that surrounds this flag arises because it is represented by an attribute named 'sideeffects' in Microsoft's BRL (Business Rule Language) although it actually controls a caching mechanism,

I recently had reason to revisit the exact mechanisms Microsoft use when you assert facts to the Microsoft Rules Engine. I was discussing stuff on-line with a fellow rules enthusiast when a terrible thought occurred to me. Can the MS BRE always uniquely identify each different fact, or is there a chance that sometimes it might confuse two facts with each other? For a couple of days, I was convinced that I had stumbled on a significant bug. Indeed, at one point, I thought there was such a serious ......

This is the third and final part of a three-part series, as follows: · Part 1: Situating the Business Rules Engine · Part 2: Backward Chaining: the 'Simple Name' pattern · Part 3: Backward Chaining: the ‘Bound Variable' pattern In Part 2 we looked at how developers can use procedural attachments and 'directive events' to implement a simple form of backward chaining for Microsoft's Business Rule Engine. In this third, and final, part, we will extend the code to tackle more complex backward-chaining ......

This is the second of a three-part series, as follows: Part 1: Situating the Business Rules Engine Part 2: Backward Chaining: the 'Simple Name' pattern Part 3: Backward Chaining: the ‘Bound Variable' pattern In part one of this three-part series, I explained some of the historical influences that led Microsoft to design their Business Rules Engine as a 'situated reasoning engine'. In this second part, I want to look at a pattern that exploits these features. Microsoft's engine is often described ......

Being known for my interest in rules processing, I quite often get asked to help with problems with MS BRE. A couple of days ago, I was asked to help investigate an issue occurring in production for a BizTalk Server application. Occasionally, in a fairly high throughput system, BizTalk logs an error stating that a problem has been encountered while executing a rule set. That is the only information provided, with no hint of what the problem might be, and because the issue only occurs intermittently ......

A question came up tonight on BizTalkGurus on my favourite subject of rule engines. I don’t blog enough these days, so this gives me an excuse. Essentially, the question concerned an incorrect, but understandable, suspicion that MS BRE may be using remoting to execute rule sets out-of-process. This is not the case. You can find an article describing what actually happens at: ......

My fellow BizTalk MVP, Leonid Ganeline, asked if I would comment further on mechanisms to govern sequential flow in rules in MS BRE. He was picking up on some comments I made in my article comparing WF and MS BRE rule performance (see What I had in mind was the use of state transition patterns within rule sets. These can be used to layer a degree of sequential control over the set-based pattern matching approach taken by engines ......

Full Microsoft Business Rule Framework Archive