<?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 for SoftSlate Blog</title>
	<atom:link href="http://www.softslate.com/blog/comments/feed" rel="self" type="application/rss+xml" />
	<link>http://www.softslate.com/blog</link>
	<description>From David Tobey, lead developer of the Java shopping cart SoftSlate Commerce</description>
	<lastBuildDate>Tue, 06 Sep 2011 17:32:36 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by BlueCollarCritic</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-76</link>
		<dc:creator>BlueCollarCritic</dc:creator>
		<pubDate>Tue, 06 Sep 2011 17:32:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-76</guid>
		<description>Having done quite a bit of testing myself when I worked in support/custom development for a West coast software company (Not Microsoft) I can tell you that your metrics about diminishing returns match up with what I recall during my testing.  While we all would like to have perfect code there is no such thing and so you have to go with good enough.  That said, there is one thing that the testing department (at least where I worked) could and should observe and did not (for whatever reason) and that is :

Never assume the way you (as a tester or developer or even someone in support) use the product is how a customer does or even how most of your customers do.

The biggest mistake I observed was the mindset (shared by t9o many at that company ) of “that’s how everyone does it” and that resulted in more bugs getting into production code then should have.</description>
		<content:encoded><![CDATA[<p>Having done quite a bit of testing myself when I worked in support/custom development for a West coast software company (Not Microsoft) I can tell you that your metrics about diminishing returns match up with what I recall during my testing.  While we all would like to have perfect code there is no such thing and so you have to go with good enough.  That said, there is one thing that the testing department (at least where I worked) could and should observe and did not (for whatever reason) and that is :</p>
<p>Never assume the way you (as a tester or developer or even someone in support) use the product is how a customer does or even how most of your customers do.</p>
<p>The biggest mistake I observed was the mindset (shared by t9o many at that company ) of “that’s how everyone does it” and that resulted in more bugs getting into production code then should have.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Automated Functional Testing with JMeter by Testing Has a Point of Diminishing Returns &#124; SoftSlate Blog</title>
		<link>http://www.softslate.com/blog/2011/08/functional-and-regression-testing-with-jmeter.html#comment-54</link>
		<dc:creator>Testing Has a Point of Diminishing Returns &#124; SoftSlate Blog</dc:creator>
		<pubDate>Wed, 31 Aug 2011 15:25:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=44#comment-54</guid>
		<description>[...] Company     Home&#160;&#187;&#160;Company&#160;&#187;&#160;Blog     &#8592; Automated Functional Testing with JMeter [...]</description>
		<content:encoded><![CDATA[<p>[...] Company     Home&nbsp;&#187;&nbsp;Company&nbsp;&#187;&nbsp;Blog     &larr; Automated Functional Testing with JMeter [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by tom</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-53</link>
		<dc:creator>tom</dc:creator>
		<pubDate>Wed, 31 Aug 2011 13:55:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-53</guid>
		<description>In my experience, it seems that most programmers test to make something work, not to break it. I have never experienced the diminishing return, but the other side where bare bones testing is done. It seems directly proportional to the programmers ego, that being, my code is infallible since I wrote it, so there is no way it could break. Or, testing is tedious, so pass it on.</description>
		<content:encoded><![CDATA[<p>In my experience, it seems that most programmers test to make something work, not to break it. I have never experienced the diminishing return, but the other side where bare bones testing is done. It seems directly proportional to the programmers ego, that being, my code is infallible since I wrote it, so there is no way it could break. Or, testing is tedious, so pass it on.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by Chris Hemedinger</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-52</link>
		<dc:creator>Chris Hemedinger</dc:creator>
		<pubDate>Wed, 31 Aug 2011 13:21:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-52</guid>
		<description>The concept of &quot;good enough&quot; quality for software has been around for a while, and is a formal description of your observations here.  See http://www.satisfice.com/articles/gooden2.pdf for an example.</description>
		<content:encoded><![CDATA[<p>The concept of &#8220;good enough&#8221; quality for software has been around for a while, and is a formal description of your observations here.  See <a href="http://www.satisfice.com/articles/gooden2.pdf" rel="nofollow">http://www.satisfice.com/articles/gooden2.pdf</a> for an example.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by Frank</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-51</link>
		<dc:creator>Frank</dc:creator>
		<pubDate>Wed, 31 Aug 2011 13:05:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-51</guid>
		<description>I think it&#039;s important to separate the time/resource cost spent uncovering bugs from the cost/tradeoff spent fixing and retesting them.  

Defect tracking systems are glutted with years-old bugs that will never be fixed: some are related to Browsers, OS, and hardware platforms no longer supported. Others involve features slated to be obsoleted and/or circumvented by new features. 

Bug statuses and priorities are often misleading or meaningless from a cost perspective: To the tester who specializes in obscure administrative functions a bug may scream showstopper, yet the field and support engineers know for a fact that no customer has come within miles of that particular function. How many &quot;cosmetic&quot; bugs have been pushed to the top of the queue because they&#039;re in highly visible locations that customers (and demo-ing salepeople) are sure to notice.

This is why managers who reduce everything to bug counts aren&#039;t doing anyone any favors.</description>
		<content:encoded><![CDATA[<p>I think it&#8217;s important to separate the time/resource cost spent uncovering bugs from the cost/tradeoff spent fixing and retesting them.  </p>
<p>Defect tracking systems are glutted with years-old bugs that will never be fixed: some are related to Browsers, OS, and hardware platforms no longer supported. Others involve features slated to be obsoleted and/or circumvented by new features. </p>
<p>Bug statuses and priorities are often misleading or meaningless from a cost perspective: To the tester who specializes in obscure administrative functions a bug may scream showstopper, yet the field and support engineers know for a fact that no customer has come within miles of that particular function. How many &#8220;cosmetic&#8221; bugs have been pushed to the top of the queue because they&#8217;re in highly visible locations that customers (and demo-ing salepeople) are sure to notice.</p>
<p>This is why managers who reduce everything to bug counts aren&#8217;t doing anyone any favors.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by John Sposato</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-50</link>
		<dc:creator>John Sposato</dc:creator>
		<pubDate>Wed, 31 Aug 2011 13:01:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-50</guid>
		<description>If the return on testing is finding bugs, then yes there are diminishing returns.  If the return on testing is confidence in knowing there are very few bugs, then I don&#039;t think that curve holds.

Obviously, we can&#039;t test every line of code all the time.  However, we use our clients to test frequent beta releases to get feedback we&#039;d never get from ourselves.  The non-technical domain expert will always find things you can&#039;t find in-house.

Testing is always going on, just because the guys/gals writing the software aren&#039;t doing it doesn&#039;t mean it&#039;s not happening.

I&#039;m testing Firefox right now as I write this comment.  :)</description>
		<content:encoded><![CDATA[<p>If the return on testing is finding bugs, then yes there are diminishing returns.  If the return on testing is confidence in knowing there are very few bugs, then I don&#8217;t think that curve holds.</p>
<p>Obviously, we can&#8217;t test every line of code all the time.  However, we use our clients to test frequent beta releases to get feedback we&#8217;d never get from ourselves.  The non-technical domain expert will always find things you can&#8217;t find in-house.</p>
<p>Testing is always going on, just because the guys/gals writing the software aren&#8217;t doing it doesn&#8217;t mean it&#8217;s not happening.</p>
<p>I&#8217;m testing Firefox right now as I write this comment.  <img src='http://www.softslate.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by Jim Rush</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-49</link>
		<dc:creator>Jim Rush</dc:creator>
		<pubDate>Wed, 31 Aug 2011 12:37:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-49</guid>
		<description>As a general statement, I agree that as you do more testing, you get less value out of the results.  A more important observation, in my opinion, is that all tests are not created equally.  

Instead of focusing on the number of tests, focus on ROI based thinking.  Also, you haven&#039;t even discussed manual versus automated tests.  Regression testing versus initial testing (many edge cases are worth testing once, but if are in a static area of code, may not justify testing again).  X-ability testing.  

All of these things are far, far more important than finding that point of diminishing value in tests because your metric, number of tests, isn&#039;t the best way to think about the challenge of assuring quality.  It&#039;s just another metric to help you balance your efforts and judge your effectiveness.</description>
		<content:encoded><![CDATA[<p>As a general statement, I agree that as you do more testing, you get less value out of the results.  A more important observation, in my opinion, is that all tests are not created equally.  </p>
<p>Instead of focusing on the number of tests, focus on ROI based thinking.  Also, you haven&#8217;t even discussed manual versus automated tests.  Regression testing versus initial testing (many edge cases are worth testing once, but if are in a static area of code, may not justify testing again).  X-ability testing.  </p>
<p>All of these things are far, far more important than finding that point of diminishing value in tests because your metric, number of tests, isn&#8217;t the best way to think about the challenge of assuring quality.  It&#8217;s just another metric to help you balance your efforts and judge your effectiveness.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by Wooton Hague</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-48</link>
		<dc:creator>Wooton Hague</dc:creator>
		<pubDate>Wed, 31 Aug 2011 05:37:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-48</guid>
		<description>Byte shift testing is the best testing methodology. It can be done during the entire development frame of the project and when deployed can be used to administer alterations and changes to the deployment.</description>
		<content:encoded><![CDATA[<p>Byte shift testing is the best testing methodology. It can be done during the entire development frame of the project and when deployed can be used to administer alterations and changes to the deployment.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Dave’s Lazy Testing Technique by Testing Has a Point of Diminishing Returns &#124; SoftSlate Blog</title>
		<link>http://www.softslate.com/blog/2011/07/great-testing-technique.html#comment-43</link>
		<dc:creator>Testing Has a Point of Diminishing Returns &#124; SoftSlate Blog</dc:creator>
		<pubDate>Tue, 30 Aug 2011 21:31:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=11#comment-43</guid>
		<description>[...] it. For example, a couple of the most cost-effective testing techniques we do regularly include parallel ops and automated functional testing. Those are good ways to catch more defects without going beyond the [...]</description>
		<content:encoded><![CDATA[<p>[...] it. For example, a couple of the most cost-effective testing techniques we do regularly include parallel ops and automated functional testing. Those are good ways to catch more defects without going beyond the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Testing Has a Point of Diminishing Returns by Luis Gutierrez</title>
		<link>http://www.softslate.com/blog/2011/08/testing-has-a-point-of-diminishing-returns.html#comment-41</link>
		<dc:creator>Luis Gutierrez</dc:creator>
		<pubDate>Tue, 30 Aug 2011 16:07:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.softslate.com/blog/?p=107#comment-41</guid>
		<description>In my experience in the hardware world, I would say that you are roughly correct, 
testing does have diminishing results over time.
However, they are techniques that can greatly increase how many bugs you find, and make the curve look more 1:1.

In particular, pseudo-randmon testing is very interesting. It allows you to hit hard-to-think corner cases easily. The problem with it, is that to do it properly you not only need a custom-built language to randomize all the inputs, but you also need a reference model (which are easy to do for simple tests, but very hard for the whole system), and functional coverage.

Without coverage, your random testing is blind, and there is now real way of knowing what is it exactly that you are testing. Code coverage helps here, but to truly understand what your random tests are doing you need a more elaborate way of measuring what is happening in your application. have I executed this function with all the relevant values for the inputs? have I executed this function AFTER a calling this? 

The hardware world solved this problems with the creation of specific languages generating random stimulus and for capturing your functional &quot;coverage points&quot; and &quot;coverage groups&quot;, and by developing a series of ever-refined methodologies to achieve this.
Take a look at specman (e language), System Verilog and SystemC verification library.</description>
		<content:encoded><![CDATA[<p>In my experience in the hardware world, I would say that you are roughly correct,<br />
testing does have diminishing results over time.<br />
However, they are techniques that can greatly increase how many bugs you find, and make the curve look more 1:1.</p>
<p>In particular, pseudo-randmon testing is very interesting. It allows you to hit hard-to-think corner cases easily. The problem with it, is that to do it properly you not only need a custom-built language to randomize all the inputs, but you also need a reference model (which are easy to do for simple tests, but very hard for the whole system), and functional coverage.</p>
<p>Without coverage, your random testing is blind, and there is now real way of knowing what is it exactly that you are testing. Code coverage helps here, but to truly understand what your random tests are doing you need a more elaborate way of measuring what is happening in your application. have I executed this function with all the relevant values for the inputs? have I executed this function AFTER a calling this? </p>
<p>The hardware world solved this problems with the creation of specific languages generating random stimulus and for capturing your functional &#8220;coverage points&#8221; and &#8220;coverage groups&#8221;, and by developing a series of ever-refined methodologies to achieve this.<br />
Take a look at specman (e language), System Verilog and SystemC verification library.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

