<?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>Thu, 08 Jul 2010 09:07:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<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>0</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>0</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><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" class="broken_link"><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" class="broken_link"><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" class="broken_link"><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" class="broken_link"><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" class="broken_link"> </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>0</slash:comments>
		</item>
		<item>
		<title>Fixed Price Contracts</title>
		<link>http://www.agilekiwi.com/estimationandpricing/fixed-price-contracts/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/fixed-price-contracts/#comments</comments>
		<pubDate>Sun, 08 May 2005 10:02:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/fixed-price-contracts/</guid>
		<description><![CDATA[<p>Can you use agile processes with traditional fixed price contracts, contracts where both scope and price are specified up front?</p>
<p>Yes, you can use agile processes on fixed price projects.</p>
<p>For instance, <a href="http://www.agilekiwi.com/crystal_clear.htm"><span style="text-decoration: underline;">Crystal Clear</span></a> was developed and tested on fixed price projects:</p>
<p><span id="more-92"></span></p>
<blockquote><p>&#8220;Unlike most of the other authors</p></blockquote><p>&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/fixed-price-contracts/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Can you use agile processes with traditional fixed price contracts, contracts where both scope and price are specified up front?</p>
<p>Yes, you can use agile processes on fixed price projects.</p>
<p>For instance, <a href="http://www.agilekiwi.com/crystal_clear.htm"><span style="text-decoration: underline;">Crystal Clear</span></a> was developed and tested on fixed price projects:</p>
<p><span id="more-92"></span></p>
<blockquote><p>&#8220;Unlike most of the other authors of the Agile Development Manifesto, I came to the agile principles through the need for <strong>efficiency</strong>, not the need to handle rapidly changing requirements.&#8221; <em>&#8211; Alistair Cockburn, in </em><a href="http://www.agilekiwi.com/crystal_clear.htm"><span style="text-decoration: underline;"><em>Crystal Clear</em></span></a><em> </em>(emphasis added)</p></blockquote>
<p>&#8220;Efficiency&#8221; is about making software rapidly with good quality.  On a fixed price project, speed and quality are exactly what you need!</p>
<p>Like other agile methodologies, Crystal Clear does include techniques for  handling changing requirements.  But you don&#8217;t <em>have </em>to use those techniques!  It&#8217;s perfectly acceptable to fix the scope up front, and then use the rest of Crystal&#8217;s techniques to deliver the software on time.</p>
<h2><em>What&#8217;s the Catch?</em></h2>
<p>Under a fixed price contract you may not get <em>all </em>the benefits of agility.</p>
<p>Firstly, while agile processes improve developer productivity, some contracts may limit the productivity gains.  The limit is not a direct consequence of fixed price and scope; it results from the &#8220;waterfall&#8221; mentality implied by some contracts.  For instance, compare <a href="http://alistair.cockburn.us/crystal/articles/ptfd/processthefourthdimension.htm" class="broken_link"><span style="text-decoration: underline;">these</span></a> agile techniques with your typical fixed-price contract.</p>
<p>Secondly, agility allows the team to change direction, for the better, when the opportunity arises.  (E.g. a beneficial change, either to technology or functionality, is identified part-way through the project.)   Such changes are harder to make under a fixed contract.</p>
<h2><em>How to Decide</em></h2>
<p>If a fixed price contract is mandatory, as is often the case in government circles, here are some things you might like to consider:</p>
<ul>
<li>Firstly, does your project suit an agile process?  (Some don&#8217;t.  For instance life-critical software is a poor candidate for most agile processes, since they don&#8217;t take verification and testing to the levels needed when life and limb are at stake.)</li>
<li>If your project <em>does </em>suit an agile process, choose your agile methodology carefully.  Some may fit fixed price contracts better than others.  For instance, most advocates of Extreme Programming (XP) favour flexible contracts, while <a href="http://www.agilekiwi.com/crystal_clear.htm"><span style="text-decoration: underline;">Crystal Clear</span></a> was created under fixed contracts.</li>
<li>Remember that its safest to choose your supplier by <a href="http://www.agilekiwi.com/beware_lowest_price.htm"><span style="text-decoration: underline;">capability, not price</span></a>.</li>
<li>Finally, bear in mind the <a href="http://www.agilekiwi.com/risks_and_rewards.htm#traditional"><span style="text-decoration: underline;">downsides</span></a> of traditional contracts, and try to avoid as many as you can! :-)</li>
</ul>
<p><em><strong> </strong></em></p>
<p><em><strong>Further Reading</strong></em></p>
<p><em>Many Agile authors assume the use of flexible contracts for agile projects, most notably Martin Fowler.  I&#8217;ve discussed his views </em><a href="http://www.agilekiwi.com/gurus_on_contracts.htm"><span style="text-decoration: underline;"><em>here</em></span></a><em>.</em></p>
<p><em><strong>References </strong></em></p>
<p><em>Comments from Alistair Cockburn in the on-line Crystal Discussion Group and in </em><a href="http://www.agilekiwi.com/crystal_clear.htm"><span style="text-decoration: underline;"><em>Crystal Clear</em></span></a><em>. </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/fixed-price-contracts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Contracts for Agile Projects</title>
		<link>http://www.agilekiwi.com/estimationandpricing/contracts-for-agile-projects/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/contracts-for-agile-projects/#comments</comments>
		<pubDate>Thu, 21 Oct 2004 09:59:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/contracts-for-agile-projects/</guid>
		<description><![CDATA[<p>Do agile processes need flexible contracts? What about fixed price contracts?</p>
<p><strong>Fixed Price</strong></p>
<p>You actually <a href="http://www.agilekiwi.com/fixed_price_contracts.htm"><span style="text-decoration: underline;"><em>can</em></span></a><em> </em>use traditional &#8220;fixed price&#8221; contracts on agile projects.  The catch is, they&#8217;re not necessarily the <em>best </em>option.</p>
<p><strong>Simple Time and Materials</strong></p>
<p>&#8220;Time and materials&#8221; contracts are another option. The customer pays by the&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/contracts-for-agile-projects/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Do agile processes need flexible contracts? What about fixed price contracts?</p>
<p><strong>Fixed Price</strong></p>
<p>You actually <a href="http://www.agilekiwi.com/fixed_price_contracts.htm"><span style="text-decoration: underline;"><em>can</em></span></a><em> </em>use traditional &#8220;fixed price&#8221; contracts on agile projects.  The catch is, they&#8217;re not necessarily the <em>best </em>option.</p>
<p><strong>Simple Time and Materials</strong></p>
<p>&#8220;Time and materials&#8221; contracts are another option. The customer pays by the hour, with no pre-arranged limit. This works well in some situations, but in others it shifts too much risk to the customer.</p>
<p>Agile processes allow a refinement of the traditional Time and Materials contract, to give an approach that&#8217;s widely recommended in the agile community.  It doesn&#8217;t have a recognised name, but I call it &#8220;Cancel-After-Any-Phase&#8221;&#8230;</p>
<p><span id="more-91"></span></p>
<p><strong>Cancel-After-Any-Phase</strong></p>
<p>The customer still pays for the time worked, as in a Simple Time and Materials contract.  Unlike Simple Time and Materials, the work is ordered by business value so that the most important features are finished first.  The customer has the right to cancel at the end of any phase, receiving the working, tested software from all phases completed so far.  I have described the details <a href="http://www.agilekiwi.com/risks_and_rewards.htm"><span style="text-decoration: underline;">here</span></a>.</p>
<p><strong>Two-Stage Contract</strong></p>
<p>In this approach, the project begins with a &#8220;scoping phase&#8221; which is covered under a separate contract.  The team examines the requirements and technical issues during the scoping phase, then quotes a price for the rest of the project.</p>
<p><strong>Target Cost</strong></p>
<p>The customer and supplier agree on a target cost.  During the project, they negotiate the details each feature &#8212; adding some, removing others, and simplifying where possible &#8211;  always aiming to keep the project within the target cost.  The contract is structured so that both parties benefit if project is completed under budget, and both parties suffer if it runs over.  (Details <a href="http://poppendieck.com/pdfs/Contracts_Excerpt_from_Lean_Software_Devleopment.pdf"><span style="text-decoration: underline;">here</span></a> , in pdf format). <a href="http://www.agilekiwi.com/target_cost_contracts.htm"><span style="text-decoration: underline;">Here</span></a> is one way to do it.</p>
<p><strong>Target Schedule</strong></p>
<p>Similar to Target Cost, but aiming at a specific delivery date instead of a specific cost.</p>
<p><em>Notes<img src="http://www.agilekiwi.com/139aae30.jpg" border="0" alt="" hspace="15" vspace="30" width="170" height="227" align="right" /></em></p>
<p>These are not mutually exclusive options.  For instance, one project may:</p>
<ul>
<li>Begin with a paid &#8220;scoping phase&#8221;. (Two-Stage Contract), and&#8230;</li>
<li>Negotiate features to stay within budget. (Target Cost Contract), and&#8230;</li>
<li>Prioritise work by business value (Cancel-After-Any-Phase)</li>
</ul>
<p><a href="http://www.agilekiwi.com/risks_and_rewards.htm"><span style="text-decoration: underline;">This page </span></a>explains the key differences between fixed price contracts and the flexible alternatives, particularly Cancel-After-Any-Phase.</p>
<p><a href="http://www.agilekiwi.com/gurus_on_contracts.htm"><span style="text-decoration: underline;">This page</span></a> explains why some agile authors say fixed-price contracts can&#8217;t be used, but others say they can.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/contracts-for-agile-projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Leading by Example – why governments should prefer flexible IT contracts</title>
		<link>http://www.agilekiwi.com/estimationandpricing/governments-should-prefer-flexible-it-contracts/</link>
		<comments>http://www.agilekiwi.com/estimationandpricing/governments-should-prefer-flexible-it-contracts/#comments</comments>
		<pubDate>Mon, 21 Jun 2004 10:19:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Estimation and Pricing]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/pricing/leading-by-example-why-governments-should-prefer-flexible-it-contracts/</guid>
		<description><![CDATA[<blockquote><p>&#8220;Conventional wisdom holds that specifying and controlling scope in a contract is necessary to protect an organization from self-serving behavior on the part of the other party. However, the effect of this protection is a sub-optimized value stream&#8230; The bottom line? Organizations that use outsourcing as a way to save</p></blockquote><p>&#8230; <a href="http://www.agilekiwi.com/estimationandpricing/governments-should-prefer-flexible-it-contracts/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<blockquote><p>&#8220;Conventional wisdom holds that specifying and controlling scope in a contract is necessary to protect an organization from self-serving behavior on the part of the other party. However, the effect of this protection is a sub-optimized value stream&#8230; The bottom line? Organizations that use outsourcing as a way to save money will save more money overall if they collaborate with vendors by using some form of optional scope contract.&#8221;<br />
<em>&#8211; </em><a href="http://www.amazon.com/gp/product/0321150783/103-2358856-3351051?v=glance&amp;n=283155"><span style="text-decoration: underline;"><em>Lean Software Development</em></span></a><em>, </em>by Mary Poppendieck and Tom Poppendieck</p></blockquote>
<p>Collaboration, under the framework of a flexible contract, delivers the best outcomes for both customer and supplier.  This concept is described in the book <em>Lean Software Development</em>.  The book quotes a powerful example from the automotive industry &#8211;Toyota pioneered a new level of close collaboration and went on to great commercial success.</p>
<p>Toyota, as a major industry player, was pivotal in reshaping the culture of the auto industry.  Who could play the same role in IT?  Who is a significant buyer of IT services, with the market influence to lead the way? Government departments.</p>
<h2><em>Why?</em></h2>
<p>Why should we even imagine that the public sector, with its reputation for caution, should lead the way?  Because the benefits are too good to ignore&#8230;</p>
<p><span id="more-98"></span></p>
<ul>
<li>It will save money.  As explained in <em>Lean Software Development</em>, if an organisation (such as a government department) wants to save money through outsourcing, they&#8217;ll make the biggest savings if they collaborate with suppliers using flexible contracts.</li>
<li>It will boost the local IT industry.  Trust and flexibility don&#8217;t just help the purchaser, they also benefit suppliers.  Which government doesn&#8217;t want to boost its local IT industry?</li>
</ul>
<p>If these benefits sound implausible, I encourage you to read <a href="http://poppendieck.com/pdfs/Contracts_Excerpt_from_Lean_Software_Devleopment.pdf"><span style="text-decoration: underline;">this</span></a> sample chapter from <em>Lean Software Development</em>.  The authors explain the benefits far more clearly than I can. (See <a href="http://www.agilekiwi.com/the_trust_barrier.htm"><span style="text-decoration: underline;">this page</span></a> too.)</p>
<h2>Will This Ever Happen?<img src="http://www.agilekiwi.com/13d40e80.jpg" border="0" alt="New fern frond" hspace="40" vspace="10" width="320" height="232" align="right" /></h2>
<p>Realistically, I won&#8217;t hold my breath waiting for government departments to start insisting on flexible contracts.  However, wouldn&#8217;t it be great if they did!</p>
<p>Where I live, in New Zealand, we pride ourselves on innovation.  What a great opportunity for our public sector to express our innovative spirit, save money, and boost our knowledge economy!</p>
<p><strong>Update 8 May 2005: </strong>Even more important than flexibility in contracts is the need to stop awarding contracts on price.  This outdated practice is causing grief in our construction industry, and the same problems exist in IT.  I&#8217;ve written about the issues and solutions <a href="http://www.agilekiwi.com/beware_lowest_price.htm"><span style="text-decoration: underline;">here</span></a>.  Again, government should lead the way.</p>
<p><strong>Update 17 Oct 2007</strong>: Rod Drury has posted an excellent page on <a href="http://www.drury.net.nz/2006/11/09/why-government-procurement-policy-matters"><span style="text-decoration: underline;">government IT procurement</span></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/estimationandpricing/governments-should-prefer-flexible-it-contracts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
