<?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 Hidden in Use Cases</title>
	<atom:link href="http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/feed/" rel="self" type="application/rss+xml" />
	<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/</link>
	<description>Software product success.</description>
	<lastBuildDate>Sun, 12 Feb 2012 19:10:25 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
	<item>
		<title>By: Shai S.</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-596865</link>
		<dc:creator>Shai S.</dc:creator>
		<pubDate>Wed, 26 May 2010 15:40:34 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-596865</guid>
		<description>Here is a nother example:

Use case: View order processing claendar (i.e., what are my cut-off times for order processing)
1. Use chooses to view the order processing calendar
2. System displays the order processing cut-off start time and end times.
BR: cut-off start and end time is based on either historical actuals (i.e., what were the official times) or based on a future schedules start and end time.

Should this be a BR? What we are trying to say is, that in another &quot;configuration&quot; use case, we can potentially change the cut-off start and end times, which should be reflected correctly when I execute the view order processing calendar.

So bottomline, is I don&#039;t know whether to write this as a rule or just say the system will lookup this information as part of the flow.

Any thoughts?
thank you</description>
		<content:encoded><![CDATA[<p>Here is a nother example:</p>
<p>Use case: View order processing claendar (i.e., what are my cut-off times for order processing)<br />
1. Use chooses to view the order processing calendar<br />
2. System displays the order processing cut-off start time and end times.<br />
BR: cut-off start and end time is based on either historical actuals (i.e., what were the official times) or based on a future schedules start and end time.</p>
<p>Should this be a BR? What we are trying to say is, that in another &#8220;configuration&#8221; use case, we can potentially change the cut-off start and end times, which should be reflected correctly when I execute the view order processing calendar.</p>
<p>So bottomline, is I don&#8217;t know whether to write this as a rule or just say the system will lookup this information as part of the flow.</p>
<p>Any thoughts?<br />
thank you</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shai S.</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-596861</link>
		<dc:creator>Shai S.</dc:creator>
		<pubDate>Wed, 26 May 2010 15:35:41 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-596861</guid>
		<description>Thanks for the good article. I learn by example, and I have found several situation in which I was confounded as to what approach I should take to document a use case. here are some good examples:

1. Accept claim use case
Flow:
1.1 timestamp the claim (once received)
1.2 Validate the calim (this would involve, structural validations - e.g., NCPDP trxn, format validations - required vs optional, numeric vs alpha, etc, content - if the member&#039;s insurance company is &quot;X&quot; and the date of claim is before &quot;Y&quot; then associate claim to insurance company &quot;Z&quot;, etc)
1.3 Based on validation determine whether to reject or continue claim processing.

This is a simple 3 step use case it seems. But, 1.2 has tons of validation rules falling under structure (purely a technical transaction concern), format, content. How do you propose these rules are documented? I mean there can be 100s of rules. For example,
For the Rx number there could be rules like, Rx number must  be numeric. Rx number should have 10 digits.

How about if there was a requirement that said, if Rx number starts with &quot;1&quot; this claim is a worker&#039;s comp claim.
etc...

Bottomline...how would someone document this rules (stuctural, format, content - business and technical) be documented?</description>
		<content:encoded><![CDATA[<p>Thanks for the good article. I learn by example, and I have found several situation in which I was confounded as to what approach I should take to document a use case. here are some good examples:</p>
<p>1. Accept claim use case<br />
Flow:<br />
1.1 timestamp the claim (once received)<br />
1.2 Validate the calim (this would involve, structural validations &#8211; e.g., NCPDP trxn, format validations &#8211; required vs optional, numeric vs alpha, etc, content &#8211; if the member&#8217;s insurance company is &#8220;X&#8221; and the date of claim is before &#8220;Y&#8221; then associate claim to insurance company &#8220;Z&#8221;, etc)<br />
1.3 Based on validation determine whether to reject or continue claim processing.</p>
<p>This is a simple 3 step use case it seems. But, 1.2 has tons of validation rules falling under structure (purely a technical transaction concern), format, content. How do you propose these rules are documented? I mean there can be 100s of rules. For example,<br />
For the Rx number there could be rules like, Rx number must  be numeric. Rx number should have 10 digits.</p>
<p>How about if there was a requirement that said, if Rx number starts with &#8220;1&#8243; this claim is a worker&#8217;s comp claim.<br />
etc&#8230;</p>
<p>Bottomline&#8230;how would someone document this rules (stuctural, format, content &#8211; business and technical) be documented?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Decision points — JT on EDM</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-557047</link>
		<dc:creator>Decision points — JT on EDM</dc:creator>
		<pubDate>Wed, 10 Feb 2010 22:49:52 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-557047</guid>
		<description>[...] friend (Scott Sehlhorst) blogged on Business Rules Hidden in Use Cases and I wrote about keeping business rules out of your use cases using [...]</description>
		<content:encoded><![CDATA[<p>[...] friend (Scott Sehlhorst) blogged on Business Rules Hidden in Use Cases and I wrote about keeping business rules out of your use cases using [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Locke</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-514813</link>
		<dc:creator>David Locke</dc:creator>
		<pubDate>Mon, 17 Aug 2009 06:34:25 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-514813</guid>
		<description>A policy when rendered as a requirement embeds the policy in code. A policy when rendered as a business rule, is data. When a business manager changes a policy that has been embedded in code, they must task IT/development with making the change. If that policy had been rendered as data, the manager would change that data. 

A sales commission might be set at 25% of the revenue from a sale. There is no reason why a programmer should be required to change the percentage involved. That percentage is a business rule. The computation of the revenue from a sale would likewise be a business rule. 

What is required is the ability to use the specified percentage from the business rule in the calculation of the sales commission. 

Signals travel around a circuit. The signal can vary, but the circuit is stable. The signal is the business rule. The circuit is the use of the signal in the calculation. 

The circuit is the carrier. The signal is the carried. Requirements define the carrier or infrastructure. A business rule defines the carried or content. 

The circuit or carrier must be built, hence a requirement. The requirements need not change when the carried varies.</description>
		<content:encoded><![CDATA[<p>A policy when rendered as a requirement embeds the policy in code. A policy when rendered as a business rule, is data. When a business manager changes a policy that has been embedded in code, they must task IT/development with making the change. If that policy had been rendered as data, the manager would change that data. </p>
<p>A sales commission might be set at 25% of the revenue from a sale. There is no reason why a programmer should be required to change the percentage involved. That percentage is a business rule. The computation of the revenue from a sale would likewise be a business rule. </p>
<p>What is required is the ability to use the specified percentage from the business rule in the calculation of the sales commission. </p>
<p>Signals travel around a circuit. The signal can vary, but the circuit is stable. The signal is the business rule. The circuit is the use of the signal in the calculation. </p>
<p>The circuit is the carrier. The signal is the carried. Requirements define the carrier or infrastructure. A business rule defines the carried or content. </p>
<p>The circuit or carrier must be built, hence a requirement. The requirements need not change when the carried varies.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Planet Project: Improve Reusability of Use Cases by Extracting Business Rule</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-450382</link>
		<dc:creator>Planet Project: Improve Reusability of Use Cases by Extracting Business Rule</dc:creator>
		<pubDate>Fri, 17 Oct 2008 10:31:05 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-450382</guid>
		<description>[...] Process Sources: Scott Selhorst on Tyner Blain; Business Analysis Body of Knowledge, Version 1.6; my own experience, also see [...]</description>
		<content:encoded><![CDATA[<p>[...] Process Sources: Scott Selhorst on Tyner Blain; Business Analysis Body of Knowledge, Version 1.6; my own experience, also see [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Business Rules Hidden in Use Cases &#171; Peter Bakker&#8217;s Sketches</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-426848</link>
		<dc:creator>Business Rules Hidden in Use Cases &#171; Peter Bakker&#8217;s Sketches</dc:creator>
		<pubDate>Sat, 30 Aug 2008 19:50:18 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-426848</guid>
		<description>[...] pm on August 30, 2008 &#124; # &#124;     Business Rules Hidden in Use Cases &#124; Tyner Blai: Business rules are not requirements. Yet they are often gathered at the same time as requirements, [...]</description>
		<content:encoded><![CDATA[<p>[...] pm on August 30, 2008 | # |     Business Rules Hidden in Use Cases | Tyner Blai: Business rules are not requirements. Yet they are often gathered at the same time as requirements, [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Blinded by Requirements - Don’t Miss those Business Rules &#124; guidance.lowicz.pl</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-315511</link>
		<dc:creator>Blinded by Requirements - Don’t Miss those Business Rules &#124; guidance.lowicz.pl</dc:creator>
		<pubDate>Sun, 24 Feb 2008 05:18:41 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-315511</guid>
		<description>[...] Scott Sehlhorst talks about Business Rules hidden in Software Requirements. This is something that I have written on before. You can read Business Rules &amp; Software Requirements for a more detailed writeup on this subject. [...]</description>
		<content:encoded><![CDATA[<p>[...] Scott Sehlhorst talks about Business Rules hidden in Software Requirements. This is something that I have written on before. You can read Business Rules &amp; Software Requirements for a more detailed writeup on this subject. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Sehlhorst</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-148688</link>
		<dc:creator>Scott Sehlhorst</dc:creator>
		<pubDate>Wed, 12 Sep 2007 03:44:17 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-148688</guid>
		<description>The longer response is up &lt;a href=&quot;http://tynerblain.com/blog/2007/09/11/why-separate-rules-from-requirements/&quot; rel=&quot;nofollow&quot;&gt;Why Separate Rules and Requirements&lt;/a&gt;

Thanks again for starting a great discussion.  It probably makes sense to move additional conversation to the latest article.</description>
		<content:encoded><![CDATA[<p>The longer response is up <a href="http://tynerblain.com/blog/2007/09/11/why-separate-rules-from-requirements/" rel="nofollow">Why Separate Rules and Requirements</a></p>
<p>Thanks again for starting a great discussion.  It probably makes sense to move additional conversation to the latest article.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Sehlhorst</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-148554</link>
		<dc:creator>Scott Sehlhorst</dc:creator>
		<pubDate>Tue, 11 Sep 2007 22:03:41 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-148554</guid>
		<description>Oh - great catch about the selection of an actor being a possible source of &quot;hidden rules.&quot;  To make requirements more easily consumable, I would tend to write it as a precondition of the use case &quot;The actor has current FAA certification for inspection.&quot;  Or &quot;The actor must be one of the pilots.&quot;

That is definitely a policy (or regulation) being enforced.  Many people who are qualified to do the inspection could, but the pilot (of that flight) is the one who is required.</description>
		<content:encoded><![CDATA[<p>Oh &#8211; great catch about the selection of an actor being a possible source of &#8220;hidden rules.&#8221;  To make requirements more easily consumable, I would tend to write it as a precondition of the use case &#8220;The actor has current FAA certification for inspection.&#8221;  Or &#8220;The actor must be one of the pilots.&#8221;</p>
<p>That is definitely a policy (or regulation) being enforced.  Many people who are qualified to do the inspection could, but the pilot (of that flight) is the one who is required.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Sehlhorst</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-148551</link>
		<dc:creator>Scott Sehlhorst</dc:creator>
		<pubDate>Tue, 11 Sep 2007 22:01:14 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-148551</guid>
		<description>Alan,

Thanks very much for reading and commenting.  I especially appreciate the insight you&#039;ve put into this discussion.

When I describe rules as being &quot;not requirements&quot; I am not saying that they are not required, but rather that they are not the necessary components of an approach to achieving a value-based goal.  Rather, they represent constraints on how that goal is to be achieved for a given company.

Those constraints may be external regulations or internal policies that the company has chosen to adopt, enforce, or extend.  They certainly represent criteria by which the success of the software will be evaluated.

There is value in making the distinction, although it is more practical than semantic.  Why separate rules from requirements?  I&#039;m going to switch gears and write that as a blog post right now.  I&#039;ll add another comment with a link to it.</description>
		<content:encoded><![CDATA[<p>Alan,</p>
<p>Thanks very much for reading and commenting.  I especially appreciate the insight you&#8217;ve put into this discussion.</p>
<p>When I describe rules as being &#8220;not requirements&#8221; I am not saying that they are not required, but rather that they are not the necessary components of an approach to achieving a value-based goal.  Rather, they represent constraints on how that goal is to be achieved for a given company.</p>
<p>Those constraints may be external regulations or internal policies that the company has chosen to adopt, enforce, or extend.  They certainly represent criteria by which the success of the software will be evaluated.</p>
<p>There is value in making the distinction, although it is more practical than semantic.  Why separate rules from requirements?  I&#8217;m going to switch gears and write that as a blog post right now.  I&#8217;ll add another comment with a link to it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AlanAJ</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-148344</link>
		<dc:creator>AlanAJ</dc:creator>
		<pubDate>Tue, 11 Sep 2007 13:27:16 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-148344</guid>
		<description>&quot;Business rules are not requirements&quot;?

While I value the distinction you are seeking to make, I think you&#039;ve got it wrong.  Sorry!

Certainly, business rules are not user interactions or system behaviors, so we don&#039;t want their principal residence to be within use cases.  And there may well be benefits to a system&#039;s stakeholders from implementing business rules in such a way that they are more readily altered (which is a non-functional requirement that comes at a cost, of course, so we had better strive for net benefits).  This should not force us to conclude that business rules are not requirements, however.

In any event, it seems to me that there are other places that business rules may lurk within use cases.  First of all, the goal of the use case may itself be compliance with business rules.  To take your FAA inspection example:  &quot;...before every flight&quot; is explicitly &quot;corporate policy&quot;.  That the airline chooses to enforce and monitor this policy is implicitly corporate policy.  That the airline chooses to do no more than enforce and monitor compliance with FAA guidelines, rather than its own higher standards, is tacitly corporate policy.  We might hope that the use case will be reusable whatever the pre-flight checks may be, but &quot;hope&quot; is not solid foundation...

A second place that business rules may lurk is within the definition and selection of actors.  In your example, &quot;a pilot&quot; ought, perhaps, to be &quot;the pilot&quot;:  the particular pilot for the flight.  But perhaps it could be a co-pilot (for the flight), any of the airline&#039;s pilot&#039;s, or any person with certain minimum qualifications.  Again, the business rules here may originate with the FAA or be further qualified by corporate policy (airline&#039;s and, indirectly, airport&#039;s).  It may be necessary for &quot;the pilot&quot; to perform the checks, for example, but not to be the actor in the use case, or for someone else to perform the checks, overseen by &quot;the pilot&quot; who [currently] must be the actor in the use case.

Sepcific or generic?  It seems necessary to define for any system the environment or milieu in which it is expected to operate.  I&#039;ve always called this the &quot;operational context&quot;, and business rules are a major part of this (especially if you add &quot;facts&quot; or &quot;invariants&quot; to your list of types).  In recent discussions, it has been suggested that &quot;operational envelope&quot; may be a more appropriate term.  The suggestion is that an &quot;envelope&quot; is a more generic environment than a &quot;context&quot;.  I&#039;m not sure that the terminology is important, but the critical factor is documenting appropriate limits to design to (relatively extreme environments rather than typical ones).  Broadly speaking, the more extreme the limits, the higher the cost, so I treat the &quot;operational envelope&quot; specification as a multi-dimensional non-functional requirement.  Since the supported variability of business rules translates directly into variability of the &quot;operational envelope&quot;, I hope you can understand why I find the idea of business rules not being requirements a little perplexing.</description>
		<content:encoded><![CDATA[<p>&#8220;Business rules are not requirements&#8221;?</p>
<p>While I value the distinction you are seeking to make, I think you&#8217;ve got it wrong.  Sorry!</p>
<p>Certainly, business rules are not user interactions or system behaviors, so we don&#8217;t want their principal residence to be within use cases.  And there may well be benefits to a system&#8217;s stakeholders from implementing business rules in such a way that they are more readily altered (which is a non-functional requirement that comes at a cost, of course, so we had better strive for net benefits).  This should not force us to conclude that business rules are not requirements, however.</p>
<p>In any event, it seems to me that there are other places that business rules may lurk within use cases.  First of all, the goal of the use case may itself be compliance with business rules.  To take your FAA inspection example:  &#8220;&#8230;before every flight&#8221; is explicitly &#8220;corporate policy&#8221;.  That the airline chooses to enforce and monitor this policy is implicitly corporate policy.  That the airline chooses to do no more than enforce and monitor compliance with FAA guidelines, rather than its own higher standards, is tacitly corporate policy.  We might hope that the use case will be reusable whatever the pre-flight checks may be, but &#8220;hope&#8221; is not solid foundation&#8230;</p>
<p>A second place that business rules may lurk is within the definition and selection of actors.  In your example, &#8220;a pilot&#8221; ought, perhaps, to be &#8220;the pilot&#8221;:  the particular pilot for the flight.  But perhaps it could be a co-pilot (for the flight), any of the airline&#8217;s pilot&#8217;s, or any person with certain minimum qualifications.  Again, the business rules here may originate with the FAA or be further qualified by corporate policy (airline&#8217;s and, indirectly, airport&#8217;s).  It may be necessary for &#8220;the pilot&#8221; to perform the checks, for example, but not to be the actor in the use case, or for someone else to perform the checks, overseen by &#8220;the pilot&#8221; who [currently] must be the actor in the use case.</p>
<p>Sepcific or generic?  It seems necessary to define for any system the environment or milieu in which it is expected to operate.  I&#8217;ve always called this the &#8220;operational context&#8221;, and business rules are a major part of this (especially if you add &#8220;facts&#8221; or &#8220;invariants&#8221; to your list of types).  In recent discussions, it has been suggested that &#8220;operational envelope&#8221; may be a more appropriate term.  The suggestion is that an &#8220;envelope&#8221; is a more generic environment than a &#8220;context&#8221;.  I&#8217;m not sure that the terminology is important, but the critical factor is documenting appropriate limits to design to (relatively extreme environments rather than typical ones).  Broadly speaking, the more extreme the limits, the higher the cost, so I treat the &#8220;operational envelope&#8221; specification as a multi-dimensional non-functional requirement.  Since the supported variability of business rules translates directly into variability of the &#8220;operational envelope&#8221;, I hope you can understand why I find the idea of business rules not being requirements a little perplexing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Taylor's Decision Management</title>
		<link>http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/comment-page-1/#comment-144287</link>
		<dc:creator>James Taylor's Decision Management</dc:creator>
		<pubDate>Tue, 04 Sep 2007 20:38:26 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2007/09/03/business-rules-and-use-cases/#comment-144287</guid>
		<description>&lt;strong&gt;Business rules, requirements and use cases...&lt;/strong&gt;

Scott Sehlhorst had a nice post today on Business Rules Hidden in Use Cases&#160;and, as I have not really talked much about rules and requirements on this blog I thought I would point my ebizQ readers to the post and,......</description>
		<content:encoded><![CDATA[<p><strong>Business rules, requirements and use cases&#8230;</strong></p>
<p>Scott Sehlhorst had a nice post today on Business Rules Hidden in Use Cases&nbsp;and, as I have not really talked much about rules and requirements on this blog I thought I would point my ebizQ readers to the post and,&#8230;&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>

