<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>The Usefulness of the Use Case?</title><link>http://blogs.msdn.com/nickmalik/archive/2008/06/17/the-usefulness-of-the-use-case.aspx</link><description>I'm a big fan of use cases.&amp;#160; Great for describing how software is used, and puts context around the use of functionality that helps software developers to create solutions that will actually fit into human activities.&amp;#160; On the other hand, are</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: The Usefulness of the Use Case?</title><link>http://blogs.msdn.com/nickmalik/archive/2008/06/17/the-usefulness-of-the-use-case.aspx#8613726</link><pubDate>Wed, 18 Jun 2008 05:48:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8613726</guid><dc:creator>Guy</dc:creator><description>&lt;p&gt;Very insightful, this is very much in line with what I am working on right now, I agree with you completely.&lt;/p&gt;
&lt;p&gt;What is the name of the &amp;quot;published work&amp;quot; that defines the process for creating clean and useful business rules? &amp;nbsp;I'm interested in looking into it...&lt;/p&gt;</description></item><item><title>re: The Usefulness of the Use Case?</title><link>http://blogs.msdn.com/nickmalik/archive/2008/06/17/the-usefulness-of-the-use-case.aspx#8614658</link><pubDate>Wed, 18 Jun 2008 09:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8614658</guid><dc:creator>NickMalik</dc:creator><description>&lt;p&gt;Hello Guy,&lt;/p&gt;
&lt;p&gt;I'm going to recommend the following book on reputation alone. &amp;nbsp;&lt;/p&gt;
&lt;p&gt;Caveat: I have not read it (yet... I plan to): &lt;/p&gt;
&lt;p&gt;&amp;quot;Business Rules Applied: Building Better Systems Using the Business Rules Approach&amp;quot; by Barbara Von Halle &lt;/p&gt;
&lt;p&gt;I hope this helps.&lt;/p&gt;
&lt;p&gt;--- Nick&lt;/p&gt;
</description></item><item><title>re: The Usefulness of the Use Case?</title><link>http://blogs.msdn.com/nickmalik/archive/2008/06/17/the-usefulness-of-the-use-case.aspx#8616857</link><pubDate>Wed, 18 Jun 2008 17:47:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8616857</guid><dc:creator>Evan</dc:creator><description>&lt;p&gt;We have to remember that the Use Case is only good for analysis. &amp;nbsp;Juval, Fowler, etc all agree that the functional decomposition provided by the Use Case yields the worst design possible when translated directly to code. &amp;nbsp;Even Parnas argues that a functional decomposition is a very poor design.&lt;/p&gt;
&lt;p&gt;Knowing this, it's up to us to take the functional decomposition (which was used to analyze and understand the problem and desired solution) to create a proper design.&lt;/p&gt;
&lt;p&gt;During the process of design (even if it only occurs inside my head), I break &amp;quot;business rules&amp;quot; or &amp;quot;business logic&amp;quot; into two categories: application logic and business logic.&lt;/p&gt;
&lt;p&gt;The roots for both come from Fowler and Evans (DDD), where application logic might be something like: Send an email to the customer after accepting their order. &amp;nbsp; &amp;nbsp;Business logic is more along the lines: Calculate sales tax on orders shipping to CA or NY. &amp;nbsp;The application logic represents a workflow that occurs (with/without any workflow framework) during the execution of a business goal (ConvertCartToOrder) and exists in the Service Layer facade (Fowler). &amp;nbsp;The business logic exists in the domain model and is part of the emulation that occurs to manipulate the state space (objects/data) to work out the desired effect.&lt;/p&gt;
&lt;p&gt;And that's basically it in a nutshell.&lt;/p&gt;
&lt;p&gt;So, back to your original question. &amp;nbsp;Are Use Cases useful? &amp;nbsp;Yes, but only for gaining understanding by analyzing the problem space. &amp;nbsp;Translating them beyond that is a known anti-pattern (which is agreed upon by multiple schools of thought).&lt;/p&gt;</description></item><item><title>re: The Usefulness of the Use Case?</title><link>http://blogs.msdn.com/nickmalik/archive/2008/06/17/the-usefulness-of-the-use-case.aspx#8617106</link><pubDate>Wed, 18 Jun 2008 18:44:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8617106</guid><dc:creator>NickMalik</dc:creator><description>&lt;p&gt;It's interesting, Evan, that you appear to regard the process of eliciting business rules as a step between use case analysis and design. &amp;nbsp;Many folks argue that business rules elicitation occurs BEFORE the use cases are described. &amp;nbsp;I believe that these two steps are concurrent. &amp;nbsp;Perhaps it doesn't matter?&lt;/p&gt;
&lt;p&gt;I'm on the fence about the usefulness of separating rules into &amp;quot;business logic&amp;quot; and &amp;quot;application logic&amp;quot; as you describe. &amp;nbsp;I understand what you are doing, but I'm not sure that doing it increases quality. &amp;nbsp;I'd love to see actual experiments along those lines.&lt;/p&gt;
&lt;p&gt;Anyway, I appreciate the discussion. &amp;nbsp;Thank you for contributing your insight and experience.&lt;/p&gt;
</description></item><item><title>re: The Usefulness of the Use Case?</title><link>http://blogs.msdn.com/nickmalik/archive/2008/06/17/the-usefulness-of-the-use-case.aspx#8620053</link><pubDate>Thu, 19 Jun 2008 06:54:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8620053</guid><dc:creator>David Wright</dc:creator><description>&lt;p&gt;Much agreed, Use Cases can not do it all. I have presented on this topic a few times, and wrote the following: &lt;a rel="nofollow" target="_new" href="http://searchsoftwarequality.techtarget.com/tip/0,289483,sid92_gci1252666,00.html?track=NL-498&amp;amp;ad=588081&amp;amp;asrc=EM_NLN_1374391&amp;amp;uid=3080496#"&gt;http://searchsoftwarequality.techtarget.com/tip/0,289483,sid92_gci1252666,00.html?track=NL-498&amp;amp;ad=588081&amp;amp;asrc=EM_NLN_1374391&amp;amp;uid=3080496#&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Business Rules are a big deal, see &lt;a rel="nofollow" target="_new" href="http://www.businessrulesgroup.org/home-brg.shtml"&gt;http://www.businessrulesgroup.org/home-brg.shtml&lt;/a&gt; for the first and last word on Business Rules. I recommend Ron Ross as an author of several books on Rules.&lt;/p&gt;</description></item></channel></rss>