<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Business Rules and BPM</title>
	<atom:link href="http://itredux.com/2006/01/30/business-rules-and-bpm/feed/" rel="self" type="application/rss+xml" />
	<link>http://itredux.com/2006/01/30/business-rules-and-bpm/</link>
	<description>New Rules for a New IT World</description>
	<pubDate>Wed, 03 Dec 2008 21:26:13 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7-beta3</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Henry Bowers</title>
		<link>http://itredux.com/2006/01/30/business-rules-and-bpm/comment-page-1/#comment-311</link>
		<dc:creator>Henry Bowers</dc:creator>
		<pubDate>Fri, 10 Feb 2006 03:12:13 +0000</pubDate>
		<guid isPermaLink="false">http://itredux.com/blog/2006/01/30/business-rules-and-bpm/#comment-311</guid>
		<description>In the same way that business processes and business policies are equal and independent - but interlaced -aspects of a company's operations, BPMS and BRMS are equal and independent - but interlaced - technologies that support the management of these aspects. 

Neither of these new management systems should be subsumed by the other, included in the other, or otherwise enveloped by the other. 

As long as there is benefit to be gained in using BRMS with OR without BPMS (and there is), BRMS should remain independent.</description>
		<content:encoded><![CDATA[<p>In the same way that business processes and business policies are equal and independent - but interlaced -aspects of a company&#8217;s operations, <span class="caps">BPMS</span> and <span class="caps">BRMS</span> are equal and independent - but interlaced - technologies that support the management of these&nbsp;aspects. </p>
<p>Neither of these new management systems should be subsumed by the other, included in the other, or otherwise enveloped by the&nbsp;other. </p>
<p>As long as there is benefit to be gained in using <span class="caps">BRMS</span> with <span class="caps">OR</span> without <span class="caps">BPMS</span> (and there is), <span class="caps">BRMS</span> should remain&nbsp;independent.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Howard Smith</title>
		<link>http://itredux.com/2006/01/30/business-rules-and-bpm/comment-page-1/#comment-307</link>
		<dc:creator>Howard Smith</dc:creator>
		<pubDate>Thu, 09 Feb 2006 20:22:35 +0000</pubDate>
		<guid isPermaLink="false">http://itredux.com/blog/2006/01/30/business-rules-and-bpm/#comment-307</guid>
		<description>Short version: Business processes come from the field of concurrent processing (e.g. pi calculus). Business rules come from the field of predicate calculus (e.g. forward and backward chaining). The two computational paradigms share little in common. But they make a great combination.

A BPMS, in my view, need to combine a process vm with a BRMS (Business Rules Management System). This provides the required business agility. The BRMS allows for the management of the business rules, which is very convenient for some tasks - such as changing a policy in real time or in response to external events. A BPMS needs a BRMS inside.

How about some terminological agreements for BPM 2.0:

- BPMS - Business Process Management System
- BRMS - Business Rules Mamagement Systm
- BRE - Business Rules Engine, within a BRMS
- pvm - Process Virtual Machine, within a BPMS
- A BPMS includes a BRMS</description>
		<content:encoded><![CDATA[<p>Short version: Business processes come from the field of concurrent processing (e.g. pi calculus). Business rules come from the field of predicate calculus (e.g. forward and backward chaining). The two computational paradigms share little in common. But they make a great&nbsp;combination.</p>
<p>A <span class="caps">BPMS</span>, in my view, need to combine a process vm with a <span class="caps">BRMS</span> (Business Rules Management System). This provides the required business agility. The <span class="caps">BRMS</span> allows for the management of the business rules, which is very convenient for some tasks - such as changing a policy in real time or in response to external events. A <span class="caps">BPMS</span> needs a <span class="caps">BRMS</span>&nbsp;inside.</p>
<p>How about some terminological agreements for <span class="caps">BPM</span>&nbsp;2.0:</p>
<p>- <span class="caps">BPMS</span> - Business Process Management System<br />
- <span class="caps">BRMS</span> - Business Rules Mamagement Systm<br />
- <span class="caps">BRE</span> - Business Rules Engine, within a <span class="caps">BRMS</span><br />
- pvm - Process Virtual Machine, within a <span class="caps">BPMS</span><br />
- A <span class="caps">BPMS</span> includes a&nbsp;<span class="caps">BRMS</span></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jacques-Alexandre Gerber</title>
		<link>http://itredux.com/2006/01/30/business-rules-and-bpm/comment-page-1/#comment-252</link>
		<dc:creator>Jacques-Alexandre Gerber</dc:creator>
		<pubDate>Fri, 03 Feb 2006 07:30:17 +0000</pubDate>
		<guid isPermaLink="false">http://itredux.com/blog/2006/01/30/business-rules-and-bpm/#comment-252</guid>
		<description>To help those that may still be confused by how business processes can be so different from business rules, let me try to propose some properties to distinguish them. These are debatable, but I often find them to be quite useful to determine whether I should implement some business logic as a business rule or as a business process.

Visibility. When you consider a business rule, which is all about evaluating some conditions within a specific context, it does not really matter how the rule is computed. You only really care about its outcome, so that you can decide what to do next. You do not need to track every single steps the logic went through in order to give you the output. Business processes are quite the opposite. Traceability is key and you want to make sure that a business process follows exactly all the steps you want it to, and you also want to be able to check after completion that indeed it did what you expected. If you consider certification processes, the "how" you got certified (or not) is at least as important as the outcome.

Completeness. It is very important for business rules to capture all possibilities. For example, when insurance companies validate claims and check all sorts of parameters to evaluate what to do with them, it is critical that there is not a single combination of these parameters that could not be treated in a way or another. Business rules must support the complete problem they have been designed to support. On the contrary, it is totally acceptable not to have business processes for everything.

Consistency. Business rules must be consistent within the "space" where they apply. There should not be conflicting rules that could lead to two different decisions with the same or overlapping data sets. Although consistency is typically better, it is acceptable for business processes not to be consistent. It might even be a good idea to deploy inconsistent processes in order to investigate how they perform and identify which strategy works better. Again, this is typically not an objective to define inconsistent processes, but it is interesting to notice that enforcing consistency is not as important for business processes as for business rules.

Performance. Typically, it does not matter how rules are being executed (see visibility) but it really matters that they are computed as fast as possible as they often constitute a performance bottleneck (CPU cycles). Time is an important aspect of a business process. Executing processes as fast as can be is typically not the primary objective. Using a BPMS to code logic that should execute as fast as possible is not using the right tool for the right thing.

This is not an exhaustive list but hopefully it can be helpful. What is interesting about these properties is that for each of them the difference may sometimes be as clear as I described it here. In fact, in many cases, they overlap. This may explain why there is so much confusion between the two, and why some people stretch a Business Process engine to use it as a Business Rule Engine and vice versa.

The above properties are also interesting as they can help understanding what differentiates a business process engine from a business rule engine, internally. A BRE will typically compile business rules, optimize the generated code, consolidate it, etc. Just like a compiler. A Business Process Engine works more like a virtual machine. It does not make sense for a process engine to compare processes between them and try to optimize the technical execution. Business processes are improved by analyzing business performancel, whereas business rules are improved thanks to mathematical algorithms to simplify them and optimize their global execution. This is also why you have so many different types of rule engines (they will like to talk about their rocket science) but not so many different types of business process engines (where there is really no rocket science).

So when you have to implement some logic and you are not sure if you need a business rule engine or a business process engine, think about what's more important to you: execution speed, consistency checking, and completeness or traceability, business activity monitoring and business performance analysis.</description>
		<content:encoded><![CDATA[<p>To help those that may still be confused by how business processes can be so different from business rules, let me try to propose some properties to distinguish them. These are debatable, but I often find them to be quite useful to determine whether I should implement some business logic as a business rule or as a business&nbsp;process.</p>
<p>Visibility. When you consider a business rule, which is all about evaluating some conditions within a specific context, it does not really matter how the rule is computed. You only really care about its outcome, so that you can decide what to do next. You do not need to track every single steps the logic went through in order to give you the output. Business processes are quite the opposite. Traceability is key and you want to make sure that a business process follows exactly all the steps you want it to, and you also want to be able to check after completion that indeed it did what you expected. If you consider certification processes, the &#8220;how&#8221; you got certified (or not) is at least as important as the&nbsp;outcome.</p>
<p>Completeness. It is very important for business rules to capture all possibilities. For example, when insurance companies validate claims and check all sorts of parameters to evaluate what to do with them, it is critical that there is not a single combination of these parameters that could not be treated in a way or another. Business rules must support the complete problem they have been designed to support. On the contrary, it is totally acceptable not to have business processes for&nbsp;everything.</p>
<p>Consistency. Business rules must be consistent within the &#8220;space&#8221; where they apply. There should not be conflicting rules that could lead to two different decisions with the same or overlapping data sets. Although consistency is typically better, it is acceptable for business processes not to be consistent. It might even be a good idea to deploy inconsistent processes in order to investigate how they perform and identify which strategy works better. Again, this is typically not an objective to define inconsistent processes, but it is interesting to notice that enforcing consistency is not as important for business processes as for business&nbsp;rules.</p>
<p>Performance. Typically, it does not matter how rules are being executed (see visibility) but it really matters that they are computed as fast as possible as they often constitute a performance bottleneck (<span class="caps">CPU</span> cycles). Time is an important aspect of a business process. Executing processes as fast as can be is typically not the primary objective. Using a <span class="caps">BPMS</span> to code logic that should execute as fast as possible is not using the right tool for the right&nbsp;thing.</p>
<p>This is not an exhaustive list but hopefully it can be helpful. What is interesting about these properties is that for each of them the difference may sometimes be as clear as I described it here. In fact, in many cases, they overlap. This may explain why there is so much confusion between the two, and why some people stretch a Business Process engine to use it as a Business Rule Engine and vice&nbsp;versa.</p>
<p>The above properties are also interesting as they can help understanding what differentiates a business process engine from a business rule engine, internally. A <span class="caps">BRE</span> will typically compile business rules, optimize the generated code, consolidate it, etc. Just like a compiler. A Business Process Engine works more like a virtual machine. It does not make sense for a process engine to compare processes between them and try to optimize the technical execution. Business processes are improved by analyzing business performancel, whereas business rules are improved thanks to mathematical algorithms to simplify them and optimize their global execution. This is also why you have so many different types of rule engines (they will like to talk about their rocket science) but not so many different types of business process engines (where there is really no rocket&nbsp;science).</p>
<p>So when you have to implement some logic and you are not sure if you need a business rule engine or a business process engine, think about what&#8217;s more important to you: execution speed, consistency checking, and completeness or traceability, business activity monitoring and business performance&nbsp;analysis.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Taylor</title>
		<link>http://itredux.com/2006/01/30/business-rules-and-bpm/comment-page-1/#comment-246</link>
		<dc:creator>James Taylor</dc:creator>
		<pubDate>Tue, 31 Jan 2006 20:05:01 +0000</pubDate>
		<guid isPermaLink="false">http://itredux.com/blog/2006/01/30/business-rules-and-bpm/#comment-246</guid>
		<description>Excellent summary Bruce. The ongoing confusion between the rules in BPM and other applications and the use of business rules technology to automate decisions is not helping anyone. Thanks for helping to keep these clear and distinct.</description>
		<content:encoded><![CDATA[<p>Excellent summary Bruce. The ongoing confusion between the rules in <span class="caps">BPM</span> and other applications and the use of business rules technology to automate decisions is not helping anyone. Thanks for helping to keep these clear and&nbsp;distinct.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
