<?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: Test Project Estimation, The Rapid Way</title>
	<atom:link href="http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/</link>
	<description>DevelopSense Blog</description>
	<lastBuildDate>Fri, 03 Feb 2012 12:45:45 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Andriy Rushchak</title>
		<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/comment-page-1/#comment-1118</link>
		<dc:creator>Andriy Rushchak</dc:creator>
		<pubDate>Wed, 19 May 2010 12:53:21 +0000</pubDate>
		<guid isPermaLink="false">http://developsense.com/wordpress/?p=36#comment-1118</guid>
		<description>Great post, thanks Michael. Sample conversation rocks!</description>
		<content:encoded><![CDATA[<p>Great post, thanks Michael. Sample conversation rocks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Greg McNelly</title>
		<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/comment-page-1/#comment-518</link>
		<dc:creator>Greg McNelly</dc:creator>
		<pubDate>Wed, 10 Mar 2010 12:51:28 +0000</pubDate>
		<guid isPermaLink="false">http://developsense.com/wordpress/?p=36#comment-518</guid>
		<description>I have used the magic number approach referenced above by Shrini Kulkarni, because I am still somewhat naive in the art of test management, and because my project managers seem to have a strong need for this kind of tracking mechanism.  I did, however, reserve the right to change the magic number as the test team learned about the system.

Our magic number was simply a count of the test cases that had been agreed upon by the testers and other project stakeholders.  I had toyed with the idea of using a more abstract number, &quot;testing points&quot;, to accomodate some of our testing that was not easily represented as scripts, but found the stakeholders could not get their heads around the concept.

&lt;em&gt;In such cases, I&#039;d suggest something less abstract but that is not a number.  Consider &lt;a href=&quot;http://www.satisfice.com/sbtm&quot; rel=&quot;nofollow&quot;&gt;session-based test management&lt;/a&gt;.  Divide the testing effort (which is, in most organizations, typically set as a period of time to begin with) into a number of sessions, guided by charters of one to three sentences.  Each charter expresses a mission for a time-boxed period of testing.  The focus of this kind of testing is on time allocated for discovery, rather than on some number of tests.  That&#039;s important, because you can&#039;t schedule discovery, but you can allocate time for it.  (Note that investigating and reporting bugs will impact on your ability to obtain the desired coverage, so SBTM contains protocols for adjusting; see the link above.&lt;/em&gt;

I found that the cumulative number of tests passing over time was a fairly linear function, and that extrapolating that line to its intersection with the magic number was better than the project schedule as a predictor of ship date.  The project managers could have shipped earlier if they wanted, but they were bought in that these tests must be passing before they deployed the system.

&lt;em&gt;I wish that people more people would buy into this concept:  &lt;strong&gt;passing tests, and in particular the number of passing tests, are not particularly interesting&lt;/strong&gt;, especially not from a testing standpoint.  When a test passes, it means that the program is capable of answering a specific question that we ask it in a particular set of circumstances.  That&#039;s like training a student to pass a multiple choice test for which you already know the questions and answers.  Yes:  it is likely very important that the tests pass before deployment.  Yet when those tests pass, whether the program is &lt;strong&gt;ready&lt;/strong&gt; for deployment is an open question. Consider that those tests could pass, and the program could still have terrible problems with it.  Failing tests of this kind tell you that you can&#039;t ship.  Passing tests tell you that you &lt;strong&gt;could&lt;/strong&gt; ship, but it&#039;s wise to do that if and only if the sole criterion for shipping is that those specific tests pass.

As Jerry Weinberg pointed out (in 1961!), the sheer number of tests passing is of little interest in itself.   We get fooled, he says, by confusing repeatability with reliability, because of our experience with people.  When they can give the same answer to the same question over and over again, we presume that people are reliable, mostly because we&#039;re used to seeing them as variable.  But we&#039;re dealing with computers and software, for whom repeatability is easy.  Repeated results demonstrate the computer&#039;s prowess at doing the same thing at different times, and when we think we&#039;re varying  the tests, often we demonstrate the computer&#039;s prowess at doing the same thing with different numbers.  But our purpose, Jerry goes on to say, is to prove not repeatability but &lt;strong&gt;adaptability&lt;/strong&gt;.&lt;/em&gt;

The magic number has allowed me to respond the question &quot;When will testing be done?&quot; with data, and at least the appearance of some intelligence.  Now I am wondering if I can de-emphasize the magic number without losing the benefits I have gained from it.  Or is this benefit merely fool&#039;s gold?

&lt;em&gt;I think that&#039;s a really important question, and I&#039;d consider it very carefully.  If you&#039;ve obtained managers&#039; consent to do some actual testing, you have achieved some benefit, to be sure, and it would be bad to lose that.  But I&#039;d agree that you need to emphasize something different.  Here&#039;s my suggestion:  it&#039;s not your call, because it&#039;s a business decision, not a technical one.  The interesting issue for managers is not when testing is done, but when development is done.  Development is done when managers and programmers believe that there are no more problems in the product that are &lt;strong&gt;for the business&#039; purpose&lt;/strong&gt; important enough to fix.

As a tester, I keep a list of three things:  1) Knowns&#8212;important problems in the system that management might choose to have fixed; 2) Known unknowns&#8212;areas of the system that we know something about, but that we could know more about; and 3) Unknown unknowns&#8212;areas of the system where our knowledge is so limited that we&#039;re not even sure of what there is to know about it.  As a tester, my goal is to keep management apprised of what&#039;s in each state, and to move bits of knowledge up by at least one number.  As noted in the blog post above, management always has an idea of when they&#039;d like to ship.  If I keep management apprised of where we&#039;re at, the knowledge and direction about whether we&#039;re done and how we&#039;re going to get there becomes collaborative, and the decisions on what to do (properly) live with management.&lt;/em&gt;</description>
		<content:encoded><![CDATA[<p>I have used the magic number approach referenced above by Shrini Kulkarni, because I am still somewhat naive in the art of test management, and because my project managers seem to have a strong need for this kind of tracking mechanism.  I did, however, reserve the right to change the magic number as the test team learned about the system.</p>
<p>Our magic number was simply a count of the test cases that had been agreed upon by the testers and other project stakeholders.  I had toyed with the idea of using a more abstract number, &#8220;testing points&#8221;, to accomodate some of our testing that was not easily represented as scripts, but found the stakeholders could not get their heads around the concept.</p>
<p><em>In such cases, I&#8217;d suggest something less abstract but that is not a number.  Consider <a href="http://www.satisfice.com/sbtm" rel="nofollow">session-based test management</a>.  Divide the testing effort (which is, in most organizations, typically set as a period of time to begin with) into a number of sessions, guided by charters of one to three sentences.  Each charter expresses a mission for a time-boxed period of testing.  The focus of this kind of testing is on time allocated for discovery, rather than on some number of tests.  That&#8217;s important, because you can&#8217;t schedule discovery, but you can allocate time for it.  (Note that investigating and reporting bugs will impact on your ability to obtain the desired coverage, so SBTM contains protocols for adjusting; see the link above.</em></p>
<p>I found that the cumulative number of tests passing over time was a fairly linear function, and that extrapolating that line to its intersection with the magic number was better than the project schedule as a predictor of ship date.  The project managers could have shipped earlier if they wanted, but they were bought in that these tests must be passing before they deployed the system.</p>
<p><em>I wish that people more people would buy into this concept:  <strong>passing tests, and in particular the number of passing tests, are not particularly interesting</strong>, especially not from a testing standpoint.  When a test passes, it means that the program is capable of answering a specific question that we ask it in a particular set of circumstances.  That&#8217;s like training a student to pass a multiple choice test for which you already know the questions and answers.  Yes:  it is likely very important that the tests pass before deployment.  Yet when those tests pass, whether the program is <strong>ready</strong> for deployment is an open question. Consider that those tests could pass, and the program could still have terrible problems with it.  Failing tests of this kind tell you that you can&#8217;t ship.  Passing tests tell you that you <strong>could</strong> ship, but it&#8217;s wise to do that if and only if the sole criterion for shipping is that those specific tests pass.</p>
<p>As Jerry Weinberg pointed out (in 1961!), the sheer number of tests passing is of little interest in itself.   We get fooled, he says, by confusing repeatability with reliability, because of our experience with people.  When they can give the same answer to the same question over and over again, we presume that people are reliable, mostly because we&#8217;re used to seeing them as variable.  But we&#8217;re dealing with computers and software, for whom repeatability is easy.  Repeated results demonstrate the computer&#8217;s prowess at doing the same thing at different times, and when we think we&#8217;re varying  the tests, often we demonstrate the computer&#8217;s prowess at doing the same thing with different numbers.  But our purpose, Jerry goes on to say, is to prove not repeatability but <strong>adaptability</strong>.</em></p>
<p>The magic number has allowed me to respond the question &#8220;When will testing be done?&#8221; with data, and at least the appearance of some intelligence.  Now I am wondering if I can de-emphasize the magic number without losing the benefits I have gained from it.  Or is this benefit merely fool&#8217;s gold?</p>
<p><em>I think that&#8217;s a really important question, and I&#8217;d consider it very carefully.  If you&#8217;ve obtained managers&#8217; consent to do some actual testing, you have achieved some benefit, to be sure, and it would be bad to lose that.  But I&#8217;d agree that you need to emphasize something different.  Here&#8217;s my suggestion:  it&#8217;s not your call, because it&#8217;s a business decision, not a technical one.  The interesting issue for managers is not when testing is done, but when development is done.  Development is done when managers and programmers believe that there are no more problems in the product that are <strong>for the business&#8217; purpose</strong> important enough to fix.</p>
<p>As a tester, I keep a list of three things:  1) Knowns&mdash;important problems in the system that management might choose to have fixed; 2) Known unknowns&mdash;areas of the system that we know something about, but that we could know more about; and 3) Unknown unknowns&mdash;areas of the system where our knowledge is so limited that we&#8217;re not even sure of what there is to know about it.  As a tester, my goal is to keep management apprised of what&#8217;s in each state, and to move bits of knowledge up by at least one number.  As noted in the blog post above, management always has an idea of when they&#8217;d like to ship.  If I keep management apprised of where we&#8217;re at, the knowledge and direction about whether we&#8217;re done and how we&#8217;re going to get there becomes collaborative, and the decisions on what to do (properly) live with management.</em></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bernard</title>
		<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/comment-page-1/#comment-275</link>
		<dc:creator>bernard</dc:creator>
		<pubDate>Fri, 07 Aug 2009 07:15:57 +0000</pubDate>
		<guid isPermaLink="false">http://developsense.com/wordpress/?p=36#comment-275</guid>
		<description>You did a good job representing the pointy haired manager.&lt;br /&gt;&lt;br /&gt;I worked on a high quality team that valued testing. Testing had a few metrics to report. The first is how much of the written and unwritten requirements had specific test cases. The hard goal was 100%. Testers developed test case while requirements were written. The next metric was % of test cases that were automated. The goal was 100%. Unfortunately, this was not a hard goal. When these goals are met, we can answer the question.&lt;br /&gt;&lt;br /&gt;Testing will be done when all test cases are written, automated (as much as possible), and successfully executed. Testing was not done to full a schedule. It was done to verify all the written and unwritten requirements.&lt;br /&gt;&lt;br /&gt;Re-releases are simpler. If testing found the defect, only execution is necessary.&lt;br /&gt;&lt;br /&gt;The quality of development determines how many releases are necessary to successfully execute all test cases.&lt;br /&gt;&lt;br /&gt;But, pointy haired managers can ignore recommendations of high quality teams and ship with out regard to developers and testers.</description>
		<content:encoded><![CDATA[<p>You did a good job representing the pointy haired manager.</p>
<p>I worked on a high quality team that valued testing. Testing had a few metrics to report. The first is how much of the written and unwritten requirements had specific test cases. The hard goal was 100%. Testers developed test case while requirements were written. The next metric was % of test cases that were automated. The goal was 100%. Unfortunately, this was not a hard goal. When these goals are met, we can answer the question.</p>
<p>Testing will be done when all test cases are written, automated (as much as possible), and successfully executed. Testing was not done to full a schedule. It was done to verify all the written and unwritten requirements.</p>
<p>Re-releases are simpler. If testing found the defect, only execution is necessary.</p>
<p>The quality of development determines how many releases are necessary to successfully execute all test cases.</p>
<p>But, pointy haired managers can ignore recommendations of high quality teams and ship with out regard to developers and testers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shrini Kulkarni</title>
		<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/comment-page-1/#comment-39</link>
		<dc:creator>Shrini Kulkarni</dc:creator>
		<pubDate>Mon, 26 Feb 2007 12:30:00 +0000</pubDate>
		<guid isPermaLink="false">http://developsense.com/wordpress/?p=36#comment-39</guid>
		<description>Thanks for presenting a new and novel approach to handling such open ended questions like &quot;When Testing will be completed&quot;.  In my opinion, the challenge driving this approach and emphasizing it to management - lies in effectively articulating thoughts like &quot;I will test as long as you wish&quot; and &quot;Will not make the mistake of deciding when to ship&quot;  &lt;br/&gt;  &lt;br/&gt;With due respect all *managers* out there - most of the time, managers want a number - such a number that suits them (this you have very well&lt;br/&gt;articulated) and expect the tester to give that *number*. Few managers conveniently shift the responsibility of making decisions about the ship date to the testers.  &lt;br/&gt; &lt;br/&gt;There are two extreme variations of this &quot;shifting&quot; behavior&lt;br/&gt; &lt;br/&gt;In one case - No release until QA (aka testers in some communities) says it is ready.  &lt;br/&gt; &lt;br/&gt;Other one is - Even when the tester says there are issues that *matter* they ship the product (while blaming testing for delaying the ship date&lt;br/&gt;in some way).   &lt;br/&gt; &lt;br/&gt;Our industry really needs a paradigm shift in pushing Testing as service (open ended quest for problems) and constantly staying away from assuming the role of the Project manager</description>
		<content:encoded><![CDATA[<p>Thanks for presenting a new and novel approach to handling such open ended questions like &#8220;When Testing will be completed&#8221;.  In my opinion, the challenge driving this approach and emphasizing it to management &#8211; lies in effectively articulating thoughts like &#8220;I will test as long as you wish&#8221; and &#8220;Will not make the mistake of deciding when to ship&#8221;  </p>
<p>With due respect all *managers* out there &#8211; most of the time, managers want a number &#8211; such a number that suits them (this you have very well<br />articulated) and expect the tester to give that *number*. Few managers conveniently shift the responsibility of making decisions about the ship date to the testers.  </p>
<p>There are two extreme variations of this &#8220;shifting&#8221; behavior</p>
<p>In one case &#8211; No release until QA (aka testers in some communities) says it is ready.  </p>
<p>Other one is &#8211; Even when the tester says there are issues that *matter* they ship the product (while blaming testing for delaying the ship date<br />in some way).   </p>
<p>Our industry really needs a paradigm shift in pushing Testing as service (open ended quest for problems) and constantly staying away from assuming the role of the Project manager</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ben Simo</title>
		<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/comment-page-1/#comment-31</link>
		<dc:creator>Ben Simo</dc:creator>
		<pubDate>Sun, 04 Feb 2007 21:02:00 +0000</pubDate>
		<guid isPermaLink="false">http://developsense.com/wordpress/?p=36#comment-31</guid>
		<description>Bingo!  Thanks for the great example discussion!  That&#039;s exactly what I believe us testers should be doing: providing information to those that make the decisions.&lt;br /&gt;&lt;br /&gt;The trick is to get that through to those buried in a process that makes &quot;QA&quot; (really testers) the gatekeeper, the bottleneck, and the scapegoat.</description>
		<content:encoded><![CDATA[<p>Bingo!  Thanks for the great example discussion!  That&#8217;s exactly what I believe us testers should be doing: providing information to those that make the decisions.</p>
<p>The trick is to get that through to those buried in a process that makes &#8220;QA&#8221; (really testers) the gatekeeper, the bottleneck, and the scapegoat.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anibal</title>
		<link>http://www.developsense.com/blog/2007/01/test-project-estimation-rapid-way/comment-page-1/#comment-29</link>
		<dc:creator>Anibal</dc:creator>
		<pubDate>Sat, 27 Jan 2007 01:52:00 +0000</pubDate>
		<guid isPermaLink="false">http://developsense.com/wordpress/?p=36#comment-29</guid>
		<description>Excellent post! I will definitely refer to this one!!! It&#039;s a keeper.</description>
		<content:encoded><![CDATA[<p>Excellent post! I will definitely refer to this one!!! It&#8217;s a keeper.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic page generated in 0.419 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-02-04 02:05:51 -->

