<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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>xProgramming.com</title>
	<atom:link href="http://xprogramming.com/feed" rel="self" type="application/rss+xml" />
	<link>http://xprogramming.com</link>
	<description>an agile software development resource</description>
	<pubDate>Fri, 03 Jul 2009 14:40:26 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Kate Oneal: Funding Susan&#8217;s Projects</title>
		<link>http://xprogramming.com/xpmag/kate-oneal-funding-susans-projects.htm</link>
		<comments>http://xprogramming.com/xpmag/kate-oneal-funding-susans-projects.htm#comments</comments>
		<pubDate>Fri, 19 Jun 2009 13:48:07 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Kate Oneal]]></category>

		<category><![CDATA[XP Magazine]]></category>

		<category><![CDATA[articles]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1049</guid>
		<description><![CDATA[Susan Prior drops in on Kate to talk about some new products she would like developed.]]></description>
			<content:encoded><![CDATA[<blockquote><p>Susan Prior drops in on Kate to talk about some new products she would like developed.</p></blockquote>
<p>&#8220;Hi, Susan,&#8221; said Kate. &#8220;You wanted to talk with me?&#8221;</p>
<p>&#8220;Hi, Kate. Yes. I&#8217;ve got some product ideas that I think we should invest in, and I wanted to talk with you about getting started. Dan is interested and said I should get your input.&#8221;</p>
<p>&#8220;Sure. What&#8217;s up?&#8221;</p>
<p>&#8220;There are three new products I&#8217;ve been talking about with my people and with customers. They&#8217;re all getting good reactions from prospects we&#8217;ve talked to. I think they would each bring us about a million dollars in the first year after release. I can show you the figures.&#8221;</p>
<p>Susan and Kate went over the figures, and talked about the three projects, which were codenamed Emerald, Obsidian, and Ruby.</p>
<p>Kate said: &#8220;The revenue looks good for each of these. What do you know about costs?&#8221;</p>
<p>&#8220;Gil and Jim looked at the specs and agreed that each one of these is about 15 person-months to develop.&#8221;</p>
<p>&#8220;OK,&#8221; said Kate. &#8220;What are you thinking you&#8217;d like to do?&#8221;</p>
<p>Susan said, &#8220;I have three people in Marketing who are working up feature stories. I would be the official Product Owner on all three, at least through first release. Development can free up six people soon. I&#8217;d like to get those six people committed to these projects for nine months to a year to get the products out.&#8221;</p>
<p>&#8220;Hmm. How did we get from 45 person months to 72 all of a sudden,&#8221; Kate said. &#8220;That&#8217;s a lot of money, from 375,000 to 600,000 dollars.&#8221;</p>
<p>&#8220;Well, I figured in a little extra in case Gil and Jim under-estimated, or in case they are late.&#8221;</p>
<p>&#8220;I understand, though I&#8217;m not sure I agree. And why are you going for all the money and time for all three projects at once?&#8221;</p>
<p>Susan said, &#8220;These are all important and valuable projects. We should get them all under way right away.&#8221;</p>
<p>&#8220;You&#8217;re asking Development to work on all three of them at once? Two people on each or something?&#8221;</p>
<p>&#8220;No,&#8221; said Susan. &#8220;Gil and Jim say the critical mass for each product is five or six. So I&#8217;ll have the team work on all three products.&#8221;</p>
<p>Kate put on her confused face. &#8220;All three? Wouldn&#8217;t it be better to work on them one at a time? Most important first?&#8221;</p>
<p>Susan said, &#8220;No. They&#8217;re all equally important and equally valuable. They should get equal priority.&#8221;</p>
<p>&#8220;Equal? Are you sure?&#8221;</p>
<p>&#8220;Well, as closely as we can tell,&#8221; said Susan. &#8220;Each of these projects takes about the same amount of time and will bring in about the same revenue flow. So they should get equal priority.&#8221;</p>
<p>Kate said: &#8220;Let&#8217;s test that thought. What if we could only afford one? What should we do?&#8221;</p>
<p>&#8220;I knew you would do this. This is my chance, and you want to wreck it. You&#8217;ve always hated me ever since the beginning.&#8221;</p>
<p>&#8220;Calm down,&#8221; Kate said. &#8220;I don&#8217;t want to wreck anything. And I don&#8217;t hate anyone. I can&#8217;t afford it, it poisons my soul. I just asked a question. What if we could only afford one? What would be best to do? Would you like to take a break to think about it?&#8221;</p>
<p>Susan steadied herself. &#8220;No, I&#8217;m OK. I&#8217;m just so excited and scared about this. These ideas are really good. They could make a difference to the company and I can show what I can really do.&#8221;</p>
<p>&#8220;I&#8217;d like that, too. You got off to a bad start with the team on Empire. But I know they are willing to work with you on this,&#8221; Kate said.</p>
<p>Susan asked, &#8220;You know? How do you know?&#8221;</p>
<p>Kate laughed: &#8220;I know almost everything around here. People tell me things. I think it&#8217;s because I spend so much time in the coffee room.</p>
<p>&#8220;Gil and Jim have both said, several times, that they respect your ideas and would like to see them get implemented.&#8221;</p>
<p>Susan calmed down some more. &#8220;They did? They never told me.&#8221;</p>
<p>Kate laughed again. &#8220;They&#8217;re programmers. They never say anything personal to anyone. It&#8217;s their job.&#8221;</p>
<p>&#8220;Good point. Anyway, if we could only do one, it should be Obsidian.&#8221;</p>
<p>&#8220;Why Obsidian?&#8221;</p>
<p>Susan said, &#8220;Three reasons. It&#8217;s a bit simpler, the prospects we have talked to seem more enthusiastic about it, and we understand it better.&#8221;</p>
<p>Kate thought, then spoke. &#8220;Those seem like good reasons. Thanks. Now, thinking again about doing these as you propose, let&#8217;s look at some pictures.&#8221;</p>
<p>This time Susan laughed. &#8220;I knew I could never get out of here without pictures.&#8221;</p>
<p>&#8220;It could be worse. I could make you listen to me singing. OK. Let&#8217;s look at a nine-month plan.&#8221;</p>
<p><img class="alignnone size-full wp-image-1058" title="making-date-parallel-blank" src="http://xprogramming.com/wp-content/uploads/making-date-parallel-blank.jpg" alt="making-date-parallel-blank" width="500" height="304" /></p>
<p>&#8220;OK,&#8221; Kate said. &#8220;Here&#8217;s a planning area. We have the three projects, Emerald, Obsidian, and Ruby. They&#8217;re all about the same size in stories, and you&#8217;re planning an ideal nine-month project. I won&#8217;t show any contingency here, just for clarity. OK?&#8221;</p>
<p>&#8220;Yes,&#8221; said Susan. &#8220;We may need the contingency, though.&#8221;</p>
<p>&#8220;Don&#8217;t worry, we&#8217;ll talk about that later. Now here is the way features will grow over the nine months, according to plan.&#8221;</p>
<p>Kate added feature lines to the chart:</p>
<p><img class="alignnone size-full wp-image-1059" title="making-date-parallel11" src="http://xprogramming.com/wp-content/uploads/making-date-parallel11.jpg" alt="making-date-parallel11" width="500" height="300" /></p>
<p>Kate went on. &#8220;The features all grow at about the same rate until the projects are all done after nine months. That&#8217;s the starting picture, agreed?&#8221;</p>
<p>Susan nodded. &#8220;Yes, exactly. The developers would work in parallel on all three products&#8221;</p>
<p>Kate said, &#8220;In parallel. Why is that good?&#8221;</p>
<p>&#8220;So we could see progress on each product.&#8221;</p>
<p>&#8220;And why do we need to see progress on each product?&#8221;</p>
<p>Susan thought. &#8220;Well, so that if anything goes wrong we can do something about it.&#8221;</p>
<p>&#8220;OK, I guess. Now when do we start making money from these products?&#8221;</p>
<p>Susan said, &#8220;If it goes according to the plan there and we don&#8217;t need the contingency, we start making money shortly after the nine months is up.&#8221;</p>
<p>&#8220;Shortly after,&#8221; Kate said.</p>
<p>&#8220;Well, we would have to roll them out with advertising, documentation and training and such.&#8221;</p>
<p>&#8220;Those couldn&#8217;t start sooner?&#8221;</p>
<p>Susan said, &#8220;Well but what happens if  the developers are late?&#8221;</p>
<p>&#8220;You keep asking that,&#8221; Kate said. &#8220;In my view developers are never late. Products are late sometimes, but never developers. I suppose that sounds like crazy talk.&#8221;</p>
<p>&#8220;Frankly, yes,&#8221; said Susan.</p>
<p>&#8220;OK, we&#8217;ll defer that for a moment. Returning to the picture, we start earning money at three million a year, starting nine months out, is that right?&#8221;</p>
<p>&#8220;Yes, that&#8217;s right,&#8221; Susan said.</p>
<p>&#8220;OK. Now take a look at this drawing instead.&#8221; Kate erased some lines and drew some new ones:</p>
<p><img class="alignnone size-full wp-image-1063" title="making-date-3-mo" src="http://xprogramming.com/wp-content/uploads/making-date-3-mo.jpg" alt="making-date-3-mo" width="500" height="300" /></p>
<p>&#8220;Susan, now I&#8217;m drawing a picture of what happens if we do the three projects one at a time. The new vertical lines are three release dates, at three months, six, and nine.&#8221;</p>
<p>Susan said, &#8220;But what about contingency?&#8221;</p>
<p>&#8220;I&#8217;ve left that out, as I did in the previous picture. We&#8217;ll talk about it though, don&#8217;t worry. Now in this scheme, we focus the developers on first Obsidian, then Emerald, then Ruby. Look what happens to Obsidian development:&#8221;</p>
<p><img class="alignnone size-full wp-image-1064" title="making-date-3-mo-obs" src="http://xprogramming.com/wp-content/uploads/making-date-3-mo-obs.jpg" alt="making-date-3-mo-obs" width="500" height="304" /></p>
<p>Susan said, &#8220;Yes. It gets done right away. But the others aren&#8217;t even started. That&#8217;s risky, isn&#8217;t it?&#8221;</p>
<p>Kate said, &#8220;I&#8217;m not clear on why it would be, so marshall your thoughts. But tell me what happens to company revenue with this scheme.&#8221;</p>
<p>&#8220;Well, we start earning after three months instead of nine.&#8221;</p>
<p>&#8220;Do we make more, or less, or about the same,&#8221; Kate said.</p>
<p>&#8220;About the same. Maybe more, because we are in the market sooner and might get more early adopters.&#8221;</p>
<p>&#8220;What about the impact on this fiscal year, and on our ability to fund projects?&#8221;</p>
<p>Susan scratched on a scrap of paper for a moment. &#8220;Well, we&#8217;d be to market six months sooner and in the first six months I think we get about 40 percent of the 12 months revenue for Obsidian. If we start right away, that would all fall in this fiscal year.&#8221;</p>
<p>&#8220;Yes! That would be $400,000 and that&#8217;s just about the low-end cost estimate for all three projects. What does that do to our concern about deferred risks for Emerald and Ruby?&#8221;</p>
<p>Susan thought. &#8220;OK, I see. Total cost of those two projects is scheduled to be less than $300K. Even if they completely failed, Obsidian&#8217;s first six months revenue would cover the costs. But again, what if development can&#8217;t get Obsidian done in three months?&#8221;</p>
<p>Kate smiled. &#8220;Go with me a bit longer while I finish this picture. Here&#8217;s the picture of the other two projects getting done sequentially after Obsidian:</p>
<p><img class="alignnone size-full wp-image-1065" title="making-date-3-all-3" src="http://xprogramming.com/wp-content/uploads/making-date-3-all-3.jpg" alt="making-date-3-all-3" width="500" height="304" /></p>
<p>&#8220;So here I&#8217;ve just assumed we&#8217;ll do Emerald next, then Ruby. It could be done the other way. So Emerald is done after six months. What happens with revenue there?&#8221;</p>
<p>&#8220;If things go according to plan, we think Emerald would bring in about 150K in its  first quarter out,&#8221; Susan said.</p>
<p>&#8220;Yes. So even that revenue is a big chunk of the cost of doing Ruby, and of course we&#8217;re already covered by Obsidian. So by the end of the three projects, we would see $500,000 in revenue, and it would all fall into this fiscal year. And the total cost of the projects you are asking for is around $375,000 if we use the development estimates. Even with six developers, we are looking at expenses of about 3/4 of 600K, or 450K for the nine months. See the difference?&#8221;</p>
<p>Susan stared for a moment. &#8220;Yes, sure. Done your way, the same projects actually break even this year or earn a small profit. Done my way, we spend $450,000 before we get anything.&#8221;</p>
<p>Kate said, &#8220;Let&#8217;s not think my way your way. Done in parallel, the projects burn through almost a half a million dollars this year. Done in series, they burn $150,000 in the first quarter, then start earning back, and we are back to even by the end of the fiscal year.&#8221;</p>
<p>Kate smiled. &#8220;If it was your money, Susan, which way would be &#8216;your way&#8217;?&#8221;</p>
<p>Susan said, &#8220;I get it. My way is to do this in series. That&#8217;s what I recommend. Yes, totally. I&#8217;m sure that&#8217;s what I meant all along. Serial.&#8221;</p>
<p>Kate laughed. &#8220;I thought so. It&#8217;s almost lunch time, are we done for the morning?&#8221;</p>
<p>Susan thought. &#8220;I think so, yes. I&#8217;d ask to have lunch with you but I need to think a bit first. I&#8217;m still worried about contingencies and risks.&#8221;</p>
<p>&#8220;Good,&#8221; said Kate. &#8220;I&#8217;d like you to think about that. As a hint, think in terms of what you can do as Product Owner to manage the risk. But keep in mind it&#8217;s your money, and you can just barely afford the $150K a month for your six developer team.&#8221;</p>
<p>&#8220;That&#8217;s scary,&#8221; Susan said. &#8220;I guess that&#8217;s what you feel all the time?&#8221;</p>
<p>&#8220;Well, it&#8217;s the problem I have all the time, Susan. But I&#8217;m not very scared. See if you can figure out why. When shall we meet again?&#8221;</p>
<p>&#8220;I&#8217;d like to come in again tomorrow, if that&#8217;s OK,&#8221; said Susan.</p>
<p>&#8220;Sure thing,&#8221; said Kate. &#8220;I&#8217;ll be here. Thanks, this was fun.&#8221;</p>
<p>&#8220;It was,&#8221; said Susan. &#8220;Oddly enough, it was. Thanks, Kate.&#8221;</p>
<p>&#8220;You&#8217;re welcome, Susan, and thank you. We could use another three million in revenue.&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/xpmag/kate-oneal-funding-susans-projects.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Important Dietary Calculation</title>
		<link>http://xprogramming.com/blog/misc/important-dietary-calculation.htm</link>
		<comments>http://xprogramming.com/blog/misc/important-dietary-calculation.htm#comments</comments>
		<pubDate>Tue, 16 Jun 2009 22:12:44 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1039</guid>
		<description><![CDATA[<p>A pizza of radius z and thickness a has volume pi*z*z*a</p>
<p>Per Jens Ohlig, twitter &#8220;johl&#8221;</p>
]]></description>
			<content:encoded><![CDATA[<blockquote><p>A pizza of radius z and thickness a has volume pi*z*z*a</p></blockquote>
<p>Per Jens Ohlig, twitter &#8220;johl&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/misc/important-dietary-calculation.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>My Named Cloud Is Better Than Your Named Cloud</title>
		<link>http://xprogramming.com/blog/needles/my-named-cloud-is-better-than-your-named-cloud.htm</link>
		<comments>http://xprogramming.com/blog/needles/my-named-cloud-is-better-than-your-named-cloud.htm#comments</comments>
		<pubDate>Sat, 13 Jun 2009 13:42:52 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Learning]]></category>

		<category><![CDATA[Needles]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1030</guid>
		<description><![CDATA[<p>We humans like to take a very soft cloud of ideas and give it a name, such as Waterfall or Scrum or Lean or Kanban,  in an attempt to get a better handle on some good ideas. We also seem&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>We humans like to take a very soft cloud of ideas and give it a name, such as Waterfall or Scrum or Lean or Kanban,  in an attempt to get a better handle on some good ideas. We also seem to have an irresistible impulse to describe how good our Named Cloud is compared to some other Named Cloud. I imagine part of this is no more than a normal desire to share our Internal Cloud with others, so that they may benefit. Sometimes we seem to go overboard with that, to Named Cloud Bashing.</p>
<p style="padding-left: 30px;">&#8220;Kanban is better than XP because Kanban has more WIP.&#8221;</p>
<p style="padding-left: 30px;">&#8220;XP is better than Kanban because in XP we have actual programming.&#8221;</p>
<p>Sometimes it seems that all this revolves around personalities. I know of a small number of people who appear to me to think Scrum is bad because they don&#8217;t like Ken. There must, therefore, be hundreds of people who think XP is bad because of Yours Truly.</p>
<h3>Is It Still Scrum If &#8230;</h3>
<p>Trouble with clouds is that they change. They even run into each other as the wind blows them around. That cloud you stupidly thought looked like a bunny ran into my cloud that looks exactly like a dinosaur. Now it looks totally like New York, and you foolishly  insist that now it is a big dinosaur-eating bunny.</p>
<p style="padding-left: 30px;">&#8220;Is it still Scrum if we use a kanban board instead of a burndown?&#8221;</p>
<p style="padding-left: 30px;">&#8220;Is it still XP if we don&#8217;t break things down into tasks but just use stories?&#8221;</p>
<h3>Who the hell cares???</h3>
<p>The question we ought to be asking is whether, if we adopt this idea from wherever we found it, will we do better than if we adopt this other idea. The absolutely best way to determine this is to try it. We can get ideas from experts, even if they happen to be proponents of Other Named Clouds Which Shall Be Anathema.</p>
<h3>Ad Processem: A Continuing Kind of Fallacy</h3>
<p>The process wars have gone on more than long enough.  It doesn&#8217;t matter who had an idea, or what process originally contained an idea. What matters is what ideas we apply skillfully and wisely to our situation in order to improve it.</p>
<p>I&#8217;ve been helping software development teams improve for a long time now. In so doing, I draw ideas from the whole range of the Fuzzy Cloud Cluster named Agile. I try to give credit where it is due to the individuals who invented this idea, if I know them, or to the authors who best describe the idea.</p>
<p>But that Named Cloud that looks like a Rat today? I don&#8217;t think we should care much about that, because the wind is blowing away the front part of it and very shortly no one is going to give a Rat&#8217;s Ass about what it used to be.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/needles/my-named-cloud-is-better-than-your-named-cloud.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>I&#8217;m not a wise Latina woman &#8230;</title>
		<link>http://xprogramming.com/blog/needles/im-not-a-wise-latina-woman.htm</link>
		<comments>http://xprogramming.com/blog/needles/im-not-a-wise-latina-woman.htm#comments</comments>
		<pubDate>Sun, 31 May 2009 15:11:58 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Needles]]></category>

		<category><![CDATA[S and P]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1027</guid>
		<description><![CDATA[<p>&#8230; but I think Sonia Sotomayor can probably make better decisions than Lindsey Graham. Bad move, Lindsey.</p>
<p><a href=" http://twurl.nl/vhkklz" target="_blank">Graham Calls on Sotomayor to Apologize for &#8216;Wise Latina&#8217; Statement</a></p>
]]></description>
			<content:encoded><![CDATA[<p>&#8230; but I think Sonia Sotomayor can probably make better decisions than Lindsey Graham. Bad move, Lindsey.</p>
<p><a href=" http://twurl.nl/vhkklz" target="_blank">Graham Calls on Sotomayor to Apologize for &#8216;Wise Latina&#8217; Statement</a></p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/needles/im-not-a-wise-latina-woman.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Kanban as Cure for &#8220;Failed Iterations&#8221;?</title>
		<link>http://xprogramming.com/blog/management/kanban-as-cure-for-failed-iterations.htm</link>
		<comments>http://xprogramming.com/blog/management/kanban-as-cure-for-failed-iterations.htm#comments</comments>
		<pubDate>Sun, 31 May 2009 12:02:56 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Management]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1022</guid>
		<description><![CDATA[<p>What should an iterative-Agile team do if it appears that not all the stories they signed up for will get done? Possibilities include:</p>

Just get done what you can, velocity is velocity;
Crunch really hard because you&#8217;ve made a commitment;
Renegotiate&#8230;]]></description>
			<content:encoded><![CDATA[<p>What should an iterative-Agile team do if it appears that not all the stories they signed up for will get done? Possibilities include:</p>
<ol>
<li>Just get done what you can, velocity is velocity;</li>
<li>Crunch really hard because you&#8217;ve made a commitment;</li>
<li>Renegotiate with the Customer / Product Owner;</li>
<li><strong>Stop doing iterations: use a Kanban approach instead.</strong></li>
</ol>
<p>It&#8217;s this last one we are here to talk about.<span id="more-1022"></span></p>
<p>There is as yet no solid definition of Kanban for Software that satisfies me, and what people are talking about here is in essence a continous flow kind of approach, usually with limits on the amount of work you have &#8220;in process&#8221; in various stages of the project. <a href=" http://twurl.nl/8dl7xb" target="_blank">See Kenji Hiranabe&#8217;s article for example</a>.</p>
<p>I take the idea, tweeted by John Goodsen of RADSoft, among others, to mean that if we didn&#8217;t have a defined edge to the iteration, then no one could complain that we had failed if we got only nine out of ten things done that we &#8220;promised&#8221;. As John tweeted:</p>
<blockquote><p>It&#8217;s about falling short because of iteration planning - remove iteration planning and you remove the entire wasteful exercise.</p></blockquote>
<p>I&#8217;ve certainly seen teams whose management or product owner would berate them for falling short of the iteration &#8220;promise&#8221;, and this can lead to some very bad results. The initial response will be to &#8220;under-promise&#8221;. Not &#8220;under-promise and over-deliver&#8221; &#8212; they&#8217;ll say that, perhaps, but they won&#8217;t do it. No one does.</p>
<p>When the team tries to under-promise, this same manager or product owner will push them to commit to more: it&#8217;s part of that management pattern. Most teams will cave and try to do more. They want to be cooperative, they want to be appreciated, and so on.</p>
<p>This will not work. They&#8217;ll fall short again. Management will continue the pressure. Finally, the team will turn their secret screws and start producing code that is shiny on the outside and rotten on the inside. Velocity will continue to decline, pressure will continue to rise, and things will get bad. </p>
<p>On the surface, we can see that a Kanban approach might fix this, because there is no defined point at which to apply this undue pressure. It&#8217;s not a bad idea: it might even be a good one, at least in the interim, for reducing the pressure.</p>
<h3>Iterations provide rhythm</h3>
<p>There can be a pleasant rhythm to the iteration, and there are things that fit naturally into it. It can be very pleasant to lift our heads up, look around, plan the week, then at the close of the week, lift up again, look around, and see how we did.</p>
<p>There&#8217;s work that needs to be done, such as reviewing the backlog, reviewing the product, perhaps some kinds of testing or other wrapup work that are not yet fully continuous. Some of those probably should not be continuous, though many of them should be. </p>
<p>Now Kanban advocates will say that Kanban is better (what else would they say?) because it lets you have whatever rhythms you want rather than &#8220;imposing&#8221; one. Uh huh, yeah, and that&#8217;s why people who don&#8217;t cut the grass every week have yards that look like forests. </p>
<h3>Whack-a-mole</h3>
<p>In my experience, a continous flow model becomes very relentless. There are always 7 things on your list. As soon as you get one off, another one pops up.  Every day begins to look like every other. </p>
<p>I don&#8217;t know if this is inevitable or not. My experience suggests that it is at least very likely. </p>
<h3>Bottom line?</h3>
<p>The small batch flow of Kanban has advantages, there&#8217;s no doubt about it. Certainly the Kanban board alone shows us that. </p>
<p>I am not convinced at all that it&#8217;s always the best way: I don&#8217;t expect that there is an &#8220;always the best&#8221; way. </p>
<p>If a team is getting too much pressure to sign up for more work, and too much hassle about not &#8220;keeping its promises&#8221;, Kanban might take off the pressure and let something good happen.  My guess, however, is that just moving to Kanban in such a situation might be ignoring the real problem. </p>
<p>But we don&#8217;t know. It&#8217;s another trick in the bag. I hope teams at various levels will try it and tell us just what they did, and what happened.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/management/kanban-as-cure-for-failed-iterations.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Automating Story Tests</title>
		<link>http://xprogramming.com/blog/needles/automating-story-tests.htm</link>
		<comments>http://xprogramming.com/blog/needles/automating-story-tests.htm#comments</comments>
		<pubDate>Thu, 28 May 2009 02:57:40 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Needles]]></category>

		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1010</guid>
		<description><![CDATA[<p>OK, let&#8217;s talk, for the ten thousandth time, about when story (acceptance) tests should be automated, and when they should not. I&#8217;m patient, in a manner of speaking. I can keep doing this until you get it.<span id="more-1010"></span></p>
<p>When I say &#8220;story&#8221;&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>OK, let&#8217;s talk, for the ten thousandth time, about when story (acceptance) tests should be automated, and when they should not. I&#8217;m patient, in a manner of speaking. I can keep doing this until you get it.<span id="more-1010"></span></p>
<p>When I say &#8220;story&#8221; test, I mean a test which has been provided to help the customer see that she has gotten what she asked for.  Here&#8217;s an example, in a classic story format:</p>
<ul>
<li>As a purchaser,</li>
<li>I want to see an itemized bill for my order,</li>
<li>So that I&#8217;ll know what I&#8217;ve ordered and what it will cost,</li>
<li>For example:
<ul>
<li>CD: &#8220;Beatles White Album&#8221; $12.00</li>
<li>Book: &#8220;XP Installed&#8221; $14.00</li>
<li>Shipping: $4.00</li>
<li>Total: $30.00</li>
</ul>
</li>
</ul>
<p>We use examples like this to ensure that we understand what our customer wants, and we show the results to our customer so that they&#8217;ll see what we&#8217;ve done. Ideally, they&#8217;ll see that we&#8217;ve done what they want; sometimes they&#8217;ll see that we&#8217;ve done something that they don&#8217;t want.</p>
<p>When should such a test be automated?</p>
<p>Frankly, the answer is simple: <em>any test which is going to be done more than once should be automated.</em> </p>
<p>There are a few kinds of objections to this fact (;-&gt;) that I&#8217;d like to talk about.</p>
<h3>We shouldn&#8217;t automate the test because we might see something different the next time we run it.</h3>
<p>Yes, if we&#8217;re going to look for something different, we quite likely shouldn&#8217;t automate it. <em>Therefore we are not planning to do the same test more than once. The rule does not apply.</em></p>
<h3>We shouldn&#8217;t automate the test if it is only going to be run once.</h3>
<p>We cannot ever know that we will only need to do the test once, even if we plan to throw the code away after running it once. Why? Because we don&#8217;t know it will pass the test the first time. If it doesn&#8217;t pass &#8230; we&#8217;ll need to run the test again.</p>
<p>The more common case, of course, is that the feature is being written to be left in the system. Therefore there is a chance we&#8217;ll break it. Therefore we need to run the test more than once. Oh sure, we can guess, estimate, assume, possibly even sometimes calculate that we probably haven&#8217;t broken this feature. Would you stake your life on it, for the rest of the duration of your project? I wouldn&#8217;t.</p>
<p><em>There is no test that is guaranteed to be needed only once.</em></p>
<h3>We shouldn&#8217;t automate the test if it would cost more to automate than to perform it manually as many times as we will perform it.</h3>
<p>The whole point of automation is to make things faster and more repeatable than human manual processing. Will it take longer to automate this test than to do it repeatedly by hand? <em>Well, we&#8217;re not very bloody good at automation, then, are we?&#8221;</em></p>
<h3>It comes down to this:</h3>
<p>Every story test, by definition, needs to get the same answers every time. We can never be sure that a story test will not be able to be run more than once, and most of them clearly do need to be run more than once.</p>
<p>Therefore the only excuse for not automating these repeated tests is that we aren&#8217;t very good at automation. </p>
<p>I&#8217;m not very comfortable saying that the reason I&#8217;m not going to automate my next story test is that I&#8217;m not very good. Are you?</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/needles/automating-story-tests.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Prezi Testi</title>
		<link>http://xprogramming.com/blog/misc/prezi-testi.htm</link>
		<comments>http://xprogramming.com/blog/misc/prezi-testi.htm#comments</comments>
		<pubDate>Wed, 27 May 2009 02:19:00 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=1001</guid>
		<description><![CDATA[<p>This is a test of an embedded Prezi. It has no actual useful content. If this had been an actual article it would have been interesting. Wish me luck.<span id="more-1001"></span></p>
<p> </p>
<p>This is after the Prezi.</p>
]]></description>
			<content:encoded><![CDATA[<p>This is a test of an embedded Prezi. It has no actual useful content. If this had been an actual article it would have been interesting. Wish me luck.<span id="more-1001"></span></p>
<p> </p>
<p>This is after the Prezi.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/misc/prezi-testi.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Is All This Success Actually Failure?</title>
		<link>http://xprogramming.com/blog/tech/scrum-benefits.htm</link>
		<comments>http://xprogramming.com/blog/tech/scrum-benefits.htm#comments</comments>
		<pubDate>Fri, 22 May 2009 11:13:09 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Learning]]></category>

		<category><![CDATA[Management]]></category>

		<category><![CDATA[Misc]]></category>

		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=986</guid>
		<description><![CDATA[<p>There&#8217;s a bit of a tempest going around &#8230;<span id="more-986"></span></p>
<p>In an interview, Ken Schwaber said <strong>&#8220;</strong>I estimate that <em><span style="font-style: normal;">75% of those organizations using Scrum will not succeed in getting the benefits that they hope for from it</span></em>.&#8221;</p>
<p><em>I think that&#8217;s true.</em></p>
<p>On his site, Alan&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a bit of a tempest going around &#8230;<span id="more-986"></span></p>
<p>In an interview, Ken Schwaber said <strong>&#8220;</strong>I estimate that <em><span style="font-style: normal;">75% of those organizations using Scrum will not succeed in getting the benefits that they hope for from it</span></em>.&#8221;</p>
<p><em>I think that&#8217;s true.</em></p>
<p>On his site, Alan Shalloway converted that quote to &#8220;The Scrum community acknowledges that only 25% of teams adopting Scrum will get the value they hope to get from it.&#8221;</p>
<p><em>I think that&#8217;s exaggeration.</em> </p>
<p>Alan titled his article &#8220;Challenging Why (not if) Scrum Fails,&#8221; and refers  to &#8220;the high failure rate.&#8221;</p>
<p><em>I think that&#8217;s distortion.</em></p>
<p>My work, primarily, is helping Scrum teams get higher on the benefit scale. Every single Scrum installation I&#8217;ve visited has been pleased with progress, and wanted more.  </p>
<p><em>I think that&#8217;s important.</em></p>
<h3>Alan&#8217;s point &#8230;</h3>
<p>&#8230; and he nearly has one, is that Scrum (itself) does not change (itself). He asserts that Scrum should change, and that he knows how it should change. He thinks that Lean and Kanban and a few other things perhaps should be added to Scrum, and that somehow it would evolve.</p>
<p>Sorry, but that&#8217;s not the Scrum model.</p>
<p> Scrum is about &#8220;Inspect and Adapt&#8221;. Scrum <em>installations</em> change. They are mandated to change, required to change. They are required to use every resource of their minds to see obstacles and impediments, and remove them or get around them. That&#8217;s the essence of what Scrum is.</p>
<p>Scrum is not a process based on a mass of  rules, principles, laws, and practices. It has a few roles, a few meetings, a few rituals. These frame a team&#8217;s work in a way that lets obstacles become visible. Scrum challenges the team to figure out what to do.</p>
<p><strong>And that&#8217;s the end of Scrum&#8217;s job &#8230; and the beginning of the rest of your professional learning.</strong></p>
<p>Teams using Scrum need to learn whatever will help them perform as well as they want to. Is Lean valuable? Certainly: many Scrum teams are applying Lean. Is Kanban valuable? Absolutely: there are probably more Scrum teams using Kanban boards than there are Kanban software teams in total. </p>
<p>There&#8217;s a huge amount of material one needs to learn to be really good at anything, including software development.  There are many theories and principles that will help. The entire Agile / Lean / Scrum / XP / Kanban / Whatever community is engaged in finding better ways to be good at what we do.</p>
<p>It seems to be part of man&#8217;s history for a couple of people to get a hold of part of the same idea, then try to tear each other down for being wrong. I&#8217;d like the world better if it worked some other way, and mostly that&#8217;s what I try to do.</p>
<p>Would you like some help improving what you&#8217;re doing? I can help, and I can recommend others who&#8217;ll also help. </p>
<p>Now then. I&#8217;m going out in the sunshine. Have a great day!</p>
<p> </p>
<div id="attachment_987" class="wp-caption alignnone" style="width: 522px"><img class="size-large wp-image-987" title="Sunshine is My Friend" src="http://xprogramming.com/wp-content/uploads/pict0001-1024x768.jpg" alt="Sunshine car: Montego Blue 335i Convertible" width="512" height="384" /><p class="wp-caption-text">Sunshine car: Montego Blue 335i Convertible</p></div>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/tech/scrum-benefits.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Story Cost Does Matter</title>
		<link>http://xprogramming.com/blog/tech/story-cost-does-matter.htm</link>
		<comments>http://xprogramming.com/blog/tech/story-cost-does-matter.htm#comments</comments>
		<pubDate>Wed, 20 May 2009 03:54:27 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[Management]]></category>

		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=984</guid>
		<description><![CDATA[<p>Somewhere, somewhen, Arlo Belshee suggested not paying attention to story cost, only to value. Since story value probably varies from some large negative number to some large positive number, value is certainly very important.</p>
<p>However, cost matters also. Suppose without loss&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>Somewhere, somewhen, Arlo Belshee suggested not paying attention to story cost, only to value. Since story value probably varies from some large negative number to some large positive number, value is certainly very important.</p>
<p>However, cost matters also. Suppose without loss of generality that your highest value stories have value 100.  Suppose that stories vary in cost between 1 and 3. And uppose we have time to do 30 points of work.</p>
<p>We can do 10 3-point stories and get value 1000. Or we can do 30 1-point stories and get value 3000.  </p>
<p>3000 would be more. Story cost does matter. </p>
<h3>Left to the reader &#8230;</h3>
<p>Suppose that, like most organizations, you don&#8217;t really know much about the value of your stories. Should you do high-cost ones, low-cost ones, or what?</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/tech/story-cost-does-matter.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>The Danger of Bees</title>
		<link>http://xprogramming.com/blog/s-and-p/the-danger-of-bees.htm</link>
		<comments>http://xprogramming.com/blog/s-and-p/the-danger-of-bees.htm#comments</comments>
		<pubDate>Tue, 19 May 2009 19:47:19 +0000</pubDate>
		<dc:creator>Ron Jeffries</dc:creator>
		
		<category><![CDATA[Hot Needle of Inquiry]]></category>

		<category><![CDATA[S and P]]></category>

		<guid isPermaLink="false">http://xprogramming.com/?p=981</guid>
		<description><![CDATA[<p>I know you&#8217;re all very busy right now fighting terrorism, but I thought you should know about some threats that are more serious. </p>
<p>Look down <a href="http://adaisythroughconcrete.blogspot.com/2009/01/just-or-bust-risk-assessment.html" target="_blank">this page</a> about half way for the important info &#8230;</p>
]]></description>
			<content:encoded><![CDATA[<p>I know you&#8217;re all very busy right now fighting terrorism, but I thought you should know about some threats that are more serious. </p>
<p>Look down <a href="http://adaisythroughconcrete.blogspot.com/2009/01/just-or-bust-risk-assessment.html" target="_blank">this page</a> about half way for the important info &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://xprogramming.com/blog/s-and-p/the-danger-of-bees.htm/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
