<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AgileKiwi &#187; Estimation and Pricing</title>
	<atom:link href="http://www.agilekiwi.com/category/estimationandpricing/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.agilekiwi.com</link>
	<description>The neglected essentials of software development</description>
	<lastBuildDate>Fri, 03 Feb 2012 02:51:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Bayes&#8217; Theorem Demystified</title>
		<link>http://www.agilekiwi.com/estimationandpricing/bayes-theorem-demystified/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/bayes-theorem-demystified/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 00:52:23 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>
		<category><![CDATA[decision making]]></category>
		<category><![CDATA[slightly off topic]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/?p=587</guid>
		<description><![CDATA[<p><a href="http://www.codinghorror.com/blog/2007/04/an-initiate-of-the-bayesian-conspiracy.html">Bayes’ Theorem</a> is an important tool when analysing probabilities.&#160; It helps us to avoid <a href="http://en.wikipedia.org/wiki/List_of_cognitive_biases">cognitive traps</a> and make better decisions.&#160; However, it is usually presented as something difficult, or even controversial.&#160; The typical article on Bayes’ Theorem stresses how difficult it is, and then goes on to bemoan the&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/bayes-theorem-demystified/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.codinghorror.com/blog/2007/04/an-initiate-of-the-bayesian-conspiracy.html">Bayes’ Theorem</a> is an important tool when analysing probabilities.&#160; It helps us to avoid <a href="http://en.wikipedia.org/wiki/List_of_cognitive_biases">cognitive traps</a> and make better decisions.&#160; However, it is usually presented as something difficult, or even controversial.&#160; The typical article on Bayes’ Theorem stresses how difficult it is, and then goes on to bemoan the fact that its not more widely used!&#160; In contrast, I argue that Bayes can be explained concisely, memorably, and intuitively.</p>
<p>Read on, and judge for yourself whether I’ve succeeded…</p>
<p><span id="more-587"></span><br />
<h2>Example</h2>
<p>Consider this example <a href="http://en.wikipedia.org/wiki/Bayes'_theorem#Frequentist_example">adapted from Wikipedia</a>: An entomologist finds a beetle with spots on its back. She thinks it might be a rare subspecies, because 98% of the rare subspecies have such spots, but only 5% of the common variety have them.&#160; The subspecies makes up only 0.1% of the population. Given the fact that the beetle in her hand is spotty, what is the probability that it is also rare?</p>
<p>The entomologist wants to know <strong>P(rare|spotty), </strong>which reads from left to right as “probability of being rare, given that it’s spotty”.</p>
<p>This is the time to use Bayes’ Theorem.&#160; She wants <strong>P(rare|spotty)</strong> but only has <strong>P(spotty|rare).</strong>&#160; The latter is 98%, but she suspects that the former may be much lower.&#160; She’s right, the spotted beetle in her hand is probably <em>not</em> rare… and Bayes’ can tell us why.</p>
<h2>Memorable</h2>
<p>I want to explain Bayes’ Theorem in a way that is easy to remember.&#160; To begin, let’s start from scratch and think about the probability that one randomly-selected beetle is both rare <em>and</em> spotty.&#160; There are two mathematically-correct ways to express that probability.&#160; One is to write:</p>
<p>P(rare <u><em>and</em> </u>spotty) = P(spotty|rare) P(rare)&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />= “(the probability of it being spotty, given that it <em><u>is</u></em> rare)<em> times (</em>the probability of it being rare in the first place)</p>
<p>The other is:</p>
<p>P(rare <em><u>and</u></em> spotty) = P(rare|spotty) P(spotty)&#160;&#160; <br />=&#160; “(the probability of it being rare, given that it <em><u>is</u></em> spotty) <em>times</em> (the probability of it being spotty in the first place)”</p>
<p>We’ve just written down two different ways to compute the same thing.&#160; So they must be equal to each other. I.e.:</p>
<p>P(spotty|rare) P(rare)&#160; = P(rare|spotty) P(spotty)</p>
<p>If we re-express this in a general-purpose notation, we get</p>
<p><strong><font size="4">P(A|B) P(B) = P(B|A) P(A)</font></strong></p>
<p>That is the formula you need to remember.&#160; To recall its left-hand side, remember this intuitive fact: the probability of two events <em>both</em> happening is the (<a href="http://en.wikipedia.org/wiki/Conditional_probability">conditional</a>) probability of one happening given that the other already <em>has</em> happened, times the (un-conditional) probability of the other.&#160;&#160;&#160;&#160; The right-hand side is just the same thing round the other way.</p>
<p>That’s all you need to remember.&#160; Start with the above formula, then use basic algebra to re-arrange it into the form you want.&#160; For instance, if you want to compute P(A|B), just divide both sides by P(B).&#160; (You’ll end up with the usual form of the Bayes’ equation, as seen in textbooks.)</p>
<h2>Intuitive</h2>
<p>Where Bayes gets interesting is when its used to assess the probability of some hypothesis, given the available evidence.&#160;&#160;&#160; Dividing both sides of our formula by P(B), and renaming&#160; A as the “hypothesis” and B as the “evidence”, we get this:</p>
<p>P(hypothesis|evidence) = P(evidence|hypothesis)&#160;&#160; P(hypothesis)    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; P(evidence)</p>
<p>Let&#8217;s consider a simple example involving a blond-haired young boy called Johnny, and an apple that’ is missing from the neighbour’s tree.&#160; The hypothesis in question is “Little Johnny stole the apple” and the evidence is “blond hair left snagged in apple tree”.&#160;&#160; The angry neighbour wants to know the probability that Johnny did indeed steal the apple, given the evidence of the hair – i.e.&#160; P(Johnny-stole-apple|blond-hair-left-at-scene).&#160; Our formula becomes</p>
<p>P(Johnny-stole-apple|blond-hair-left-at-scene) =    </p>
<p>&#160;&#160;&#160;&#160; P(blond-hair-left-at-scene|Johnny-stole-apple)&#160; P(Johnny-stole-apple)     <br />&#160;&#160;&#160;&#160; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;&#160; <br />&#160;&#160;&#160;&#160;&#160; P(blond-hair-left-at-scene)</p>
<p>When used is this way, the formula includes three things:</p>
<ul>
<li>the left-hand-side, P(Johnny-stole-apple|blond-hair-left-at-scene), represents our degree of belief that Johnny stole the apple, <em>after</em> taking into account the evidence of the blond hair.&#160; This is called the <em>posterior</em> probability. </li>
<li>the term on the far right, P(Johnny-stole-apple), represents our degree of belief that Johnny stole the apple, <em>before</em> taking into account the evidence of the blond hair.&#160; This is called the <em>prior</em> probability.&#160; </li>
<li>The rest (i.e. middle) of the equation represents how the evidence of the blond hair influences the prior belief, by making it stronger or weaker. </li>
</ul>
<p>Let’s consider each of the RHS terms, and see how they are relevant to the outcome.&#160; Firstly, consider <strong>P(blond-hair-left-at-scene|Johnny-stole-apple).</strong>&#160; For instance, if the neighbour knew that Johnny suffered from excessive hair loss, then this probability would go up.&#160; I.e. if he was particularly likely to lose hair, then the presence of hair would be stronger evidence of his guilt (as opposed to <em>someone else’s</em> guilt).&#160; Conversely, if Johnny always wore hats, then the presence of a hair would be weaker evidence of <em>his</em> guilt.</p>
<p>Secondly, let’s consider <strong>P(blond-hair-left-at-scene).</strong>&#160; This is the overall probability of a blond hair left at the scene, regardless of who committed the crime.&#160; If this number goes up, then the hair is considered weaker evidence of guilt. For instance, if the crime occurred in a Swedish town where most boys have blond hair, then a blond hair would be relatively weak evidence against Johnny.&#160; It could have come from almost anyone.&#160; But if the crime occurred in China, the probability of a <em>blond</em> hair being left at the scene would be much lower, so the fact that one <em>was</em> found is stronger evidence against little blond Johnny.</p>
<p>Finally, let’s consider <strong>P(Johnny-stole-apple).</strong>&#160; This is the neighbour’s prior belief that Johnny stole the apple – i.e. his belief before considering <em>this particular</em> evidence.&#160; If the neighbour knows that Johnny is a caring, honest, Boy Scout with an allergy to apples, then his prior belief in Johnny’s guilt will be relatively low.&#160; To reverse that prior belief, and produce a high posterior probability of guilt, the evidence of the hair would have to be particularly compelling.&#160; (E.g. Johnny is the only blond-haired boy in a Chinese village, and he suffers from persistent hair loss).&#160;&#160; If the neighbour doesn’t know Johnny at all, then he has no option but to assign prior probability based on the population in general – e.g. if there are 10 kids in the neighbourhood, the prior probability of Johnny being the thief could be assumed to be 1/10th.</p>
<p>So we can see that all terms of the right hand side contribute to the final result in ways that are intuitively sensible.&#160; Bayes’ is not so hard.&#160; <em>It actually makes intuitive sense.</em></p>
<h2>What’s so difficult then?</h2>
<p>In practice, there can be some obstacles to applying Bayes’ successfully. Obstacles such as:</p>
<ol>
<li><em>Remembering</em> that P(hypothesis) is an <em>input</em> to computing P(hypothesis|evidence).&#160; If you use the formula, you won’t forget. But when we rely on our intuitions instead of the formula, we tend to neglect P(hypothesis).&#160; This mistake is known as <a href="http://en.wikipedia.org/wiki/Base_rate_fallacy">base rate neglect</a>.&#160; For instance, in the spotted beetle example, P(rare) is the base rate – and it’s only only 0.1%.&#160; If you neglect the base rate, you’ll intuitively over estimate the chances of a spotted beetle being rare. </li>
<li>Being <em>willing</em> to use P(hypothesis) as an input.&#160; Having to rely on P(hypothesis) may seem inconvenient because its often hard to obtain an objectively-correct value for       <br />P(hypothesis).&#160; So, out of necessity, we may end up using subjective guesses for P(hypothesis).&#160; This subjectivity is the cause of much of the controversy that dogged Bayes’ Theorem in the 20th century.&#160; The solution is that, for many kinds of problems, “probability” actually means “<a href="http://en.wikipedia.org/wiki/Bayesian_probability">measure of belief</a>” – rather than some number which is computed from repeatable trials.&#160; [Subjective evaluation of P(hypothesis) is also the cause of much of the <em>power</em> of Bayes, since the formula doesn’t <em>mind</em> if P(hypothesis) is subjective.&#160; Therefore, it’s a great way to take an initial viewpoint, which may be subjective, and adjust it as we receive new objective evidence.] </li>
<li>Computational difficulties when generalizing beyond simple yes/no hypotheses and one piece of evidence.&#160; For instance, you may want to consider several events (blond hair left at scene <em>and</em> passer-by reports glimpsing possible thief in pink tracksuit), or you may have <a href="http://en.wikipedia.org/wiki/Random_variables">random variables</a> instead of boolean events.&#160; These issues are entirely solvable, but beyond the scope of this blog post. </li>
</ol>
<p>&#160;</p>
<p>Bayes’ Theorem gives us a powerful tool for dealing with uncertainty.&#160; I hope this page will help you (and me) recall the basics ;-)</p>
<hr />
<p>Finally, for an enjoyable read on the history and uses of Bayes’ Theorem, check out <a href="http://www.amazon.com/Theory-That-Would-Not-ebook/dp/B0050QB3EQ/ref=tmm_kin_title_0?ie=UTF8&amp;m=A3QI763M62X7GQ&amp;qid=1325203926&amp;sr=8-1">this new book</a> from Sharon Bertsch McGrayne.</p>
<p><em>Postscript:</em> <a href="http://www.reddit.com/r/statistics/comments/nxa24/bayes_theorem_demystified_dont_keep_saying_its/">feedback about this post</a> included the following comment, which is worth quoting here in full: “fundamentally the idea actually <em>is</em> very simple and the interpretation and application where all the difficulty lies.”&#160;&#160; That seems like point worth noting: that the basics of Bayes are very simple, but successfully applying it to real world problems is much more difficult.&#160; I hope that this blog post has helped to convey the simplicity of the underlying idea.&#160; I wrote this post while reading the above book, since I couldn’t enjoy the book without understanding what Bayes’ Theorem really <em>is</em> :-)&#160;&#160; As for the difficult problems of devising real-world models and hypotheses, I’ll have to plead (relative) ignorance I’m afraid – since I’m a software designer not a statistician.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/bayes-theorem-demystified/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Estimation Summary for Agile Projects &#8211; Nov 2011</title>
		<link>http://www.agilekiwi.com/estimationandpricing/estimation-summary-for-agile-projects-nov-2011/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/estimation-summary-for-agile-projects-nov-2011/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 22:29:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/?p=573</guid>
		<description><![CDATA[<p>It’s over 7 years since my first post on contracts for agile projects.&#160; During the years since I’ve worked almost exclusively on agile projects with fixed scope, learning some real-life lessons along the way.</p>
<p>So here are some of the key points that now I keep in mind when considering&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/estimation-summary-for-agile-projects-nov-2011/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>It’s over 7 years since my first post on contracts for agile projects.&#160; During the years since I’ve worked almost exclusively on agile projects with fixed scope, learning some real-life lessons along the way.</p>
<p>So here are some of the key points that now I keep in mind when considering estimation, pricing and contracts for agile projects.&#160; These points are particularly relevant when customers have asked for fixed price <em>and</em> fixed scope.</p>
<p><span id="more-573"></span>
<p>&#160;</p>
<h2>1. It’s a valid thing to ask for…</h2>
<p>It’s perfectly natural for customers to want some up-front insight into likely cost and scope.&#160; In the spirit of <a href="http://www.agilekiwi.com/peopleskills/the-power-of-negotiation/">good negotiation</a>, we should take their concerns seriously.</p>
<p>&#160;</p>
<h2>2. … but many agile teams successfully dodge the issue.</h2>
<p>I asked someone recently what they were doing about this, and their reply was that they don’t really find themselves doing many contracts with fixed price and fixed scope.&#160; That certainly solves the problem ;-)&#160; I suspect it depends on the kind of company you work for.&#160; If you’re an in-house IT shop (i.e. customer and supplier are the same organisation) then I would imagine that there is little call to fix both scope and budget.&#160; However if you work as I do, in a company that undertakes development projects for other organisations, then you’re more likely to be asked to fix both price and scope.&#160; It also depends on the “purchasing culture” in the city where you work.&#160; For instance I work in Wellington, where government procurement processes heavily influence the way people expect contracts to be framed.&#160; But in Auckland, which is only an 8 hour drive away, there’s a very different procurement culture that’s dominated by private companies.</p>
<p>&#160;</p>
<h2>3. There are lots of different kinds of contracts which you might consider</h2>
<p>Alistair Cockburn has a big list of suitable contract types <a href="http://alistair.cockburn.us/Agile+contracts">here</a>. </p>
<p>&#160;</p>
<h2>4. Flexible pricing is probably good</h2>
<p>Rather than absolutely fixing both price and scope, it makes the project run better if you can allow at least one of them to “flex” in a controlled way.&#160; This still gives the customer early insight into commitments and benefits,&#160; but avoids the harsher downsides of absolutely fixing both.&#160; <a href="http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/">Here’s</a> an approach that I’ve tried and liked.&#160; It’s not for everyone, but in cases where it’s understood and embraced by both parties, I do believe its better than fixing everything.</p>
<p>&#160;</p>
<h2>5. Here are my favourite “ingredients for success”:</h2>
<ul>
<li>Use a “discovery phase”.&#160; This is a timeboxed phase at the start of the project where you learn more about what the customer needs, and prepare an itemized breakdown of functionality.&#160; That itemized breakdown is the scope that you then&#160; commit to.&#160; A discovery phase is good for both parties, because it results in much better-informed scoping than projects which attempt to fix the scope without such a phase.&#160; The discovery phase should be paid, rather than delivered for free – both because the customer gets value out of it, and because adequate discovery is too big to do for free.&#160; In terms of sizing the discovery phase, the Feature Driven Development community uses a rule of thumb that this phase should last for 2 weeks for every 6 months of development (IIRC).&#160; I think that’s about right.&#160; For example, I used 3 weeks for a 6 month project once, but during those 3 weeks we also built a prototype. </li>
<li>The bigger the project, the more coarse-grained your discovery phase must be. (Within a realistic timeframe, you simply can’t drill down into as much detail as you might in the discovery phase for a smaller project.&#160;&#160; And if you do, it turns into BDUF, which is counter-productive for all the well-known reasons.&#160; So I’d suggest making do with a coarse-grained breakdown on large projects.) </li>
<li>The itemized breakdown of scope should be tabular rather than prose (i.e. a table rather than a document). This is a lesson I learned the hard way – the document was too ambiguous.&#160; One good way to organise the tabular breakdown is with a <a href="http://www.agileproductdesign.com/blog/the_new_backlog.html">story map</a>. </li>
<li>Ideally, that itemized breakdown of scope will actually serve three purposes: it will define the scope, it will form the basis of your estimate, and it will be what you track your progress against as you work through the project.&#160; IMHO, if you’re not using the <em>same</em> list for all three purposes, you’re risking trouble. </li>
<li>Typically, your cost estimate will be based on summing up points for every feature that’s in scope.&#160; Make sure you add a “buffer” of additional budget over and above that.&#160; There are two reasons why you might need such a buffer: (a) the inherent uncertainty in estimation and (ii) the need to allow time for for <a href="http://www.stickyminds.com/sitewide.asp?Function=edetail&amp;ObjectType=COL&amp;ObjectId=13498&amp;tth=DYN&amp;tt=siteemail&amp;iDyn=2">Validation</a> (i.e. ensuring fitness for purpose, rather than merely <a href="http://www.agilekiwi.com/other/agile/compliance-to-spec-considered-unprofessional/">compliance to spec</a>).&#160; </li>
<li>Adding this buffer will typically produce an estimate which feels too high. So my rule of thumb is as follows, “if your estimate feels about right, its probably not.” ;-)&#160; Add the buffer! </li>
<li>A buffer that adequately accommodates both estimation uncertainty and validation effort tends to unfeasibly large. (Unfeasible in the sense that some manager somewhere won’t accept it ;-)&#160; So I prefer to use a <a href="http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/">target cost contract</a>.&#160; Some of the necessary buffering is built into the <em>target</em> in the target cost contract, but the rest is provided by the (controlled) <em>flexibility</em>. </li>
<li>Know how you’ll draw the line between “this is an addition to scope, and therefore requires a budget increase”, versus “this is something we should just do, and therefore requires no change in budget”.&#160;&#160; You always need at least some of the latter, certainly for Validation and probably also for convenience (its too much paperwork for formally increase the budget for every tiny change).&#160; I’ve outlined one suggestion for drawing this line, part way down the <a href="http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/">target cost</a> page. </li>
<li>It’s not enough for <em>you</em>&#160; to know how you’ll draw that line.&#160; Your <em>customer</em> must understand too.&#160; And <em>agree</em>.&#160; This applies to both management and subject matter experts, to both ‘gold owners’ and ‘goal donors’.&#160; All must understand what kinds of changes will affect the budget and what will not. </li>
<li>Use a project tracking and management tool that gives you a “whole of scope” view.&#160; If your tool only shows the current iteration or release, but your commitments are for the whole-of-scope, then you’re flying blind. </li>
</ul>
<p>&#160;</p>
<h2>6. “If I do all that, will it work?”</h2>
<p>Maybe. Maybe not ;-)&#160;&#160; Fixing price and scope of agile projects is fiendishly difficult.&#160;&#160; But there is a genuine business need for it so we, as agile practitioners, owe it to our customers to continue trying (and learning).</p>
<p>&#160;</p>
<h2>7. Understand Estimation</h2>
<p>When I finally started studying estimation, I was shocked to discover how little I, and my colleagues, really knew about it.&#160; We’d been getting by for years with little more than a grab-bag of misconceptions.&#160; And we didn’t even realise.&#160; So read Steve McConnell’s <a href="http://www.stevemcconnell.com/est.htm">Software Estimation: Demystifying the Black Art</a>.&#160; I haven’t found any other book that combines all the necessary material into one readable volume.&#160; </p>
<p>&#160;</p>
<h2>8. Understand the bit that Steve omitted from his book</h2>
<p>If you’re bidding for work, in a competitive situation, then you’ve got to read <a href="http://blogs.construx.com/blogs/stevemcc/archive/2007/06/06/estimating-in-an-outsourcing-context.aspx">this post from Steve McConnell</a> (including the comments) and my follow up <a href="http://www.agilekiwi.com/estimationandpricing/estimation-in-a-competitive-context/">here</a>.&#160; It’s not entirely comforting, in that it describes a problem which software vendors can’t easily solve on their own. (The obvious solutions require engagement from purchasers.)&#160; On a more positive note, the US engineering profession <a href="http://www.agilekiwi.com/estimationandpricing/beware-the-lowest-price/">did successfully solve</a> this problem.&#160; </p>
<p>I hope to eventually blog more about this in years to come, particularly some thoughts on what we can do in the absence of a purchaser-side solution.</p>
<p>&#160;</p>
<h2>9. See what others are doing.</h2>
<p>A great example is Atomic Object in Michigan.&#160; <a href="http://spin.atomicobject.com/2011/04/27/fixed-budget-fixed-scope-high-quality-custom-software/">Here’s a post</a> on their corporate blog to get you started.&#160; (You’ll notice they also like to introduce controlled flexibility. In Atomic’s case, they flex the scope rather than the price.)&#160; You should also check out their&#160; <a href="http://spin.atomicobject.com/2008/11/26/making-better-estimates/">whole series</a> on estimation. </p>
<p>&#160;</p>
<p>Good luck.</p>
<hr />
<p>PS. Is there a tool that can help?&#160; </p>
<p>Mostly its not about tools, but since you asked ;-) ….&#160; I think several things help: taking a whole-of-scope view; using story mapping; using the same artefacts as the basis for scoping, estimating and tracking; and keeping the user story/feature descriptions concise in order to prevent BDUF.&#160; I don’t know of any one single tool that meets all those criteria – <a href="http://www.tactyle.net/docs/how-is-tactyle-different/">so I started writing one</a>.&#160; It’s not finished yet, but with a little creativity there are many other ways to get by without an integrated tool.&#160; </p>
<p>All in all, this is not really in tools problem.&#160; Its really about understanding, attitude, negotiation and communication.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/estimation-summary-for-agile-projects-nov-2011/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Million, Billion, Trillion</title>
		<link>http://www.agilekiwi.com/estimationandpricing/million-billion-trillion/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/million-billion-trillion/#comments</comments>
		<pubDate>Sun, 11 Sep 2011 09:35:32 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/estimationandpricing/million-billion-trillion/</guid>
		<description><![CDATA[<p>Humans are bad at understanding large numbers.&#160;&#160; Our education system successfully <a href="http://johnhawks.net/weblog/reviews/brain/culture/math/dehaene-2008-number-logarithmic-space.html">trains us to understand</a> the relative magnitudes of small numbers,&#160; but for larger numbers we tend to fall back on <a href="http://www.jasoncollins.org/2011/01/does-mathematical-training-increase-our-risk-tolerance/">an intuitive logarithmic scale</a>.&#160; So we underestimate the real difference between, say, a million and a billion.&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/million-billion-trillion/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Humans are bad at understanding large numbers.&#160;&#160; Our education system successfully <a href="http://johnhawks.net/weblog/reviews/brain/culture/math/dehaene-2008-number-logarithmic-space.html">trains us to understand</a> the relative magnitudes of small numbers,&#160; but for larger numbers we tend to fall back on <a href="http://www.jasoncollins.org/2011/01/does-mathematical-training-increase-our-risk-tolerance/">an intuitive logarithmic scale</a>.&#160; So we underestimate the real difference between, say, a million and a billion.</p>
<p>Here’s a wee table I put together, to help with visualising large numbers.&#160; The table is based on the thickness of a New Zealand $1 coin.</p>
<ul>
<li>We start with just one, which is 2.74mm thick (about twice as thick as a US quarter). </li>
<li>Then, imagine we make a stack of 1000 coins.&#160; It would be about the height of a person (a tall person, with their arms up-stretched). </li>
<li>For a million coins, we would have to lie the stack on its side.&#160; It would form a “sausage” of coins about the length of an airport runway. </li>
<li>For a <a href="http://en.wikipedia.org/wiki/1000000000_(number)">billion</a> coins, the sausage would be as long as a country (specifically, India). </li>
<li>For a trillion coins, we’d end up way out in space (almost 8 times as far away as the moon).&#160; That’s hard to visualise, because there’s nothing there.&#160; So how about we try $14 trillion instead (the size of the US public debt)?&#160; If we had the US public debt in $1 coins, the stack would reach all the way to Venus. </li>
</ul>
<table border="0" cellspacing="0" cellpadding="2" width="600">
<tbody>
<tr>
<td valign="top" width="116"><strong><span style="text-decoration: underline">Number</span></strong></td>
<td valign="top" width="70">&#160;</td>
<td valign="top" width="412"><strong><span style="text-decoration: underline">Length</span></strong></td>
</tr>
<tr>
<td valign="top" width="116">$1k</td>
<td valign="top" width="70">10^3</td>
<td valign="top" width="412"><strong>person</strong></td>
</tr>
<tr>
<td valign="top" width="116">$1 million</td>
<td valign="top" width="70">10^6</td>
<td valign="top" width="412"><strong>airport runway</strong></td>
</tr>
<tr>
<td valign="top" width="116">$1 billion</td>
<td valign="top" width="70">10^9</td>
<td valign="top" width="412"><strong>India</strong></td>
</tr>
<tr>
<td valign="top" width="116">$1 trillion</td>
<td valign="top" width="70">10^12</td>
<td valign="top" width="412"><strong>Moon * 8</strong></td>
</tr>
</tbody>
</table>
<p>So to visualise the difference between a thousand, a million and a billion, you can say: “person, runaway, India”.</p>
<p>&#160;</p>
<p>Footnotes Nov 2011:</p>
<p>1. <a href="http://xkcd.com/980/huge/#x=-6432&amp;y=-8480&amp;z=2">Here’s</a> an amazing visualisation of dollar values at various scales</p>
<p>2. Further to the billion-coins-in-India example: what if we lined up a billion people, instead of a billion coins?&#160; That’s approximately the actual population of India.&#160;&#160; To get a line the same length as the&#160; billion coins, we’d have to ask the people to stand about 500-abreast.&#160; I.e. the population of India could stretch from the north to the south of the country, if they formed a long, skinny <a href="http://en.wikipedia.org/wiki/Jacobs_Method#Jacobs_method_for_crowd_size_estimation">loosely-packed</a> crowd approximately 500m wide. </p>
<p>3. A similar crowd in New Zealand, with the entire population of 4 million stretching the full length of the country, would be only 2 or 3 people wide – in part because the country is sparsely populated, and in part because it’s a long skinny country.</p>
<p>Jan 2012:</p>
<p>4. The number of stars in the observable universe is <a href="http://edition.cnn.com/2003/TECH/space/07/22/stars.survey/">estimated</a> at 7 x 10<sup>22</sup>.&#160;&#160; Given the world population, that’s 10 trillion stars <em>per person –</em> which equates to one stack of coins, reaching most of the way to Venus, for <em>every person alive today</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/million-billion-trillion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fallible estimates + Competition = Winner&#8217;s Curse</title>
		<link>http://www.agilekiwi.com/estimationandpricing/fallible-estimates-competition-winners-curse/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/fallible-estimates-competition-winners-curse/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 01:41:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://localhost/AgileKiwiWordpress/?p=9</guid>
		<description><![CDATA[<p>Some time ago Steve McConnell and I had an <a href="http://blogs.construx.com/blogs/stevemcc/archive/2007/06/06/estimating-in-an-outsourcing-context.aspx">interesting debate</a>, via his blog.  I suggested that when we combine estimates such as those we have in software (which have high uncertainty early in the project) with a competitive market containing price-sensitive customers; then market forces conspire to bias&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/fallible-estimates-competition-winners-curse/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Some time ago Steve McConnell and I had an <a href="http://blogs.construx.com/blogs/stevemcc/archive/2007/06/06/estimating-in-an-outsourcing-context.aspx">interesting debate</a>, via his blog.  I suggested that when we combine estimates such as those we have in software (which have high uncertainty early in the project) with a competitive market containing price-sensitive customers; then market forces conspire to bias customers&#8217; choices towards those supliers who have accidentally under estimated.</p>
<p>It turns out the concept has a name, &#8220;The Winner&#8217;s Curse&#8221;, and it&#8217;s been known to economists for over 200 years!  </p>
<p>I&#8217;ve updated <a href="http://www.agilekiwi.com/estimation_and_competition.htm">my original post</a> with details and a link to an excellent article from the Simula Research Lab in Norway.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/fallible-estimates-competition-winners-curse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Target Cost Contracts</title>
		<link>http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/#comments</comments>
		<pubDate>Sun, 01 Mar 2009 10:28:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/target-cost-contracts-2/</guid>
		<description><![CDATA[<p>This page outlines one way to formulate Target Cost Contracts for agile software development.</p>
<p>The goals of this approach are to:</p>
<ul>
<li>Share risk fairly between Customer and Supplier</li>
<li>Give the Supplier the peace of mind of being protected from significant cost overruns</li>
<li>Offer enough flexibility to get the best</li></ul><p>&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>This page outlines one way to formulate Target Cost Contracts for agile software development.</p>
<p>The goals of this approach are to:</p>
<ul>
<li>Share risk fairly between Customer and Supplier</li>
<li>Give the Supplier the peace of mind of being protected from significant cost overruns</li>
<li>Offer enough flexibility to get the best out of an agile development process</li>
<li>Align goals by giving <em>both </em>parties an incentive to <em>minimise </em>scope</li>
</ul>
<p><span id="more-100"></span></p>
<p>The ideas here are still under development, having only been used on a small number of projects so far.</p>
<h2>Overview</h2>
<p>The contract is based on two figures: the &#8220;target price&#8221; and the &#8220;cap&#8221;.  The cap is the maximum that you (the Customer) will pay. The target is lower than the cap and the contract gives both parties a financial incentive to meet the <em>target</em>.</p>
<p>If we (the Supplier) come in under the target, the savings are shared equally between both parties.  Likewise, if we come in over the target, the extra cost is shared evenly &#8211; but only up to the cap.  If we reach the cap, it acts like a fixed price.</p>
<h2>Benefits</h2>
<p>This approach gives you certainty about the maximum that you will pay (the cap), while still sharing risks and benefits fairly.</p>
<p>As explained below, both parties have a financial incentive to minimize the scope and cost.  Minimizing scope and cost reduces overall project risk.  Contrast this with standard fixed-price or time and materials contracts, where one party has an incentive to increase scope and the other has an incentive to decrease it.  Only a target cost contract incentivizes <em>both parties in the same direction</em>.</p>
<h2>Details</h2>
<p>There are two ways do formulate a target cost contract.  Both are mathematically identical, they are just different ways to describe the same thing.</p>
<p><em>Formulation 1:</em></p>
<ol>
<li>Up to the target cost, you pay our standard rate of $x per hour.</li>
<li>If the project comes in under the target, we split the savings evenly.  For instance, if we come in $10k under budget, you pay us half of that (5k) and keep the other half yourself.</li>
<li>If the project goes over the target, we split the extra cost evenly. In effect, that means you pay half our standard rate ($x / 2) for any hours between the target and the cap.</li>
<li>Your total payment (for full-rate work up to the target plus any half-rate work beyond) will not exceed the cap.</li>
</ol>
<p><em>Formulation 2:</em></p>
<ol>
<li>Payment is composed of two elements.  You pay <em>half </em>the target as a fixed fee.  You also pay us on an hourly basis, as we work, at <em>half </em>our standard hourly rate.  For instance, if the target is $100k, you&#8217;ll pay a fixed fee of $50k plus half our standard rate ($x / 2) for every hour that we work.</li>
<li>Again, your total payment (fixed portion plus hourly portion) will not exceed the cap.</li>
<li>The fixed portion can be paid in several instalments, with timing negotiated up front .  The last instalment will typically be on completion of User Acceptance Testing.  For small to medium projects, two instalments is the easiest approach &#8211; one at the start and one at the end of UAT.  So for a project with a target cost of 100k, the two fixed payments would be 25k at the start of the project and 25k at the end of UAT (giving a total fixed payment of half the target, as always).</li>
<li>The per-hour portion will typically be invoiced on a month-by-month basis.</li>
</ol>
<h2>Graph</h2>
<p>This graph shows how the contract works.  (Both formulations result in the same graph, because they are just different ways to describe the same thing).</p>
<p><img src="http://www.agilekiwi.com/19c29de0.gif" border="0" alt="Bitmap Image" hspace="0" width="809" height="478" align="bottom" /></p>
<p>Note that if the project completes exactly on target, working exactly the target number of hours, then total billing is exactly equal to what it would have been under a Time and Materials (T&amp;M) contract.</p>
<p>Also note that there is no hard and fast rule for the gap between target and cap &#8211; it depends on the degree of risk in the project, with the gap being bigger if there is more risk.  One guideline is that the gap should be big enough that neither the supplier nor the customer <em>expects </em>to hit the cap.  (Since, if the cap is expected to be hit, the situation degenerates into a fixed-price contract.  When that happens, the beneficial effect of aligned incentives is lost).</p>
<h2>Incentives</h2>
<p>Under a target cost contract the customer has an incentive to minimize scope, because that minimizes the total cost.  The supplier also has an incentive to minimize scope, because under this model lower scope means higher profit.  (The supplier maximizes profit by minimizing the number of half-price hours they must work.)</p>
<h2>Sample Wording</h2>
<p>Here is sample wording for a project with a target of 100k and a cap of 115k. The wording is based on formulation #2.  <strong>Bold </strong>sections may vary for projects of other sizes or at different charge-out rates.</p>
<p>Target Cost: $ <strong>100,000</strong></p>
<p><span style="text-decoration: underline;">Payments will be as follows</span>:</p>
<p><strong>$25,000</strong> at the start of the development and <strong>$25,000</strong> on completion UAT</p>
<p>Monthly payment of actual hours worked at <strong>$xx/hr</strong> until the development is complete or <strong>yyy hours of effort</strong> has been expended.  <em>[yyy * xx = 65k.  That 65k plus the 50k in fixed payments = the cap of 115k]</em></p>
<p><span style="text-decoration: underline;">Total payment</span> of (<strong>$25,000 x 2</strong> + <strong>$xx</strong> <strong>per hour</strong>) will not exceed the cap of <strong>$115,000</strong>.</p>
<p>In the event that the capped price is reached &lt;supplier&gt; will complete the development without billing &lt;customer&gt; for any further hours (other than agreed change controls).</p>
<p><span style="text-decoration: underline;">Change Controls</span></p>
<p>The contract is based on an initial agreed scope.  If you want to add to that scope during the project, you can do so using an agreed change control process.  (Just like you can under a fixed-price contract.)  In such cases we will negotiate an appropriate change to the target and the cap.</p>
<p>We recommend that the following approach should be taken to change control:  if it is a brand new requirement, a change control must be raised.  However, if it is simply a question <em>interpretation </em>of an existing requirement, no change control is necessary.  The cap and target are not changed by issues of interpretation; only by brand new requirements.  We make this recommendation to preserve the flexibility and collaboration that is offered by agile processes.</p>
<h2>Conditions Under Which this Approach Can be Used</h2>
<p>Note: this approach can only be used where all of the following are true:</p>
<ul>
<li>The up-front scope can be identified and written down well enough to serve as the basis for any future discussions of what is, and isn&#8217;t, a change.  (The scope definition doesn&#8217;t have to be perfect, just good enough to be used as a baseline for telling the difference between what does, and doesn&#8217;t, require a change control)</li>
<li>All parties agree that if changes are identified then either the cap will increase or something else must be removed from scope.</li>
<li>The key stakeholders in both organizations truly understand the model.  (Don&#8217;t want nasty surprises where, for instance, customer is surprised to receive final fixed payment because they thought they were just paying by the hour!)</li>
<li>Key stakeholders in both organizations know how they will process the payments through their respective billing/financial systems (since such systems tend to assume either fixed price OR hourly rate, but not both).</li>
</ul>
<p>Ideally, the upfront scope will be accurate enough to serve as basis for future discussions, but loose enough leave room for refining the details, agile-style, during the project.  The level of detail depends on the organizations concerned, and the risk level of the project.  In some cases the level of detail required for this approach may be excessive, leading to too much Big Design Up Front, in which case this contract structure is probably inappropriate. In such cases, other contract structures should be considered instead.</p>
<p>We do not mandate any particular way to document the initial scope, as long as it meets the needs above.  E.g. index cards or other simple formats may be appropriate, depending on the situation.</p>
<h2>Payment for Change Controls</h2>
<p>The following approach is suggested:</p>
<p>Firstly, the size of the change is estimated by the development team.  Then, based on that estimate, two things happen:</p>
<p>1.     The capped number of hours is increased.  This is the figure <strong>yyy </strong>in the example above. The increase is equal to the estimated hours to implement the change, plus an appropriate contingency buffer.  AND</p>
<p>2.     An additional fixed payment is made.  This fixed payment corresponds to <em>half the target cost of the change</em>. For a small change this can be a single payment at a time agreeable to both parties.  For larger changes it can be broken into instalments, with the final instalment being due at the end of UAT.</p>
<p>The net effect is as shown in this graph:</p>
<p><img src="http://www.agilekiwi.com/19b30db0.gif" border="0" alt="Bitmap Image" hspace="0" width="816" height="475" align="bottom" /></p>
<p>[Update June 09: a similar approach is described <a href="http://www.infoq.com/news/2009/05/Agile-Contracts"><span style="text-decoration: underline;">here</span></a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/target-cost-contracts/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Estimation in a Competitive Context</title>
		<link>http://www.agilekiwi.com/estimationandpricing/estimation-in-a-competitive-context/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/estimation-in-a-competitive-context/#comments</comments>
		<pubDate>Sun, 22 Jul 2007 10:25:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/estimation-in-a-competitive-context/</guid>
		<description><![CDATA[<p>I&#8217;m debating an issue with Steve McConnell, <a href="http://blogs.construx.com/blogs/stevemcc/archive/2007/06/06/estimating-in-an-outsourcing-context.aspx"><span style="text-decoration: underline;">over on his blog</span></a>, and I&#8217;d like to hear what others think of the issue.</p>
<p>I have a theory that, when multiple suppliers are competing for the same contracts, market forces encourage selection of those suppliers who have under estimated (either <a&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/estimation-in-a-competitive-context/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m debating an issue with Steve McConnell, <a href="http://blogs.construx.com/blogs/stevemcc/archive/2007/06/06/estimating-in-an-outsourcing-context.aspx"><span style="text-decoration: underline;">over on his blog</span></a>, and I&#8217;d like to hear what others think of the issue.</p>
<p>I have a theory that, when multiple suppliers are competing for the same contracts, market forces encourage selection of those suppliers who have under estimated (either <a href="http://www.agilekiwi.com/beware_lowest_price.htm"><span style="text-decoration: underline;">knowingly or unknowingly</span></a>).  It&#8217;s some kind of &#8220;reverse natural selection&#8221;, where the market tends to select the <em>least fit </em>proposals (those that are most underestimated).</p>
<blockquote><p><em>&#8220;&#8230;market forces systematically bias the </em><em><strong>winning </strong></em><em>bid [towards under-estimation], even when the set of </em><em><strong>all </strong></em><em>bids is not biased at all&#8230;&#8221;</em></p></blockquote>
<p><em>[Update March 2009:  I have found the name for this phenomenon.  It is an effect well known to economics, and first mentioned over 200 years ago!  It's called the Winner's Curse.  Very little has been written about it in software, although I did find </em><a href="http://simula.no/research/engineering/publications/Jorgensen.2005.2"><span style="text-decoration: underline;"><em>this very good paper</em></span></a><em> from Magne Jørgensen and Stein Grimstad from the Simula Research Laboratory in Norway.  The linked page has both text and PDF versions of the paper.  It's well worth reading.  As Jørgensen and Grimstad write, the winner's curse can easily become the customer's curse - so it is the interests of both parties to minimise it's effects!]</em></p>
<p><span id="more-99"></span></p>
<p><em> </em></p>
<p>Steve McConnell and I discuss this at some length <a href="http://blogs.construx.com/blogs/stevemcc/archive/2007/06/06/estimating-in-an-outsourcing-context.aspx"><span style="text-decoration: underline;">on his blog</span></a>. He suggests that, while my logic is interesting, it cannot possibly be true &#8212; because if it was true all such suppliers would go out of business.  My reply is that my logic is still correct; they <em>do</em> struggle on projects with early fixed prices, but they stay afloat on revenue from <em>other </em>sources:</p>
<ul>
<li>One source is change requests and follow-on projects, which I believe can (and should) be done more ethically than <a href="http://udidahan.weblogs.us/2007/09/01/successfully-applying-agile-to-fixed-bid-projects/"><span style="text-decoration: underline;">this all-too-common-common model</span></a>.</li>
<li>Another source is competitive projects won by more realistic means.  Steve mentions things like two-phase contracts and delaying final fixing of price until later in the cone of uncertainly.   Ayende advocates <a href="http://ayende.com/Blog/archive/2007/09/02/Fixed-bids-agile-projects.aspx"><span style="text-decoration: underline;">competing on quality rather than price</span></a>. I completely agree, and advocate some of the same ideas <a href="http://www.agilekiwi.com/contracts_for_agile_projects.htm"><span style="text-decoration: underline;">here</span></a> and <a href="http://www.agilekiwi.com/beware_lowest_price.htm"><span style="text-decoration: underline;">here</span></a>.</li>
<li>The final source is projects which simply never went through a competitive bid process.  There are many reasons why some projects do not go through competitive bid processes.  Such projects are a perfect opportunity for the customer to choose a supplier who they already know and like.</li>
</ul>
<p>I believe that these three sources help to sustain many outsourcing companies.  If not for these three sources, things might get ugly.  I wrote:</p>
<blockquote><p><em>&#8220;&#8230;selecting the lowest bid has been blamed for creating unsustainable markets in traditional (construction) engineering&#8230;</em></p>
<p><em>To me, the experience of the construction industry offers some indication that price-based selection can indeed skew the winning bids downwards, </em><em><strong>to the detriment of an entire industry</strong></em><em>.  If it is documented in traditional construction, perhaps it possible in IT too.  Perhaps it hurts all outsourcers&#8230;&#8221;</em></p></blockquote>
<p>What do you think?  When prices <em>must </em>be fixed early, does a price-sensitive market make it &#8220;impossible&#8221; to win profitable work?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/estimation-in-a-competitive-context/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cutting Scope is Not the (Whole) Answer</title>
		<link>http://www.agilekiwi.com/estimationandpricing/cutting-scope-is-not-the-whole-answer/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/cutting-scope-is-not-the-whole-answer/#comments</comments>
		<pubDate>Sun, 11 Jun 2006 10:13:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/cutting-scope-is-not-the-whole-answer/</guid>
		<description><![CDATA[<p>Many agile proponents advocate the &#8220;<a href="http://www.agilekiwi.com/risks_and_rewards.htm"><span style="text-decoration: underline;">Cancel-After-Any-Phase</span></a>&#8221; approach. Work is prioritised by business value and the customer can halt the project after any phase.  You can fix price or scope, but not both.  Most commonly, the price is fixed and scope is cut if necessary.</p>
<p>This approach is a natural&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/cutting-scope-is-not-the-whole-answer/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Many agile proponents advocate the &#8220;<a href="http://www.agilekiwi.com/risks_and_rewards.htm"><span style="text-decoration: underline;">Cancel-After-Any-Phase</span></a>&#8221; approach. Work is prioritised by business value and the customer can halt the project after any phase.  You can fix price or scope, but not both.  Most commonly, the price is fixed and scope is cut if necessary.</p>
<p>This approach is a natural fit for most agile processes.  However, other options should also be considered, because:</p>
<ul>
<li>Firstly, <a href="http://alistair.cockburn.us/"><span style="text-decoration: underline;">Alistair Cockburn</span></a> points out that methodology and contract type are not tightly linked.  Like many people, I initially made the mistake of bundling &#8220;agile&#8221; together with &#8220;flexible contracts&#8221; in my mind.   He points out that the two issues are virtually independent.  His comments prompted me reconsider my own views, and to write about <a href="http://www.agilekiwi.com/fixed_price_contracts.htm"><span style="text-decoration: underline;">fixed price contracts</span></a> here on this site.</li>
<li>Secondly, I doubt that Cancel-After-Any-Phase, <em>on its own</em>, can satisfy customers&#8217; concerns about cost overruns&#8230;</li>
</ul>
<p><span id="more-95"></span></p>
<h2>A Weakness in Cancel-After-Any-Phase?</h2>
<p>Consider this scenario:</p>
<p>The project is about 25% complete.  It has become clear that the amount of work required will significantly exceed the initial estimates.  The customer can cancel after any phase, but will they really cancel at this stage just to get a &#8220;cheaper&#8221; supplier?  Will they carry on, and cut scope to fit the budget?  Can they really cut the scope that far, or do they have to find additional funding?  Is any additional funding possible?</p>
<p>Customers have a legitimate interest in protecting themselves from problems like this.  A good process will <a href="/other/agile/negotiating-your-development-process/">seek to meet that interest</a>.</p>
<h2><em>Conclusion</em></h2>
<p>There&#8217;s a limit to scope cuts.  Cut too much and customers are bound to be disappointed.  Many customers can&#8217;t take that risk. So, it makes sense to look at <a href="http://www.agilekiwi.com/contracts_for_agile_projects.htm"><span style="text-decoration: underline;">other contractual options</span></a>, such as Target Cost or Two-Phase Contracts.  These can be combined with Cancel-After-Any-Phase to offer better risk protection.</p>
<p>Finally, even the best contract in the world is no substitute for trust and collaboration.  That&#8217;s what we really need, and our contracts mustn&#8217;t stand in the way.</p>
<p><em><strong>Background Reading</strong></em></p>
<p>Martin Fowler, on<a href="http://www.martinfowler.com/bliki/FixedPrice.html"><span style="text-decoration: underline;"> </span></a><a href="http://www.martinfowler.com/bliki/FixedPrice.html"><span style="text-decoration: underline;">fixing price but not scope</span></a>.  This is Cancel-After-Any-Phase, but with a pre-arranged maximum expenditure.</p>
<p>By the way, he says you can&#8217;t fix both price <em>and </em>scope.  So why do I say you <a href="http://www.agilekiwi.com/fixed_price_contracts.htm"><span style="text-decoration: underline;">can</span></a>?  Because Martin&#8217;s describing reality, and I&#8217;m describing contracts ;-)  Traditional contracts are not about <strong>reality</strong>, they&#8217;re about a <strong>plan</strong>, and about making the supplier responsible for the inevitable <strong>difference </strong>between the two. That&#8217;s OK, as long as you understand the <a href="http://www.agilekiwi.com/risks_and_rewards.htm#traditional"><span style="text-decoration: underline;">downsides</span></a>.  See <a href="http://www.agilekiwi.com/gurus_on_contracts.htm"><span style="text-decoration: underline;">this page</span></a> for more discussion of Martin Fowler&#8217;s comments.</p>
<p>(Update March 2011:</p>
<p>1. Glen Alleman has posted a perspective <a href="http://herdingcats.typepad.com/my_weblog/2011/03/one-of-the-nonsense-quotes.html">here</a>, on the inadequacy of cancel-after-any-phase.  While his kitchen remodelling example might be a bit waterfall-ish, I agree with his general premise that,  &#8220;How much will this cost&#8221; is a legitimate business question.  Personally, I think it is best if both parties can agree that any answer to that question should be just an approximation, but the question itself is a valid one.  It should be asked, and it should be answered.</p>
<p>2. Ron Jeffries is quoted <a href="http://www.infoq.com/news/2011/02/scrum-time-tracking">here</a> as saying &#8220;The value provided should be so visibly more than the cost as to make detailed cost accounting clearly a waste of time.&#8221;  I&#8217;d like to point out the difference between <em>detail</em> and <em>accuracy</em>. Yes, we don&#8217;t need task-by-task actual costs, but we <a href="http://www.agilekiwi.com/earnedvalue/agile-charts/">do</a> need an accurate grand <em>total</em>.  The latter can be obtained easily, from total hours worked by each team member per week (as Ron himself goes on to say).<br />
As for the total value being so clearly more than the cost, I&#8217;m not sure that&#8217;s necessarily an adequate solution to the cost management problem.  Sure, if the value is approx $50m and the cost is approx $1m, then don&#8217;t worry too much about the cost.  But what if the value is approx $3m and the projected cost is $2m?  The gap between those two figures is large enough to make the project worth doing, from a business perspective, but not large enough to let anyone relax about cost tracking.  If you don&#8217;t manage cost and scope carefully, overrun could eat the projected benefits.)</p>
<p><strong>Finally</strong></p>
<p>No contract can fully protect you from a supplier who makes promises they can&#8217;t keep.  Therefore selecting a supplier must be about finding a competent partner not just a <a href="http://www.agilekiwi.com/beware_lowest_price.htm"><span style="text-decoration: underline;">low bidder</span></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/cutting-scope-is-not-the-whole-answer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Effort Creep</title>
		<link>http://www.agilekiwi.com/estimationandpricing/effort-creep/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/effort-creep/#comments</comments>
		<pubDate>Sat, 27 May 2006 20:17:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/effort-creep/</guid>
		<description><![CDATA[<p>While scope creep is doing more work than you expected, due to added scope; effort creep is doing more work <em>without </em>added scope.  You&#8217;re just taking longer to do the same stuff.</p>
<p>Like scope creep, effort creep is <em>inevitable </em>and <em>manageable</em>.  To manage effort creep we need to understand what&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/effort-creep/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>While scope creep is doing more work than you expected, due to added scope; effort creep is doing more work <em>without </em>added scope.  You&#8217;re just taking longer to do the same stuff.</p>
<p>Like scope creep, effort creep is <em>inevitable </em>and <em>manageable</em>.  To manage effort creep we need to understand what causes it.  Three major causes are underestimation, over engineering, and discovering implicit requirements during system design.</p>
<p><span id="more-79"></span></p>
<h2><em>Underestimation</em></h2>
<p>I once helped convert a complex Windows application into a giant ActiveX control.  (Kids, don&#8217;t try this at home.) Our beta release had a huge memory leak.  Our memory management architecture worked well in stand-alone apps but broke down in ActiveX (it couldn&#8217;t cope with page re-loads).  As I recall, we leaked over 10MB <em>per minute</em>.</p>
<p>We never saw that coming.  It was what Robert Read calls an <a href="http://samizdat.mines.edu/howto/HowToBeAProgrammer.html#id2839075"><span style="text-decoration: underline;">unk-unk</span></a>, a problem so unforeseen we never even imagined it might exist.</p>
<p>I know what you&#8217;re thinking &#8211; we made a stupid mistake and we should have seen the problem coming.   Yes, perhaps we should have.  But we didn&#8217;t.  And that&#8217;s the way it is.  There&#8217;s always <em>something</em> unforeseen.</p>
<p>How do you plan for unk-unks, when you don&#8217;t know what they are? You simply have to include a bucket of time in the schedule to cover the things you haven&#8217;t thought of yet.  How big should the bucket be?  I know of no better answer than to look at past projects of similar size and complexity.  How much time did you spend on <em>their </em>unk-unks?</p>
<p>In the early phases of a project, there&#8217;s <a href="http://www.jroller.com/page/sxh?entry=estimation_and_doneness"><span style="text-decoration: underline;">no such thing as perfect estimation</span></a>.  You need to allow time in the schedule for unk-unks, and also for overrun on <em>known </em>tasks.</p>
<h2><em>Over Engineering<img src="http://www.agilekiwi.com/17ec8f70.jpg" border="0" alt="" hspace="10" vspace="10" width="200" height="247" align="right" /></em></h2>
<p>Some developers tend to over-engineer solutions, building in extra complexity because &#8220;someone&#8221; might need it &#8220;later&#8221;.  I think we all have that tendency, to some degree.</p>
<p>XP addresses this issue with the slogan <a href="http://xp.c2.com/YouArentGonnaNeedIt.html"><span style="text-decoration: underline;">You Ain&#8217;t Gonna Need It</span></a>.  Personally, I&#8217;d phrase it differently, although I do agree with the idea. I&#8217;m all for creating solid implementations of features that we know are needed; but I&#8217;m against speculative implementations of things that &#8220;might&#8221; be needed &#8220;later&#8221;.</p>
<p>It&#8217;s important to realise that this form of effort creep is completely different from underestimation.  If the customer asks for a <a href="http://en.wikipedia.org/wiki/Toyota_Corolla"><span style="text-decoration: underline;">Toyota Corolla</span></a>, then the estimate should be for a Toyota Corolla.  It shouldn&#8217;t be for a <a href="http://en.wikipedia.org/wiki/Hummer"><span style="text-decoration: underline;">giant SUV</span></a> just in case we accidentally build one of those instead.</p>
<p>I don&#8217;t have a silver bullet to combat over engineering.  Two things seem to help: discussing ideas with other developers <em>before </em>you<em> </em>build them, and making the true project status visible to everyone.  Often developers don&#8217;t <em>really </em>know where the project stands in terms of progress and budget.  When you&#8217;ve got nothing but a few dates in a Gantt chart, it seems easy to justify extras that &#8220;might&#8221; be needed. It&#8217;s harder to justify them when everyone sees the <a href="http://www.agilekiwi.com/agile_charts.htm"><span style="text-decoration: underline;">full project status</span></a><a href="http://www.agilekiwi.com/agile_charts.htm"><span style="text-decoration: underline;"></span></a>, including &#8220;budget burn&#8221;.   (You can also <a href="http://www.agilekiwi.com/charting_change.htm#effort_creep"><span style="text-decoration: underline;">chart effort creep itself</span></a>.)</p>
<h2><em>Explosion of Implicit Requirements</em></h2>
<blockquote><p><em>When moving from requirements to design, there is an explosion of &#8216;derived requirements&#8217; … caused by the complexity of the solution process.  The list of these [derived] requirements is often 50 times longer than the list of original requirements…. What may have seemed straightforward from a problem point of view explodes into something quite complex from a solution point of view. </em>&#8211; Robert L. Glass, in <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0321117425?v=glance"><span style="text-decoration: underline;">Facts and Fallacies of Software Engineering</span></a></p></blockquote>
<p>We unearth numerous details and special cases when we take a human-readable problem description, and turn it into a solution so precise that even a machine can execute it.  Were all those special cases (implicitly) included in the original scope?  Customers tend to say &#8220;Yes&#8221; while suppliers tend to say &#8220;No&#8221;.   In reality, some are effort creep and some are scope creep, while many others lie somewhere in between.</p>
<h2><em>Fuzzy Grey Boundaries</em></h2>
<p>There&#8217;s no clear line between scope creep and effort creep.  Implicit requirements are hard to classify; there&#8217;s no precise definition of over engineering; and even the best estimates are never perfect.  If we find ourselves doing something we hadn&#8217;t planned, is it:</p>
<table border="0" cellspacing="0" cellpadding="2" width="756">
<tbody>
<tr>
<td width="35" valign="top">(a)</td>
<td width="382" valign="top">An essential part of the original scope?</td>
<td width="337" valign="top"><em>This is an unk-unk contributing to effort creep</em></td>
</tr>
<tr>
<td width="35" valign="top">(b)</td>
<td width="382" valign="top">Not strictly essential, but a very good thing for the overall quality of the product?</td>
<td width="337" valign="top"><em>These are hard to classify.  Generally, doing a select few is good engineering; but doing all you can think of is over engineering.</em></td>
</tr>
<tr>
<td width="35" valign="top">(c)</td>
<td width="382" valign="top">Pure speculation, unrelated to any existing customer need?</td>
<td width="337" valign="top"><em>This is probably over engineering</em></td>
</tr>
<tr>
<td width="35" valign="top">(d)</td>
<td width="382" valign="top">Necessary to meet a newly-discovered customer need?</td>
<td width="337" valign="top"><em>This is scope-creep</em></td>
</tr>
</tbody>
</table>
<p>Here&#8217;s what I think: In the very best projects there&#8217;s something special about the relationship between customer and supplier.  It&#8217;s a working relationship that fairly shares the costs of scope creep and effort creep, and avoids squabbling over which is which.</p>
<hr /><span style="font-size: x-small;">I&#8217;m not the first to refer to effort creep.  A quick Google search turns up a handful of hits (once you weed out those from the fishing industry &#8211; where effort creep means something completely different.)   But I seem to be the first to write a whole page about it :-)</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/effort-creep/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gurus on Contracts</title>
		<link>http://www.agilekiwi.com/estimationandpricing/gurus-on-contracts/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/gurus-on-contracts/#comments</comments>
		<pubDate>Thu, 30 Jun 2005 10:05:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/gurus-on-contracts/</guid>
		<description><![CDATA[<p><a href="http://www.martinfowler.com"><span style="text-decoration: underline;">Martin Fowler</span></a> is well-known industry guru, respected by virtually everybody (including me).  He suggests you <a href="http://www.martinfowler.com/bliki/FixedPrice.html"><span style="text-decoration: underline;"><strong>can&#8217;t</strong></span></a> use agile processes on projects with fixed price and scope.  <a href="http://alistair.cockburn.us"><span style="text-decoration: underline;">Alistair Cockburn </span></a>&#8211; who is a well-known industry guru, respected by virtually everybody (including me) &#8212; says you <strong>can</strong>.  To resolve this&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/gurus-on-contracts/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.martinfowler.com"><span style="text-decoration: underline;">Martin Fowler</span></a> is well-known industry guru, respected by virtually everybody (including me).  He suggests you <a href="http://www.martinfowler.com/bliki/FixedPrice.html"><span style="text-decoration: underline;"><strong>can&#8217;t</strong></span></a> use agile processes on projects with fixed price and scope.  <a href="http://alistair.cockburn.us"><span style="text-decoration: underline;">Alistair Cockburn </span></a>&#8211; who is a well-known industry guru, respected by virtually everybody (including me) &#8212; says you <strong>can</strong>.  To resolve this apparent conflict, we need to understand two things:</p>
<p><span id="more-93"></span></p>
<ul>
<li>Firstly, you have to give up certain agile techniques when working on fixed price projects.  For instance, you can&#8217;t use &#8220;just-in-time&#8221; requirements definition [<a href="http://www.agilekiwi.com/#1"><span style="text-decoration: underline;">1</span></a>].  However, even though you have to give up <em>some </em>agile techniques, you don&#8217;t have to give up <em>all </em>of them.  You can still use iterative delivery, automated testing, close communication and most other agile techniques.</li>
<li>Secondly, we must consider what a fixed price contract really is.  A fixed price contract is based on an estimate of the work required.  Customers don&#8217;t want fixed contracts because estimates are <em>good</em>; they want fixed contracts because estimates are <em>bad</em>.  The actual effort never matches the estimate, and fixed price contracts are simply a way of making the supplier responsible for the difference.</li>
</ul>
<p>So, as long as the requirements are stable – stable enough [and sufficiently well-understood] for the supplier to accept responsibility for the cost difference &#8212; a fixed price contract is OK.   (Do suppliers accept such responsibility too willingly?  Do <a href="http://www.agilekiwi.com/beware_lowest_price.htm"><span style="text-decoration: underline;">price-based procurement processes</span></a> encourage them to do so?  How accurate can estimates actually be, when requirements are stable?  These are all excellent questions, which I hope to write about some day&#8230;)</p>
<p>As Alistair Cockburn suggests, the supplier can follow the fixed quote with an agile process.</p>
<p>Everything changes if the requirements are not stable.  As Martin Fowler suggests, changing requirements need agility <em>and </em>a flexible contract.</p>
<p>I&#8217;ve written more on this subject <a href="http://www.agilekiwi.com/cutting_scope.htm"><span style="text-decoration: underline;">here</span></a>.</p>
<hr /><a name="1"></a>[1]  Although, whether you planned to or not, you may end up <em>discovering </em>the requirements before the price is fixed but truly <em>defining </em>them (in detail) afterwards.  Depending on how you handle it, this may or may not be a good thing.  Done well, it can have an agile feel and a win-win outcome.  Done badly, it becomes confrontational and lose-lose.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/gurus-on-contracts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Beware the Lowest Price</title>
		<link>http://www.agilekiwi.com/estimationandpricing/beware-the-lowest-price/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/beware-the-lowest-price/#comments</comments>
		<pubDate>Sun, 08 May 2005 10:16:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/beware-the-lowest-price/</guid>
		<description><![CDATA[<p>Awarding contracts to the lowest bidder is optimistic at best, dangerous at worst.  So why do we keep doing it?</p>
<p>There are many reasons.  To pick just one: we believe it works in &#8220;real&#8221; engineering &#8211; making bridges, roads and buildings.</p>
<p>But it doesn&#8217;t.  Although it is widely <em>used </em>in&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/beware-the-lowest-price/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Awarding contracts to the lowest bidder is optimistic at best, dangerous at worst.  So why do we keep doing it?</p>
<p>There are many reasons.  To pick just one: we believe it works in &#8220;real&#8221; engineering &#8211; making bridges, roads and buildings.</p>
<p>But it doesn&#8217;t.  Although it is widely <em>used </em>in engineering; it&#8217;s not widely <em>successful</em>!</p>
<p><span id="more-97"></span></p>
<h2>The Truth about Engineering</h2>
<p>The latest issue of <a href="http://e.nz-magazine.co.nz/main.htm"><span style="text-decoration: underline;">e.nz</span></a>, published by New Zealand&#8217;s Institute of Professional Engineers, reports that &#8220;the indiscriminate urge for lowest price&#8221; leads to &#8220;late and unsatisfactory completion, disputes and litigation&#8221;.  (Almost sounds like software!)</p>
<p>The New Zealand Construction Industry Council says that &#8220;the lowest-bid approach is compromising design quality and integrity, health and safety, training, the environment&#8230; [Furthermore,] the lowest bid approach encourages unsustainable markets&#8221; [<a href="#1"><span style="text-decoration: underline;">1</span></a>].</p>
<p>Discussing solutions to these problems, <a href="http://e.nz-magazine.co.nz/main.htm"><span style="text-decoration: underline;">e.nz</span></a> explains that: &#8220;A substantial culture change is involved in progressing towards best practice in procurement.  All stakeholders must accept that they have a duty to collaborate towards a common objective: the full satisfaction of the project&#8217;s objectives, in exchange for fair rewards for all who contributed.&#8221; [<a href="#2"><span style="text-decoration: underline;">2</span></a>]</p>
<h2>Why is the Lowest Price Dangerous?</h2>
<p>The lowest price is dangerous because you don&#8217;t know <em>why </em>it&#8217;s low.  In the software industry, a company may offer a low quote for any of the following reasons:</p>
<ol>
<li>They have misunderstood the difficulty of the task [<a href="#3"><span style="text-decoration: underline;">3</span></a>]. (See <a href="estimationandpricing/fallible-estimates-competition-winners-curse/">these</a> <a href="estimationandpricing/estimation-in-a-competitive-context/">posts</a> too)</li>
<li>They understand the task; the estimate is low simply because software estimation is inherently difficult.</li>
<li>They understand the task, and are deliberately bidding low because they&#8217;re eager (or desperate) for your business.</li>
<li>They understand the task, and have outstanding skills and technology which will allow them to complete it quickly.</li>
</ol>
<p>Only the last reason is a good one.  The others, to greater or lesser degrees, may all threaten your project.  Yet in terms of price, they look the same.</p>
<h2>So How Do You Tell the Difference?</h2>
<p>You have to base your decision on assessments of the supplier&#8217;s capability: the quality of their staff, the quality of their technology, and their track record.</p>
<p>Price tells you nothing about capability. A low price may signal superior capability (reason 4), inferior capability (reason 1), desperation (reason 3), or nothing (reason 2).</p>
<h2>A Better &#8220;Real&#8221; Engineering Practice to Emulate</h2>
<p>If we want to emulate &#8220;real&#8221; engineering, we would be better to take our lead from the US federal government. Since 1972, price-based selection for engineering services has been prohibited for federal government agencies, with selection being based on supplier quality instead [<a href="#4"><span style="text-decoration: underline;">4</span></a>].  The approach has proved highly successful and has been widely emulated by state governments.</p>
<p>I believe the US approach reflects an understanding of the risks noted above &#8211; that price tells you nothing about capability.</p>
<p>The US approach may also reflect an awareness of just how embarrassing price-based selection would be after a major engineering disaster.  Imagine a TV interview shortly after the collapse of a bridge:</p>
<p><strong>Reporter:</strong> So how did you award the contract?</p>
<p><strong>Official:</strong> We… errrr&#8230;chose the cheapest.</p>
<p>Indeed.</p>
<p>Why don&#8217;t we ask the same question after a software project collapses?</p>
<hr /><strong>References</strong></p>
<p><a name="1"></a>[1] The Construction Industry Council (CIC) document is available here (700k PDF file):  <a href="http://www.nzcic.co.nz/CIC_Procument_document_internet.pdf"><span style="text-decoration: underline;">http://www.nzcic.co.nz/CIC_Procument_document_internet.pdf</span></a> Although it is entirely about construction, it makes interesting (and surprisingly relevant) reading for IT professionals. The CIC points out that government, as a major purchaser in the sector, must lead the way. <a href="http://www.agilekiwi.com/leading_by_example.htm"><span style="text-decoration: underline;">The same applies in IT</span></a>.</p>
<p>For another perspective, see this Canadian document: <a href="http://www.peo.on.ca/publications/DIMENSIONS/marapr2001/ma01price_consult.pdf"><span style="text-decoration: underline;">http://www.peo.on.ca/publications/DIMENSIONS/marapr2001/ma01price_consult.pdf</span></a> Like New Zealand, Canada has experienced a &#8220;leaky building&#8221; scandal in which price-based procurement was a contributing factor.</p>
<p><a name="2"></a>[2] Ernesto E. Henroid (FIPENZ, FICE), writing in the March/April 2005 issue of e.nz.  Magazine web site: <a href="http://e.nz-magazine.co.nz/main.htm"><span style="text-decoration: underline;">http://e.nz-magazine.co.nz/main.htm</span></a>.</p>
<p><a name="3"></a>[3] Well-known author Steve McConnell documents a case study in which the <em>highest </em>bid was actually the best, because the other bidders misunderstood the task. Needless to say, the high-yet-accurate quote wasn&#8217;t chosen and the project went on to overrun its (unrealistically low) budget by 1400%. His description covers many relevant issues and can be found here: <a href="http://www.stevemcconnell.com/sg-complit.htm"><span style="text-decoration: underline;">http://www.stevemcconnell.com/sg-complit.htm</span></a></p>
<p><a name="4"></a>[4] Price-based selection for engineering services was banned by the 1972 Brooks Act (the second Brooks Act). I was going to ask my American readers why the same rule was not applied to IT but a little research unearthed a surprising fact:  for IT, price based selection was <em>required </em>by the federal government.  The legislation was the 1965 Brooks Act. Yes, that&#8217;s the <em>same </em>congressman Brooks!   It seems Brooks had a very active interest in procurement, an interest which he expressed in two quite different laws.  The earlier (IT) act was designed to promote competition to break IBM&#8217;s stranglehold on the industry.  It achieved that goal, became widely disliked, and was repealed in 1996.  The second (engineering) act still has widespread popularity and success &#8211; and that&#8217;s an important lesson for today&#8217;s IT industry.</p>
<p>More on the Brooks Act(s):</p>
<p><a href="http://www.asce.org/pressroom/news/grwk/event_release.cfm?uid=1777"><span style="text-decoration: underline;">http://www.asce.org/pressroom/news/grwk/event_release.cfm?uid=1777</span></a></p>
<p><a href="http://www.gcn.com/21_33/community/20522-1.html"><span style="text-decoration: underline;">http://www.gcn.com/21_33/community/20522-1.html</span></a></p>
<p><a href="http://www.fcw.com/fcw/articles/2004/0315/pol-reform-03-15-04.asp"><span style="text-decoration: underline;">http://www.fcw.com/fcw/articles/2004/0315/pol-reform-03-15-04.asp</span> </a>If you&#8217;re interested in the fact that the (engineering) Brooks Act covers design, but not (as far as I know) construction, read these articles by Jack Reeves:<a href="http://www.fcw.com/fcw/articles/2004/0315/pol-reform-03-15-04.asp"> </a><a href="http://www.developerdotstar.com/mag/articles/reeves_design_main.html"><span style="text-decoration: underline;">http://www.developerdotstar.com/mag/articles/reeves_design_main.html</span></a> See <a href="http://www.agilekiwi.com/why_agility_works.htm"><span style="text-decoration: underline;">this page </span></a>on my site too.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/beware-the-lowest-price/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

