<?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>Tyner Blain &#187; Business Analysis</title>
	<atom:link href="http://tynerblain.com/blog/category/business-analysis/feed/" rel="self" type="application/rss+xml" />
	<link>http://tynerblain.com/blog</link>
	<description>Software product success.</description>
	<lastBuildDate>Thu, 02 Sep 2010 21:53:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Verifiable Requirements</title>
		<link>http://tynerblain.com/blog/2010/08/30/verifiable-requirements/</link>
		<comments>http://tynerblain.com/blog/2010/08/30/verifiable-requirements/#comments</comments>
		<pubDate>Mon, 30 Aug 2010 19:54:46 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Ishikawa Diagram]]></category>
		<category><![CDATA[Kano Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[verifiable requirements]]></category>
		<category><![CDATA[writing good requirements]]></category>
		<category><![CDATA[writing verifiable requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1290</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F08%2F30%2Fverifiable-requirements%2F", "shorturl": "http://bit.ly/cNGgE2", "style": "big", "title": "Verifiable Requirements" });

Writing Verifiable Requirements should be a rule that does not need to be written.  Everyone reading this has seen or created requirements that can not be verified.  The primary reason for writing requirements is to communicate to the team what they need to accomplish.  If [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F08%252F30%252Fverifiable-requirements%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FcNGgE2%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Verifiable%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F08%2F30%2Fverifiable-requirements%2F", "shorturl": "http://bit.ly/cNGgE2", "style": "big", "title": "Verifiable Requirements" });</script></div>
<p><img class="alignnone" title="rules of writing requirements logo - rule #8" src="http://sehlhorst.smugmug.com/photos/128628654-M.png" alt="" width="250" height="250" /></p>
<p>Writing Verifiable Requirements should be a rule that does not need to be written.  Everyone reading this has seen or created requirements that can not be verified.  The primary reason for writing requirements is to communicate to the team what they need to accomplish.  If you can&#8217;t verify that what the team delivered is acceptable, neither can the team.  This may be the most obvious of the rules of writing requirements &#8211; but it is ignored every day.</p>
<h2><span id="more-1290"></span>Verifiable Requirements &#8211; Revisiting</h2>
<p><img class="alignnone" title="reviewing the checklist" src="http://sehlhorst.smugmug.com/Other/blog/checklist/984534329_hipKA-O.jpg" alt="" width="243" height="250" /></p>
<p>In 2006, I first looked at how and <a title="writing verifiable requirements" href="http://tynerblain.com/blog/2006/06/13/writing-verifiable-requirements/">why writing verifiable requirements is important </a>- as part of the ongoing series on <a title="The rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">the rules of writing good requirements</a>.  The focus of that article was on testability, as is this one.  When visiting <em>verifiability</em> again, however, I will add that not only must <em>specifications</em> be objectively measurable, but so must <em>goals</em> be written so that you can identify when a solution has met the objectives that justified its creation.</p>
<h2>Directly Verifiable Requirements</h2>
<p>Most of the requirements we come across can be directly verified.  The only problem with these requirements is that they lack specificity.  The following example is <em>almost</em> verifiable, and only needs a little help:</p>
<ul>
<li>The web site must make it easier for users who use site search to find the products they want to buy.</li>
</ul>
<p>This requirement presents the challenge of <a title="Writing Unambiguous Requirements" href="http://tynerblain.com/blog/2010/08/18/unambiguous-requirements/">resolving the </a><em><a title="Writing Unambiguous Requirements" href="http://tynerblain.com/blog/2010/08/18/unambiguous-requirements/">ambiguity of the requirement</a>.</em> This lack of specificity prevents the requirement from being verifiable.  You have to identify <em>how much easier</em> the site search process must become for users.  Findability is a <em>more is better</em> characteristic in the <a title="Kano Analysis" href="http://tynerblain.com/blog/2009/09/28/kano-analysis-for-product-managers/">Kano Analysis model for defining requirements</a>.</p>
<p>You have to acknowledge that making it easier to find what you&#8217;re looking for is better for users than making it harder &#8211; there is an upward slope to the function.  However, there are also diminishing returns.</p>
<p><img title="kano analysis - more is better - diminishing returns" src="http://sehlhorst.smugmug.com/Other/blog/20100830diminishing-returns/988115350_VV5EW-O.png" alt="" width="450" height="422" /> [<a title="kano analysis - more is better - diminishing returns" href="http://sehlhorst.smugmug.com/Other/blog/20100830diminishing-returns/988115366_9GaSG-O.png">larger image</a>]</p>
<ul>
<li>A search that includes &#8220;the perfect item&#8221; is massively better than a search that does not include what you are looking for.</li>
<li>A search that includes the perfect item on the first page of results is significantly better than one that returns the perfect item on the second page of results.</li>
<li>A search that includes the perfect item as the first result is only marginally better than a search that returns that perfect item as the second or third result.</li>
</ul>
<p>Improving findability as articulated above, from a user perspective, manifests in value to your company in two ways: immediate revenue impact and indirect revenue impact.</p>
<p>The immediate impact can be measured in terms of increases in commerce.  The indirect impact results from improving the user experience.  These<a title="viral product management" href="http://tynerblain.com/blog/2009/03/02/viral-product-management/"> improvements in experience result in increased word of mouth</a>, as <a title="Usability improvements have measurable value" href="http://tynerblain.com/blog/2007/01/10/usability-sells-software/">users altruistically encourage others to visit your website</a>, and also result in an increase in satisfaction causing users to return to your site more frequently and make more purchases from you.</p>
<p>You can measure these impacts in terms of</p>
<ul>
<li>Conversion percentage (percentage of people who search and then purchase the products found in the results)</li>
<li>Revenue attributed to users who search (an absolute measurement of purchases of products found via search)</li>
<li>Site traffic levels (the number of people that visit your site over time)</li>
<li>Visitor-recency statistics (the amount of time that elapses between return visits for returning visitors)</li>
</ul>
<p>Conversion percentage, for users who search, normalized against users who do not search, is the most isolated (from other variables and noise) and fastest responding (as a delayed measurement of impact) measurement of the value of making it &#8220;easier&#8221; for users to search for the products they <em>want to buy</em>.</p>
<p>Your team will design different approaches to achieving these improvements.  You have to estimate both the cost and the potential benefit of each approach.  Balancing cost estimates with potential benefits will yield the ideal requirement &#8211; perhaps a 10% improvement.  [Note: I've collapsed at least another article's worth of balancing cost versus benefit, and multiple articles of "understanding and measuring site search" into one paragraph here, in hopes of staying on task with writing verifiable requirements.]</p>
<p><strong>Rewriting the requirement as follows makes the requirement verifiable</strong>:</p>
<ul>
<li>Before: &#8220;The web site must make it easier for users who use site search to find the products they want to buy.&#8221;</li>
<li>After: &#8220;Users who search on the site will be at least 10% more successful at finding the products they want to buy when using site search.&#8221;</li>
</ul>
<h2>Impossible to Verify Requirements</h2>
<p>Often, stakeholders will present us with requirements that are impossible to verify (as requested).</p>
<ul>
<li>The home page needs to load fast.</li>
</ul>
<p>At first blush, this looks just like the previous requirement (easier search is similar to faster page load).  You can use the same techniques to determine a measurable &#8220;requirement&#8221; like &#8220;the home page needs to load in under 1 second.&#8221;  However, that&#8217;s not a good requirement, because it is not an implicitly <em><a title="Writing Valuable Requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/">valuable</a></em><a title="Writing Valuable Requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/"> requirement</a>.  This statement provides no insight into <em>why</em> a fast-loading home page might be valuable to a particular user or why it would be valuable to the company.</p>
<p>To address this issue, you have to meet with the stakeholder(s) and understand the actual underlying requirements.  You will ask why, <a title="The reason why things are as they are" href="http://tynerblain.com/blog/2006/02/21/the-reason-why/">determine motivations</a> and <a title="using Ishikawa diagrams to discover underlying requirements" href="http://tynerblain.com/blog/2008/05/27/cause-and-effect-diagrams/">underlying problems</a>, and <a title="Ten Awesome Active Listening Skills" href="http://tynerblain.com/blog/2007/03/15/ten-active-listening-skills/">apply active listening skills to discover the underlying requirement</a>.</p>
<p>The problem is that the statement, &#8220;the home page needs to load fast&#8221; is a specification.  In <em><a title="Different perspectives on what a requirement is" href="http://tynerblain.com/blog/2006/05/11/requirements-documents-one-mans-trash/">Requirements Documents &#8211; One Man&#8217;s Trash&#8230;</a></em>, I first used the following diagram to show how different people in the process of designing software view their piece of providing a solution.</p>
<p><img class="alignnone" title="differing perspectives on what is a requirement" src="http://sehlhorst.smugmug.com/photos/69105260-M.png" alt="" width="482" height="420" /></p>
<p>A developer may receive a spec &#8211; &#8220;home page must load in under 5 seconds&#8221; and feel like the <em>why</em> component is perfectly well defined &#8211; it is a matter of context and perspective.  Another way to think about this is that <a title="Creating actionable and valuable problem statements" href="http://tynerblain.com/blog/2008/05/12/your-problem-statement/">the problem is with the problem statement</a>.</p>
<p>A product manager, however, needs to do research that follows a path like the following:</p>
<p>Given that we are building an eCommerce website, we know that people have expectations around page load times (<a title="ecommerce website performance" href="http://www.akamai.com/2seconds">per Forrester / Akamai report</a> (requires registration)).</p>
<p><img class="alignnone" title="akamai page load time survey results" src="http://sehlhorst.smugmug.com/Other/blog/akamai-small/988093069_xoHja-O.png" alt="" width="450" height="299" /> [<a title="page load time expectations for ecommerce customers" href="http://sehlhorst.smugmug.com/Other/blog/akamai-large/988093083_nqqSD-O.png">larger image</a>]</p>
<p>Further, those expectations manifest as people abandoning slow-loading websites (from the same report).</p>
<p><img class="alignnone" title="users abandon slow-loading websites" src="http://sehlhorst.smugmug.com/Other/blog/akamai-2-small/988377686_dTZYy-O.png" alt="" width="450" height="289" /> [<a title="users abandon slow-loading websites" href="http://sehlhorst.smugmug.com/Other/blog/akamai-2-large/988377703_nhnRY-O.png">larger image</a>].</p>
<p>We know from this <em>market research</em> that page-load times (for websites) represent another <em>more is better</em> Kano attribute, but one that has <em>must be</em> characteristics at the extremes.</p>
<p><img class="alignnone" title="more is better feature with extreme must-be behavior" src="http://sehlhorst.smugmug.com/Other/blog/20100830Extreme-More-is-Better/988386407_83xud-O.png" alt="" width="450" height="422" /> [<a title="extreme must-be behavior in more-is-better characteristic" href="http://sehlhorst.smugmug.com/Other/blog/20100830Extreme-More-is-Better/988386415_hsVef-O.png">larger image</a>]</p>
<p>While <em>more speed is better</em>, what the market research reveals is that for any given person, there is a minimum-speed <em>threshold</em>, at which speed is a <em>must-be</em> characteristic &#8211; too slow, and you lose customers (immediately).</p>
<p>A  combination of market research and elicitation will reveal that there is a true underlying goal of being fast enough to satisfy as many users as possible.  Combining this with practicalities of scaling your solution, and the associated costs; in the context of a particular solution design (an eCommerce website), you will arrive at a goal that allows you to rework your requirement so that it is verifiable.</p>
<p>Note: The requirement in this example is a subordinate requirement to a goal focused on maximizing conversion percentage (the percentage of customers who visit the site making purchases) &#8211; with a recognition that a major source of non-conversion is abandonment of the site, and that a large contributor to visitor abandonment is page load times.  An Ishikawa (or other model) will help you articulate this complexity and formulate requirements at a level of abstraction that is both valuable and actionable.</p>
<p><strong>Rewriting the requirement as follows makes the requirement verifiable</strong>:</p>
<ul>
<li>Before: &#8220;The home page needs to load fast.&#8221;</li>
<li>After: &#8220;No more than 10% of potential site visitors will abandon our site before viewing the page.&#8221;</li>
</ul>
<h2>Indirectly Verifiable Requirements</h2>
<p>Some requirements are impossible to <em>literally</em> verify, and must be <em>inferentially </em>verified.</p>
<ul>
<li>The site must support 1 million visitors per day, with a peak of 10,000 simultaneous with page-load times under 5 seconds.</li>
</ul>
<p>Models are Models, Not Reality.</p>
<p>Imagine trying to create a test by organizing a million visitors to hit your SaaS web solution on the same day, with at least 10,000 of them hitting the site simultaneously.  That is completely impractical.  That doesn&#8217;t however, invalidate the requirement or make it untestable.  The combination of modeling, hypothesis formulation, and extrapolation gives you a <em>reasonable</em> way to verify that your solution probably meets this requirement.</p>
<p>You&#8217;re already used to the concept that models are representations of reality &#8211; think about the maps you use &#8211; a map may have a scale like <em>one inch equals one mile</em>.  The map is a <em>model</em> of reality.  A map where one inch equals one inch would be impractical.</p>
<p>An effective approach to measuring this type of scalability requirement is to simulate users (with load testing and realistic user-behavior scripts) with automation.  That takes care of most of the coordination problem.  However, the cost of simulating a million users and 10,000 simultaneous users is high.  You can, more realistically, measure the site&#8217;s performance when 10, 100, and 1,000 simulated users simultaneously access a server.  You can extrapolate from those results to estimate how the system is likely to perform under 10,000 user loads.</p>
<p>Note: Extrapolation is dangerous (follow the Elvis link below)- you have to justify why extrapolation holds true, and identify when it does not, to minimize the risk of invalidating your hypothesis.  Make sure you have confidence in the engineering prowess of whoever is doing your extrapolation and modeling.</p>
<p><img class="alignnone" title="infinite elvises" src="http://sehlhorst.smugmug.com/photos/128096460-M.jpg" alt="" width="250" height="204" /> [see<a title="Five ROI calculation tips and the infinite elvis extrapolation antipattern" href="http://tynerblain.com/blog/2007/02/08/five-roi-calculation-tips/"> tip #5 of these ROI calculation tips for the </a><em><a title="Five ROI calculation tips and the infinite elvis extrapolation antipattern" href="http://tynerblain.com/blog/2007/02/08/five-roi-calculation-tips/">Infinite Elvis</a></em><a title="Five ROI calculation tips and the infinite elvis extrapolation antipattern" href="http://tynerblain.com/blog/2007/02/08/five-roi-calculation-tips/"> anti-pattern</a>]</p>
<p><strong>While this requirement does not to be rewritten in order to be verifiable, it does need to be augmented</strong>:</p>
<ul>
<li>Original: &#8220;The site must support 1 million visitors per day, with a peak of 10,000 simultaneous with page-load times under 5 seconds.&#8221;</li>
<li>Additional: &#8220;Testing of the site must show that 500 simultaneous users following &lt;user script X&gt; will yield no more than 1% page load times over 200 ms.&#8221;</li>
</ul>
<h2>Conclusion</h2>
<p>Every requirement you write must be verifiable.  When you can&#8217;t verify something, and can&#8217;t rewrite it into a verifiable form, that should be a sign that either it is a vision statement or a red herring.  Vision statements guide how we approach creating products and engage markets &#8211; they are valuable, but they are not requirements.  Red herrings are well-meaning but ill-advised inputs into the process that need to be culled &#8211; they are neither valuable nor requirements.</p>
<p><strong>Make sure all your requirements are verifiable</strong>.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Verifiable+Requirements+http://bit.ly/ctzdpL+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/08/30/verifiable-requirements/&amp;t=Verifiable+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/08/30/verifiable-requirements/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Writing Unambiguous Requirements</title>
		<link>http://tynerblain.com/blog/2010/08/18/unambiguous-requirements/</link>
		<comments>http://tynerblain.com/blog/2010/08/18/unambiguous-requirements/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 13:17:46 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[rules of writing requirements]]></category>
		<category><![CDATA[unambiguous requirements]]></category>
		<category><![CDATA[writing requirements]]></category>
		<category><![CDATA[writing unambiguously]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1266</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F08%2F18%2Funambiguous-requirements%2F", "shorturl": "http://bit.ly/acqMn4", "style": "big", "title": "Writing Unambiguous Requirements" });

Writing unambiguous requirements is about understanding what is written, and what is read.  Without a clear understanding of your market, you can&#8217;t write unambiguously.  Even when you understand your market, you risk writing something that is ambiguous to your readers.  Documenting requirements is about [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F08%252F18%252Funambiguous-requirements%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FacqMn4%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Writing%20Unambiguous%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F08%2F18%2Funambiguous-requirements%2F", "shorturl": "http://bit.ly/acqMn4", "style": "big", "title": "Writing Unambiguous Requirements" });</script></div>
<p><img class="alignnone" title="Rules of Requirements #7 Logo" src="http://sehlhorst.smugmug.com/photos/128628634-M.png" alt="" width="250" height="250" /></p>
<p>Writing unambiguous requirements is about understanding what is written, and what is read.  Without a clear understanding of your market, you can&#8217;t write unambiguously.  Even when you understand your market, you risk writing something that is ambiguous to your readers.  Documenting requirements is about communication.  Don&#8217;t break this rule, or you&#8217;ve wasted all the energy you spent understanding your requirements.</p>
<h2><span id="more-1266"></span>Unambiguous Requirements &#8211; Revisiting</h2>
<p>Fifty months and five days ago (another grin), I wrote about <a title="Writing Unambiguous Requirements - 2006" href="http://tynerblain.com/blog/2006/06/12/writing-unambiguous-requirements/">the importance of writing requirements so that they can be clearly understood</a>.  Writing requirements so that there is one, <em>unambiguous</em>, interpretation of what you wrote.  This article is the seventh in <a title="The big twelve rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">a series on the rules of writing good requirements</a>.  In that version of the article, I focused primarily on language ambiguity, and framed the discussion in terms of ambiguity to the writer and to the reader.</p>
<p>As part of improving that series, I am revisiting each of the articles now that I have fewer hairs and the remaining ones are more gray.  The same framework still applies, but will be expanded in scope, using the following modified definitions of the framework.</p>
<ul>
<li><strong>Ambiguity for the Writer</strong> &#8211; not having a clear interpretation of the requirements.</li>
<li><strong>Ambiguity for the Reader</strong> &#8211; requirements that, <em>as written</em>, can be interpreted in more than one way.</li>
</ul>
<p><img class="alignnone" title="Tango Dancers" src="http://sehlhorst.smugmug.com/Other/blog/tango/973737835_vwB46-O.jpg" alt="image of feet of two people dancing the tango" width="250" height="166" /></p>
<p>It takes two to tango.  To lead, you have to know where you&#8217;re going.  To follow, you have to know where you&#8217;re being led.  The same is true with requirements &#8211; you have to know what you&#8217;re writing, and how your writing will be read.  <a title="40% of bugs come from misinterpreting requirements" href="http://tynerblain.com/blog/2005/12/28/why-we-should-invest-in-requirements-management/">Misinterpretation of requirements is the source of over 40% of all software defects</a>.</p>
<h2>Ambiguity for the Writer</h2>
<p>When you don&#8217;t know <em>why</em> you&#8217;re developing a particular set of requirements, it is because you either don&#8217;t have sufficient understanding of your market, or of your corporate objectives.  While it is always a <em>lack of knowledge</em>, sometimes, that lack of understanding is insidiously hidden.  You, as the writer of requirements, are the <em>reader of the market</em> &#8211; and what you&#8217;re reading is likely to be ambiguous.</p>
<p><strong>For Whom You Are Designing</strong></p>
<p>The most overlooked element I&#8217;ve personally seen in product creation is failing to understand who the users and buyers of your product will be.  I wanted to type &#8220;forgetting to understand,&#8221; but I struggle to imagine someone who understands the value of defining <a title="Buyer Personas and User Personas" href="http://tynerblain.com/blog/2008/07/22/buyers-and-users/">user personas and buyer personas</a>, who then <em>forgets</em> to define them when gaining an understanding of their market.</p>
<p>The reason that this is an <em>ambiguity</em> issue is that when you fail to <a title="Defining Personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">define personas</a> <em>explicitly</em>, you define them <em>implicitly</em>.  An implicit persona is an ambiguous persona.  Alan Cooper named this anti-pattern the <em><a title="Elastic Users" href="http://tynerblain.com/blog/2007/07/23/elastic-users/">elastic user</a></em>, and the problem manifestation as failing to provide insight to guide design decisions.  When you have an ambiguous user, you lose what Frederick Brookes calls the <a title="The design of design" href="http://tynerblain.com/blog/2010/07/06/the-design-of-design/">clarity of design</a>. This results in at best a mediocre product without a core idea or aesthetic.</p>
<p><a title="Understanding user differences" href="http://tynerblain.com/blog/2006/04/17/persona-grata/">Different users value the same solutions differently</a>.  <a title="Designing for competent users" href="http://tynerblain.com/blog/2006/04/02/competent-users-and-software-design/">Users vary in competency</a>, and therefore have varied personal goals as they <a title="Usability learning curves" href="http://tynerblain.com/blog/2007/03/12/software-usability-learning-curves/">learn how to better use your product</a> over time.  When you don&#8217;t identify who the user is, you prioritize requirements without insight into what is important to the undefined, elastic, and ambiguous user.</p>
<p>The readers of your requirements are trusting that you will prioritize requirements correctly &#8211; but you can&#8217;t, because you lack an understanding of who the users will be.  You therefore lack an understanding of which problems are valuable, and which problems are more or less valuable than other problems.  This ambiguity makes it particularly difficult to <a title="writing valuable requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/">write </a><em><a title="writing valuable requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/">valuable</a></em><a title="writing valuable requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/"> requirements</a>.</p>
<p><strong>Precision in Language</strong></p>
<p>The other aspect of writing unambiguously is in using language that has meaning.  Using words like &#8220;can&#8221; and &#8220;may,&#8221; is imprecise in requirements.  &#8221;The system can respond in under three seconds.&#8221;  Does that mean that it <em>must</em> respond in under three seconds?  Does that mean it is acceptable if the system responds in twenty seconds?  This is an area of overlap with the rule of <a title="Writing measurable requirements" href="http://tynerblain.com/blog/2006/06/13/writing-verifiable-requirements/">writing measurable, verifiable requirements</a>, so I won&#8217;t go into more details here.</p>
<p>Another source of imprecision in language, not only for the reader, but also for the writer, is <a title="Jargon video" href="http://tynerblain.com/blog/2006/02/15/jargon-gone-amuck/">jargon</a>.  You should never use jargon, as you have no way to know if your reader will actually interpret the jargon terms correctly &#8211; as readers often vary in the depth of their domain knowledge.  Jargon is also a <em>high risk of ambiguity</em> source, precisely because it is jargon.  Jargon is <em>short-hand</em> for communicating efficiently among domain experts.  Are you enough of a domain expert that you are confident that you absolutely, unambiguously understand the accepted meaning of the jargon term?</p>
<p><img class="alignnone" title="writing requirements" src="http://sehlhorst.smugmug.com/Other/blog/taking-notes/973758136_FLzEh-O.jpg" alt="image of someone writing" width="172" height="250" /></p>
<p>Hopefully, you&#8217;ve achieved a perfect understanding of your market.   Long-time readers will know that I&#8217;m joking.  Market analysis suffers from it&#8217;s own Heisenberg Uncertainty Principle &#8211; if you actually did manage a perfect understanding, the market will have changed &#8211; the best you can hope for is a statistical understanding of the behavior of your market.  You can document your interpretations, assumptions, and decisions &#8211; achieving clarity in your requirements &#8211; at least from your point of view.</p>
<h2>Ambiguity for the Readers</h2>
<p>As I mentioned earlier &#8211; using requirements is a dance &#8211; and it takes two, both the writer and the reader.  You need to write requirements so that they can only be interpreted in a single way, or you will stumble.</p>
<p><img class="alignnone" title="reading requirements" src="http://sehlhorst.smugmug.com/Other/blog/reading/973758126_88Kot-O.jpg" alt="woman reading" width="250" height="165" /></p>
<p>&#8220;You keep using that word.  I do not think it means what you think it means.&#8221; &#8211; <em>Inigo Montoya</em> (<a title="Princess Bride Quote" href="http://www.imdb.com/title/tt0093779/quotes">IMDB</a>)</p>
<p><strong>Shared Language</strong></p>
<p>The word &#8220;shall&#8221; as in &#8220;the system shall&#8230;&#8221; can be misinterpreted when your readers don&#8217;t share the same native language as you &#8211; which is why <a title="Don't Use &quot;Shall&quot;" href="http://tynerblain.com/blog/2009/04/22/dont-use-shall/">you must always use &#8220;must.</a>&#8220;</p>
<blockquote><p>Some good research on vocabulary size data for comprehension of english can be found <a title="Vocabulary Size " href="http://www.wordhacker.com/en/article/vocabularysizewordlists.htm">here</a>. The average native english speaker knows 20,000 word families. With a vocabulary of 5,000 english words, only 98.5% of the words in a given text will be understood. 5,000 words is a lot for a speaker of a second language (3,000 words is considered a<em>working knowledge</em>).</p>
<p>An <a title="Readability and Requirements" href="http://tynerblain.com/blog/2005/12/30/readability-and-requirements/">analysis of the reading-level</a> at which a document is written can be helpfull in identifying if the language is likely to be challenging for readers with limited vocabularies. The <a title="Gunning Fog measure of Readability" href="http://tynerblain.com/blog/2005/12/30/readability-and-requirements/">Gunning-Fog Index</a> provides a measure of the education level at which a text is written.</p>
<p><cite>Writing Unambiguous Requirements (2006)</cite></p>
</blockquote>
<p>Can&#8217;t write that section any better :).</p>
<p><strong>Ambiguous Use of Language</strong></p>
<p>I had the privilege to attend a presentation by professor Daniel M. Berry in 2007, on the ambiguous use of language in business rules and requirements.  In that presentation he referenced <em><a title="The Ambiguity Handbook" href="http://se.uwaterloo.ca/~dberry/handbook/ambiguityHandbook.pdf">The Ambiguity Handbook</a></em><a title="The Ambiguity Handbook" href="http://se.uwaterloo.ca/~dberry/handbook/ambiguityHandbook.pdf"> </a>that he authored (80 page pdf), which I just re-read last week.  There are many good examples of ambiguity in the use of English in business documents.</p>
<p>The following are some of the sources of ambiguity, for which I entirely credit professor Berry for pointing out to me.  I&#8217;ve only added some illustrative examples:</p>
<ul>
<li><strong>Plurality Causes Ambiguity</strong>.  Consider &#8220;Emails must include sender addresses&#8221; and &#8220;emails must include recipient addresses.&#8221;  Must each email include one sender address and one recipient address?  Must each email include multiple sender addresses?  Solution &#8211; don&#8217;t use plural subjects.  &#8221;Each email must include a sender address&#8221; and &#8220;each email must include recipient addresses.&#8221;</li>
<li><strong>Associative Ambiguity</strong>.  Professor Berry calls this the <em>parenthesis problem</em>.   What does &#8220;A and B or C&#8221; mean to you?  Does it mean &#8220;A, and either of B or C&#8221; or does it mean &#8220;either C, or both A and B&#8221; when you read it?  In math and programming, we learn very specific rules for how to interpret these types of structures.  We are also given <em>parentheses</em>, that we can use when we want to be specific and unambiguous.  The reader of your requirements is not a compiler, so don&#8217;t assume that she will interpret this the same way that you do.  Solution &#8211; use parentheses and explicit language to eliminate ambiguity that would arise from ignorance of the associative property.</li>
<li><strong>Anaphor Ambiguity</strong>.  For non-linguists: &#8220;don&#8217;t use pronouns.&#8221;  I love the example that <a title="anaphor example" href="http://en.wikipedia.org/wiki/Anaphora_(linguistics)">wikipedia </a>uses &#8211; &#8220;We gave the bananas to the monkeys because they were hungry.  We gave the bananas to the monkeys because they were ripe.<br /> 
<div id="_mcePaste">We gave the bananas to the monkeys because they were here.&#8221;  The pronoun, &#8220;they,&#8221; has an ambiguous binding.  Should &#8220;they&#8221; be a reference to the bananas or the monkeys?  In each of the first two sentences, you could reasonably assume that the reader will properly bind &#8220;they&#8221; to the monkeys and bananas respectively.  In the third sentence, an assumption of how the reader will interpret &#8220;they&#8221; is not reasonable.  Reasonable assumptions are still ambiguous &#8211; and the context is less likely to be obvious &#8211; so don&#8217;t use pronouns and rely on readers to bind them to the appropriate nouns.  Solution &#8211; repeat the noun for every reference.</div>
</li>
</ul>
<p><strong>Incompleteness Ambiguity</strong></p>
<p>Unwritten requirements are by definition ambiguous.  You must not assume that unstated requirements will be implemented.</p>
<p>A security exploit was recently discovered (and eliminated) in Facebook.  Previously, if you attempted to login to Facebook with an email address and a password that did not match the email address, Facebook would present you with a typical &#8220;failed login&#8221; screen and a link to reset your password.  However, in an effort to be friendly, Facebook would also include the first name and last name that were associated with that email account in the friendly warning message.</p>
<p>That is nice, except it is a privacy problem, and anyone who knew about this before could use the login page to discover the first and last name to associate with any email address.  &#8221;Bad people&#8221; with email address lists could discover the name to associate with many of those email addresses &#8211; allowing more sophisticated phishing or social engineering attacks.</p>
<p>The requirement to not provide any personal information when a user fails a login attempt was almost certainly an unwritten requirement.</p>
<h2>Conclusion</h2>
<p>Precision in your writing will reduce ambiguity in your requirements.  <a title="Active listening" href="http://tynerblain.com/blog/2007/03/15/ten-active-listening-skills/">Active listening</a> will help you discover when ambiguity has slipped through your editing net.  You can never completely eliminate this problem, but you can improve.  You must.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Writing+Unambiguous+Requirements+http://bit.ly/beWSGG+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/08/18/unambiguous-requirements/&amp;t=Writing+Unambiguous+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/08/18/unambiguous-requirements/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>Rupert Murdoch &#8211; Zero; John Nash &#8211; One</title>
		<link>http://tynerblain.com/blog/2010/07/20/nash-beats-murdoch/</link>
		<comments>http://tynerblain.com/blog/2010/07/20/nash-beats-murdoch/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 14:33:58 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[freemium]]></category>
		<category><![CDATA[game theory]]></category>
		<category><![CDATA[john nash]]></category>
		<category><![CDATA[murdoch]]></category>
		<category><![CDATA[nash equilibrium]]></category>
		<category><![CDATA[pay-wall]]></category>
		<category><![CDATA[paywall]]></category>
		<category><![CDATA[rupert murdoch]]></category>
		<category><![CDATA[times of london]]></category>
		<category><![CDATA[understanding your market]]></category>
		<category><![CDATA[word of mouth]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1246</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F07%2F20%2Fnash-beats-murdoch%2F", "shorturl": "http://bit.ly/9A1R0N", "style": "big", "title": "Rupert Murdoch - Zero; John Nash - One" });
 vs. 
What happens when billionaire media magnate, Rupert Murdoch, pits his idea against a Nobel-prize winning idea from the beautiful mind of  economist and mathematician John Nash?
When you act on what you hope your market will do, [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F07%252F20%252Fnash-beats-murdoch%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2F9A1R0N%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Rupert%20Murdoch%20-%20Zero%3B%20John%20Nash%20-%20One%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F07%2F20%2Fnash-beats-murdoch%2F", "shorturl": "http://bit.ly/9A1R0N", "style": "big", "title": "Rupert Murdoch - Zero; John Nash - One" });</script></div>
<p><img class="alignnone" title="Rupert Murdoch" src="http://sehlhorst.smugmug.com/Other/blog/Ruper-Murdoch250/940675943_r6skK-O.jpg" alt="Wikicommons stock image of Rupert Murdoch" width="166" height="250" /> vs. <img class="alignnone" title="John Nash" src="http://sehlhorst.smugmug.com/Other/blog/John-Nash250/940675936_vTXvV-O.jpg" alt="Wikicommons stock image of John Nash" width="165" height="250" /></p>
<p>What happens when <a title="Rupert Murdoch on Wikipedia" href="http://en.wikipedia.org/wiki/Rupert_Murdoch">billionaire media magnate, Rupert Murdoch</a>, pits his idea against a Nobel-prize winning idea from the beautiful mind of <a title="John Nash on wikipedia" href="http://en.wikipedia.org/wiki/John_Forbes_Nash,_Jr."> economist and mathematician John Nash</a>?</p>
<p>When you act on what you <em>hope</em> your market will do, instead of what you <em>predict</em> your market will do &#8211; you&#8217;re in trouble.</p>
<p>This is a story about understanding your market, and an example of using game theory &#8211; specifically, the <a title="Nash Equilibrium" href="http://en.wikipedia.org/wiki/Nash_equilibrium">Nash Equilibrium</a> in &#8220;non-cooperative game theory&#8221; to predict market responses to your products.</p>
<h2><span id="more-1246"></span>Murdoch&#8217;s Idea</h2>
<p>To sum up the particular idea I&#8217;m talking about &#8211; Mr. Murdoch has put the Times of London behind a pay-wall (you have to subscribe to access the content online), and removed the articles from Google&#8217;s search index.  He did this because he believes that people accessing the content for free are &#8220;stealing it&#8221; and that the only way to make money in the news business online is by forcing people to pay for content.  For more nuanced and deeper discussions of what Mr. Murdoch is doing, check out these articles from <em><a title="Times of London paywall" href="http://www.theatlantic.com/science/archive/2010/07/on-rupert-murdochs-times-paywall/59878/">The Atlantic</a></em> explaining what he&#8217;s attempting, the <em><a title="times of london traffic stats jul 2010" href="http://www.editorandpublisher.com/Headlines/london-times-sees-66-traffic-drop-post-paywall-62033-.aspx">Editor &amp; Times</a></em><a title="times of london traffic stats jul 2010" href="http://www.editorandpublisher.com/Headlines/london-times-sees-66-traffic-drop-post-paywall-62033-.aspx"> report</a> of a 66% drop in traffic, <em><a title="behind the firewall" href="http://www.newser.com/off-the-grid/post/502/whats-really-going-on-behind-murdochs-paywall.html">Newser</a></em><a title="behind the firewall" href="http://www.newser.com/off-the-grid/post/502/whats-really-going-on-behind-murdochs-paywall.html">&#8217;s investigative journalism</a> of what&#8217;s happening inside the company, or <em><a title="murdoch's paywall foundering" href="http://www.businessinsider.com/murdochs-first-newspaper-paywalls-not-off-to-a-great-start-2010-7">Business Insider&#8217;s</a></em> take on the matter.</p>
<p><img class="alignnone" title="Times of London paywall" src="http://sehlhorst.smugmug.com/Other/blog/london-times/940784940_kNxNm-O.png" alt="" width="250" height="169" /></p>
<p>My opinion is that Mr. Murdoch expects his market will respond the way he wants them to &#8211; by subscribing to the online version of the Times of London &#8211; in stark contrast both to pundit predictions and what professor Nash&#8217;s <em><a title="Nash Equilibrium" href="http://en.wikipedia.org/wiki/Nash_equilibrium">Nash Equilibrium</a></em><a title="Nash Equilibrium" href="http://en.wikipedia.org/wiki/Nash_equilibrium"> model of non-cooperative gaming</a> predicts will happen.</p>
<p>As results have finally started surfacing, they appear to completely support what game-theory would predict and utterly refute what Mr. Murdoch would have hoped for.</p>
<h2>Game Theory for Predicting Market Behavior</h2>
<p>I was enthralled by Scott Steven&#8217;s lecture series, <em><a title="Game Theory lectures at Amazon" href="http://www.amazon.com/dp/1598034839?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=1598034839&amp;creative=373489&amp;camp=211189">Games People Play: Game Theory in Life, Business, and Beyond</a></em> &#8211; a DVD set of a series of lectures from The Teaching Company [link goes to Amazon].</p>
<p>Understanding your market involves not only <a title="understanding user personas and buyer personas" href="http://tynerblain.com/blog/2008/07/22/buyers-and-users/">knowing what problems your customers face</a>, but also predicting how your competitors will behave.  Competitive analysis is not just capturing a snap-shot of their products and positioning <em>today</em>, but also forming predictions of how they will respond to <a title="market driven competitive advantage" href="http://tynerblain.com/blog/2008/08/26/market-driven-advantage/">the disruptions you will create in your market by innovating</a>.  Markets are not static &#8211; you have to understand both how your customers&#8217; needs will evolve and how your competitor&#8217;s offerings will change, in order to understand how your product will perform.</p>
<p>One of the &#8220;games&#8221; in game theory is called <em><a title="The Coordination Game" href="http://en.wikipedia.org/wiki/Coordination_game">The Coordination Game</a></em>, and it is the one that captures Mr. Murdoch&#8217;s conundrum.  The <em>coordination</em> piece of this game is in acknowledging that what you do (to pay-wall or <em>not</em> to pay-wall), and what your competitors do (pay-wall or not) are interdependent decisions, of which you only control your own decision.</p>
<p>You can&#8217;t (successfully) unilaterally decide what you are going to do, without taking into account what your competition is going to do.  And vice-versa.  That&#8217;s the part that makes it hard &#8211; there is a circular reference that has to be resolved.  I suspect that&#8217;s the source of elegance in the <em>Nash Equilibrium</em> &#8211; he realized that there are &#8220;stable&#8221; and instable combinations of the decisions &#8211; yours, and your competitors.</p>
<h2>The Pay-wall Coordination Game</h2>
<p>Mr. Murdoch and &#8220;everyone else&#8221; (his competition for consumers of news) are both faced with a choice &#8211; should they allow free access to the articles, or not.  Free access to articles can generate revenue by two mechanisms.</p>
<p>The first is one of the<a title="Freemium business models" href="http://tynerblain.com/blog/2009/02/24/freemium-model/"> freemium business models</a> &#8211; <em>billing Peter to pay for Paul</em> &#8211; charging money to advertisers for access to viewer&#8217;s attention.</p>
<p>The second mechanic is by <a title="Word of mouth marketing" href="http://tynerblain.com/blog/2007/09/18/dynamics-of-word-of-mouth/">leveraging word of mouth</a> &#8211; people reading your free article, then encouraging others to read your other articles.  This approach can either be used to get a percentage of people as paying customers (with a &#8220;leaky pay-wall&#8221; model that allows some free views, but encourages paid-subscriptions), or to get additional traffic that increases revenue from advertising.  One way to maximize this approach is by<a title="Viral product management" href="http://tynerblain.com/blog/2009/03/02/viral-product-management/"> making your product implicitly viral</a> so that it promotes itself.</p>
<p>Alternately, Mr. Murdoch, or any of his competitors can create a pay-wall, where only paying subscribers will have access to the content.  Presumably, certainly historically, a subscription model <em>with the same level of readership</em> &#8211; if that could be achieved &#8211; would generate more revenue for the publisher than either freemium model.</p>
<p>The crux is that we have tons of market data to show that &#8220;the same level of readership&#8221; simply will not happen.</p>
<p><strong>There are four possible scenarios that can happen in this market</strong> -</p>
<ol>
<li>Both Mr. Murdoch and &#8220;everyone else&#8221; institute pay-walls, making all online content available only to paying subscribers.</li>
<li>Mr. Murdoch erects a pay-wall, but everyone else continues to allow free access to content.</li>
<li>Mr. Murdoch allows free access to content while everyone else erects pay-walls to prohibit access to content.</li>
<li>No one erects a pay-wall, and free access is allowed to all content.</li>
</ol>
<p><img class="alignnone" title="Game Theory for Murdoch vs. Everyone" src="http://sehlhorst.smugmug.com/Other/blog/four-squares/941358190_PJ73g-O.png" alt="" width="441" height="442" /></p>
<p>[Update 2010.07.21: Why "everyone?"  See comment #2 below]</p>
<p>In scenario 1, assuming people don&#8217;t just stop reading online, everyone wins &#8211; everyone charges subscription prices, achieving the maximum amount of revenue.  So why didn&#8217;t this happen?  Because the decisions are interdependent, and because the market is starting out in scenario 4.</p>
<p>Mr. Murdoch has moved the market (from his perspective) into scenario 2, which is clearly bad for him, in hopes that everyone else will move as well, to reach scenario 1.  Once Mr. Murdoch put the Times of London into scenario 2, then everyone else&#8217;s best move is to stay there.  No one else will join him, because <em>everyone </em>else never will.  The market, once stabilized in scenario 4 (the starting point) can never move to scenario 1 &#8211; without collusion, which is conveniently illegal.</p>
<p><em>Someone</em> will always be there to refuse to move to scenario 1.  &#8221;Everyone else&#8221; is destined to allow free access, or exit the market.</p>
<h2>Understanding Your Customers</h2>
<p>It is possible that Mr. Murdoch looked at the <em>Wall Street Journal</em>, which has a pay-wall, and said &#8220;I want to do that too.&#8221;  And perhaps he discounted all of this game-theory &#8220;nonsense&#8221; because if it worked for them, it can work for him &#8211; the model is BS.</p>
<p>However, I believe the Journal&#8217;s market is different, and it works for them for different reasons.  The market for business news pays a premium for immediacy and quality of information &#8211; because getting the best information first is worth a lot of money to them.  There are &#8220;free&#8221; immediate sources of business news information, but the market indicates that it perceives that information to be of lower quality.  And there are free high-quality information sources, without the immediacy.</p>
<p>The reality, which you can only get from<a title="user goals and corporate goals" href="http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/"> understanding your customer&#8217;s goals</a> &#8211; is that the business-news market is stable in scenario 1. It could be destabilized, by someone offering free, timely, high quality information.  If that happened, as professor Nash showed, the market would either re-stabilize in scenario 1 (the company that changes says &#8220;oops&#8221; and reverts their policy), or the market would transition to a stable state in scenario 4 (everyone offers free content).</p>
<p>The more concentrated the market [see: <a title="measuring market concentration and competitiveness" href="http://tynerblain.com/blog/2009/04/13/measure-market-concentration/">measuring market concentration</a>], the more likely a reversion to scenario 1.  The more competitive the market, the more likely that it will stabilize in scenario 3.</p>
<p>Non-business news on the internet?  Very competitive.  And stable in scenario 4, no matter what Mr. Murdoch might hope.  Sadly, there are profits to be made in scenario 4, but they aren&#8217;t as appealing as the double-rainbow of scenario 1 &#8211; however impossible it is to achieve.</p>
<h2>Attributions</h2>
<p>The two photos at the start of this article of Mr.s <a title="Murdoch image and license" href="http://en.wikipedia.org/wiki/File:Rupert_Murdoch_-_WEF_Davos_2007.jpg">Murdoch</a> and <a title="John Nash image source" href="http://en.wikipedia.org/wiki/File:John_Forbes_Nash,_Jr._by_Peter_Badge.jpg">Nash</a> are licensed through the <a title="Creative Commons" href="http://en.wikipedia.org/wiki/en:Creative_Commons">Creative Commons</a> <a title="CC2.0 link" href="http://creativecommons.org/licenses/by-sa/2.0/deed.en">Attribution Share-Alike 2.0 Generic</a> and the <a title="CC 3.0 license link" href="http://creativecommons.org/licenses/by-sa/3.0/deed.en">Attribution Share-Alike 3.0 Unported</a> licenses, respectively.</p>
<p>All other content in this article is licensed per the Creative Commons link at the bottom of this page.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Rupert+Murdoch+%E2%80%93+Zero%3B+John+Nash+%E2%80%93+One+http://bit.ly/b2c5W3+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/07/20/nash-beats-murdoch/&amp;t=Rupert+Murdoch+%E2%80%93+Zero%3B+John+Nash+%E2%80%93+One" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/07/20/nash-beats-murdoch/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>The High Costs of Building the Wrong Product</title>
		<link>http://tynerblain.com/blog/2010/06/21/building-the-wrong-product/</link>
		<comments>http://tynerblain.com/blog/2010/06/21/building-the-wrong-product/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 14:15:12 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements gathering]]></category>
		<category><![CDATA[1-10-100 rule]]></category>
		<category><![CDATA[bad product management]]></category>
		<category><![CDATA[cost of quality]]></category>
		<category><![CDATA[requirements bugs]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1229</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F06%2F21%2Fbuilding-the-wrong-product%2F", "shorturl": "http://bit.ly/bmtQmO", "style": "big", "title": "The High Costs of Building the Wrong Product" });

As product managers, we talk about creating the right solutions with our products.  Understanding the very real problems our customers face, understanding the very real opportunities our markets present, and manifesting that understanding in a product roadmap.
Other than [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F06%252F21%252Fbuilding-the-wrong-product%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FbmtQmO%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22The%20High%20Costs%20of%20Building%20the%20Wrong%20Product%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F06%2F21%2Fbuilding-the-wrong-product%2F", "shorturl": "http://bit.ly/bmtQmO", "style": "big", "title": "The High Costs of Building the Wrong Product" });</script></div>
<p><img class="alignnone" title="Bug" src="http://sehlhorst.smugmug.com/photos/51917869-M.jpg" alt="A Praying Mantis" width="250" height="187" /></p>
<p>As product managers, we talk about creating the right solutions with our products.  Understanding the very real problems our customers face, understanding the very real opportunities our markets present, and manifesting that understanding in a product roadmap.</p>
<p>Other than being &#8220;not as good,&#8221; how expensive is it to build the wrong product?<br />
<span id="more-1229"></span></p>
<h2>The Cost of Poor Quality</h2>
<p><img class="alignnone" title="frayed cable" src="http://sehlhorst.smugmug.com/Other/blog/frayed-cable/908182336_gJtUG-O.jpg" alt="A frayed Steel cable" width="250" height="179" /></p>
<p>There&#8217;s an analog to the market dynamics of making poor product decisions &#8211; executing with poor quality.  Many research studies  and articles have identified the market impacts of poor quality.  This has become so well accepted that people today cite it like a law of physics (<a title="cost of quality" href="http://www.tylogix.com/Articles/The_Dollars_and_Sense_of_Software_Quality_Control_V011.htm">one example here</a> based on <a title="boehm in 1988" href="http://faculty.ksu.edu.sa/ghazy/Cost_MSc/R6.pdf">this 1988 IEEE research</a> by Barry Boehm and Philip Papaccio) as the &#8220;1-10-100 rule.&#8221;  The primary conclusion of that research is that ten dollars spent on fixing bugs:</p>
<ul>
<li>Costs and saves $10 when you catch (and fix) the bug during implementation.</li>
<li>Avoids $100 in costs when you catch the bug during QA and send the product back to development (then test again).</li>
<li>Avoids $1,000 in costs versus waiting until your customers catch the bug in the field, causing the team to remedy the problems, rush out a patch release, and/or go to heroic lengths to manage a PR problem.</li>
</ul>
<p>This is an opportunity in front of your product team &#8211; a 100x payback from investing in quality during the development process.  Of course, be pragmatic about it -<a title="measuring the cost of quality" href="http://tynerblain.com/blog/2006/02/22/software-testing-series-measuring-the-cost-of-quality/"> if the cost of testing exceeds the cost of bugs, don&#8217;t test</a>.</p>
<p>This is not a solved problem, by any stretch, but the solutions and methods to solve this problem are well understood now.  In fact, a <a title="boehm and Basili on cost of quality" href="http://www.cs.umd.edu/projects/SoftEng/ESEG/papers/82.78.pdf">2001 article by Barry Boehm and Victor Basili</a> shows that in some cases, the labor costs to resolve bugs can be as low as 5:1 &#8211; when considering a subset of smaller systems, when using more &#8220;agile&#8221; processes.  That lowered ratio does not take into account the lost market opportunities and the costs of cleaning up <em>collateral</em> damage to your product &#8211; just the immediately realizable (and measurable) costs of resolution.</p>
<p>One very real problem, when talking about &#8220;bugs&#8221; is in defining what a &#8220;bug&#8221; is.  And <a title="Where bugs come from - software development process analysis" href="http://tynerblain.com/blog/2006/01/22/where-bugs-come-from/">the definition of a bug is a matter of perspective</a>.  A developer can reasonably assert that &#8220;if it meets the spec it is not a bug, it is working as designed.&#8221;  What if the spec is wrong?  The developer may not be guilty, but collectively, your team screwed up.  There&#8217;s a &#8220;bug&#8221; in the requirements.</p>
<h2>What Is A Requirements Bug?</h2>
<p><img class="alignnone" title="flawed revenue projection" src="http://sehlhorst.smugmug.com/Other/blog/Revenue-300x234/908184921_okRC5-O.png" alt="A very unlikely hockey stick revenue forecast graph" width="300" height="234" /></p>
<p>Now things are getting interesting.</p>
<p>If you wrote a requirement that you interpret as &#8220;A&#8221; and your developers interpret as &#8220;B&#8221; &#8211; you definitely have a bug &#8211; the team won&#8217;t build the right product.  For each $1 you could spend making sure you have bug-free requirements, you could:</p>
<ul>
<li>Make sure you have a shared understanding of the documented requirements through <a title="Eliciting with Active Listening" href="http://tynerblain.com/blog/2007/03/15/ten-active-listening-skills/">active listening</a> before development begins ($1).  Following the <a title="The Rules of Writing Good Requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">Rules of Writing Requirements</a> will help prevent this miscommunication.</li>
<li>Wait until the engineering team is ready to demo their progress ($10).  They will have to build it again, because they built the wrong stuff.</li>
<li>Wait until development is complete and QA is validating that the code meets the spec ($100).  This gets tricky if you are thinking &#8220;A&#8221;, the developers are thinking &#8220;B&#8221;, and QA is thinking &#8220;C.&#8221;</li>
<li>In classic throw-it-over-the-wall mode, wait until the product is launched, and it is the wrong product ($1000).  Assuming &#8220;A&#8221; was the right problem to solve, the cost of entering the market with a solution to &#8220;B&#8221;, leaving &#8220;A&#8221; unaddressed, is impressively high.</li>
</ul>
<p>This gets interesting because the above assumes that &#8220;A&#8221; was the right problem to solve.  What if &#8220;G&#8221; was <a title="Writing Valuable Requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/">the right problem to solve</a>, and &#8220;A&#8221; was <a title="market data is more important than feature requests" href="http://tynerblain.com/blog/2008/08/19/managing-market-data/">the </a><em><a title="market data is more important than feature requests" href="http://tynerblain.com/blog/2008/08/19/managing-market-data/">wrong</a></em><a title="market data is more important than feature requests" href="http://tynerblain.com/blog/2008/08/19/managing-market-data/"> market problem</a>?  Even if everything (else) is working perfectly &#8211; you document requirements for &#8220;A&#8221;, the engineering team creates a marvelous &#8220;A&#8221; and it launches without implementation errors &#8211; you still fail, and incur the 1,000x cost of a failed product launch.</p>
<p>There is an even larger opportunity in front of your product team &#8211; a 1,000x payback on discovering and choosing to solve the right problems for your customers and markets.</p>
<ul>
<li>Would Palm still be independent if the Pre had solved a compelling problem?</li>
<li>Why did Intuit have to buy Mint.com &#8211; could they have embraced the same customers with Quicken?</li>
<li>What is Garmin going to do now that &#8220;free&#8221; GPS mapping and turn-by-turn directions are becoming ubiquitous? If it is &#8220;more of the same,&#8221; how much are they wasting?</li>
</ul>
<h2>Wrapping Up</h2>
<p><img class="alignnone" title="Wrapping" src="http://sehlhorst.smugmug.com/Other/blog/wrapping-paper/908188628_begak-O.jpg" alt="Wrapping paper rolls" width="250" height="181" /></p>
<p>I&#8217;m not aware of any studies that show that &#8220;requirements bugs&#8221; fit the same 1/10/100/1000 cost explosion model that &#8220;implementation bugs&#8221; exhibit.  Emotionally, it &#8220;feels about right&#8221; to me &#8211; it passes my &#8220;sniff test.&#8221;</p>
<p>There are times when days of research would have been required to avoid or redirect a few hours of implementation effort on projects I&#8217;ve worked on.  And I&#8217;ve seen man-years invested solving problems that didn&#8217;t involve much more research.</p>
<p>My intuition from products and teams I&#8217;ve worked with is that it probably averages out somewhere around 10x.</p>
<p>What does your gut (or your data &#8211; if you have some, post a link below!) tell you?</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+The+High+Costs+of+Building+the+Wrong+Product+http://bit.ly/d0A65h+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/06/21/building-the-wrong-product/&amp;t=The+High+Costs+of+Building+the+Wrong+Product" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/06/21/building-the-wrong-product/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>Consistent Requirements</title>
		<link>http://tynerblain.com/blog/2010/04/06/consistent-requirements/</link>
		<comments>http://tynerblain.com/blog/2010/04/06/consistent-requirements/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 06:07:30 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[consistent requirements]]></category>
		<category><![CDATA[rules of writing requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1205</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F04%2F06%2Fconsistent-requirements%2F", "shorturl": "http://bit.ly/dCP73h", "style": "big", "title": "Consistent Requirements" });

Consistency in writing requirements is important on two levels &#8211; strategic and tactical.  Tactically, you need to write your requirements with grammatical consistency, so that potentially ambiguous statements will be interpreted similarly.  You also need to write requirements that are logically consistent, so that you [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F04%252F06%252Fconsistent-requirements%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FdCP73h%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Consistent%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F04%2F06%2Fconsistent-requirements%2F", "shorturl": "http://bit.ly/dCP73h", "style": "big", "title": "Consistent Requirements" });</script></div>
<p><img class="alignnone" title="writing consistent requirements logo - big 12 rules" src="http://sehlhorst.smugmug.com/photos/128628622-M.png" alt="writing consistent requirements logo" width="250" height="250" /></p>
<p>Consistency in writing requirements is important on two levels &#8211; strategic and tactical.  Tactically, you need to write your requirements with grammatical consistency, so that potentially ambiguous statements will be interpreted similarly.  You also need to write requirements that are logically consistent, so that you avoid &#8220;impossible&#8221; requirements and gaps of unspecified meaning.   Strategically, your requirements need to reflect a focus on markets and problems that are consistent with your business objectives and the vision your company is manifesting</p>
<h2><span id="more-1205"></span>Consistent Requirements &#8211; Revisiting</h2>
<p>Thirteen hundred ninety-six days ago (grin), I wrote about <a title="consistency in writing requirements" href="http://tynerblain.com/blog/2006/06/09/big-ten-rules-writing-consistent-requirements/">the importance of grammatical and logical consistency in writing requirements</a> &#8211; an emphasis on the tactical aspects of consistency in <em>writing</em> requirements.  This article adds a brief discussion on the consistency of the <em>requirements</em> you write.  This article is the sixth update of a series of articles on <a title="the rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">the rules of writing requirements</a>.</p>
<h2>Grammatical Consistency</h2>
<p><img class="alignnone" title="yoda" src="http://sehlhorst.smugmug.com/Other/blog/yoda-small/829162992_csMf9-O.jpg" alt="" width="250" height="187" /> [<a title="commercial reuse-labeled source" href="http://picasaweb.google.com/lh/photo/7LgUrfs5IsyeY3MHzr0Eaw">source</a>]</p>
<p>Writing requirements is not like other forms of writing in one key way &#8211; you <em>don&#8217;t</em> want to vary the terms and language you use in your requirements documents.  Remember the critiques you received when you studied writing in school for a moment.  Your teacher told you not to repeatedly use the same word, but to use synonyms for that word &#8211; walked, ambled, stepped, capered, etc.  Those synonyms allowed you to create imagery and helped your readers avoid boredom.  Your teacher encouraged you to use metaphors that created even stronger imagery &#8211; flew, slogged, muddled, danced, etc.  Those metaphors allowed you to infuse emotion into your narrative and helped your writing come to life for your readers.</p>
<p>As Yoda said, <strong>&#8220;Unlearn, you must!&#8221;</strong></p>
<p>Requirements are not a narrative.  Your primary goal is not <em>entertainment</em>, it is <em>enlightenment</em>.  Don&#8217;t use varying terms to describe the same action or object &#8211; use the same terms over and over again.  Don&#8217;t vary the modifiers of terms except when you are explicitly varying the context and referenced items &#8211; and then make certain that you use the same modifiers consistently for the same context and references.  When dealing with anything that has some complexity, provide a figure or diagram (possibly in an appendix or glossary) that explains the explicit meanings of each term and term-modifier.</p>
<p>For example, if you are defining requirements for a classification system for authored works, be specific about the definitions of <em>author</em>, <em>editor</em>, <em>publisher</em>, and <em>reviewer</em>.  You may also need to define a term that is used collectively for all of them, like <em>creators</em>.</p>
<p>You must consistently use the same voice  - ideally the <em>active</em> voice.  And of course, <a title="you must not say 'the system shall...'" href="http://tynerblain.com/blog/2009/04/22/dont-use-shall/">you must not use &#8216;the system shall.&#8217;</a> [There's a great debate in the comments on that article - one thing to note - all of the people on both sides of the debate emphatically expressed their <em>consistent</em> use of one form or the other.]</p>
<h2>Logical Consistency</h2>
<p><img class="alignnone" title="commander data from sttng" src="http://sehlhorst.smugmug.com/Other/blog/data-small/829162995_fszNh-O.jpg" alt="commander data from star trek" width="250" height="222" /> [<a title="original image on flickr - licensed for commercial reuse" href="http://www.flickr.com/photos/t/236605/">source</a>]</p>
<p>Logical <em>in</em>consistency most commonly comes from expressing the same requirement twice.  If you use the exact same words to express a requirement twice, you&#8217;re being redundant and repetitive (grin #2).  Most likely, the second expression of the same requirement is both unintended, and worded differently &#8211; running the risk that it will be interpreted differently, and therefore inconsistently.</p>
<p>You will also create logically inconsistent requirements when you express mutually exclusive requirements.  These can be directly incompatible, like writing &#8220;the system must infer the value&#8230;&#8221; and &#8220;the user must provide the value&#8230;&#8221;   Or they can be indirectly inconsistent like &#8220;the animal must bark&#8221; and &#8220;the animal must be a cat&#8221; &#8211; which is logically inconsistent because cats cannot bark (thereby <a title="don't make requirements infeasible" href="http://tynerblain.com/blog/2009/11/30/attainable-requirements/">making at least one of the requirements infeasible</a>).</p>
<h2>Strategic Consistency</h2>
<p><img class="alignnone" title="stratego - the strategy game" src="http://sehlhorst.smugmug.com/Other/blog/stratego/829175535_CuorC-O.jpg" alt="stratego game board" width="250" height="187" /></p>
<p>One of the elements that defines <em><a title="writing valuable requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/">valuable</a></em><a title="writing valuable requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/"> requirements</a> is that they &#8220;support your business strategy.&#8221;  In the context of value, that means you have created <a title="decomposition of value with ishikawa diagrams" href="http://tynerblain.com/blog/2008/05/27/cause-and-effect-diagrams/">a decomposition model for how you intend to realize value</a> &#8211; manifesting a strategy or a component of a strategy.</p>
<p>A strategy, however is not always defined by a single measure.  Your strategy could include financial metrics and targets, as well as a stated mission regarding customer service levels, and a long-term investment that is hoped to eventually return long-term rewards.  Your requirements, while not only completely defining the mechanisms for achieving value, must also be consistent with the other elements of your strategy.</p>
<p>For example, you should not take advantage of uninformed costumers when you have a core value of integrity &#8211; regardless of how effective that may be at meeting financial goals.  The requirements that articulated the (subordinate) goal of grifting your customers (to maximize revenue) would be inconsistent with the goal of operating with integrity.</p>
<h2>Conclusion</h2>
<p>Consistent Requirements are requirements that</p>
<ul>
<li>Are not in conflict with any of your strategic objectives, vision, or corporate goals</li>
<li>Avoid logical inconsistencies</li>
<li>Utilize consistent structure, terms, and grammar</li>
</ul>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Consistent+Requirements+http://bit.ly/blRKKz+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/04/06/consistent-requirements/&amp;t=Consistent+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/04/06/consistent-requirements/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Business Goals and Requirements</title>
		<link>http://tynerblain.com/blog/2010/03/11/goals-and-requirements/</link>
		<comments>http://tynerblain.com/blog/2010/03/11/goals-and-requirements/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 17:11:00 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements gathering]]></category>
		<category><![CDATA[business goals]]></category>
		<category><![CDATA[business requirements]]></category>
		<category><![CDATA[goals]]></category>
		<category><![CDATA[writing requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1181</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F03%2F11%2Fgoals-and-requirements%2F", "style": "big", "title": "Business Goals and Requirements" });

One of my colleagues got into a debate with one of his colleagues about the differences between goals and requirements.  His opponent fired the following salvo: &#8220;[That] is not a business requirement in any company of the world&#8230;&#8221;
What you call your requirements is less important than [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F03%252F11%252Fgoals-and-requirements%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Business%20Goals%20and%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F03%2F11%2Fgoals-and-requirements%2F", "style": "big", "title": "Business Goals and Requirements" });</script></div>
<p><img class="alignnone" title="warehouse inventory level" src="http://sehlhorst.smugmug.com/Other/blog/warehouse/807733348_FDXS6-O.jpg" alt="Inventory in a warehouse" width="250" height="187" /></p>
<p>One of my colleagues got into a debate with one of his colleagues about the differences between goals and requirements.  His opponent fired the following salvo: &#8220;[That] is not a business requirement in any company of the world&#8230;&#8221;</p>
<p>What you <em>call </em>your requirements is less important than <em>how you communicate</em> them.</p>
<h2><span id="more-1181"></span>Labels</h2>
<p>I&#8217;ve worked with a lot of companies that use different <em>labels</em> to describe their descriptions of the problems that need to be solved. This is not another article about requirements versus specification (specification = design constraint, btw).</p>
<blockquote><p>If you&#8217;re not a long time reader who&#8217;s followed the debates and discussions on this topic in the past, check out these articles and comments, where we&#8217;ve had some great discussions on that topic &#8211; with particular thanks to <a title="Roger, on Twitter" href="http://twitter.com/rcauvin">Roger Cauvin</a> for keeping the debate front and center.</p>
<ul>
<li><a title="debating the difference between requirements and design" href="http://tynerblain.com/blog/2006/02/11/requirements-vs-design-which-is-which-and-why/">Requirements Versus Design: Which is Which and Why</a></li>
<li><a title="Article acknowledging different perspectives on 'requirements'" href="http://tynerblain.com/blog/2006/05/11/requirements-documents-one-mans-trash/">Requirements Docs &#8211; One Man&#8217;s Trash is&#8230;</a></li>
</ul>
<p>The central theme is that the debate about &#8220;what versus why&#8221; centers around differences in people&#8217;s perspective on the problem.</p>
<p><img class="alignnone" title="What versus Why versus How" src="http://sehlhorst.smugmug.com/photos/69105260-M.png" alt="Diagram of different perspectives on the same artifacts" width="482" height="420" /></p></blockquote>
<p>This challenge is not really about that (but it makes for good background).  The complaint my colleague received was really a critique of the way that the <em>why</em> of a set of requests was communicated and labeled.</p>
<h2>Actionable Goals</h2>
<p>Companies have strategic goals (increase shareholder value, gain market share, etc) that serve to guide the investments and activities of the organization.  However, for the teams that are creating products, those goals are too vague to be actionable.  I guess this is where <em>my</em> set of labels comes in.  I don&#8217;t think the labeling of a goal <em>as a goal</em> (versus labeling it <em>as a requirement</em>) is abstractly important, however, when people value making a distinction, here&#8217;s how I do it.</p>
<p>A <em>goal </em>is something your business (or user) is trying to achieve.  It is too abstract to have a single valid solution approach.  Once your business stakeholder(s) decide on a strategy by which they will achieve that goal, the business will define <em>requirements </em>for the actionable project(s) that execute this strategy.  This is an ideation step that lives inside the &#8220;why&#8221; box from a business analyst&#8217;s perspective.  Here&#8217;s an example:</p>
<h2>Warehouse Manager</h2>
<p><img class="alignnone" title="businesswoman" src="http://sehlhorst.smugmug.com/Other/blog/ok/807760870_z87Fe-O.jpg" alt="business woman giving thumbs-up sign" width="166" height="250" /></p>
<p>You&#8217;re in the IT department of a large company.  You&#8217;ve been assigned to support the warehouse manager (or COO, or vice president of order fulfillment or whatever).  Your warehouse manager is responsible for procuring the products that your company sells, keeping inventory on hand, and delivering those products to customers when they have been purchased.</p>
<p>Your warehouse manager is measured (or promoted) based on her performance relative to the following:</p>
<ul>
<li>The time that a customer has to wait between placing an order and receiving the product.</li>
<li>The cost impact of warehouse operations on the products.</li>
</ul>
<p>Your warehouse manager focuses on these two metrics because of your company&#8217;s goals &#8211; provide good customer service, be profitable, and grow revenue.  Those abstract goals influence product pricing &#8211; it must be low enough to grow revenue in the target markets, and be high enough to be profitable.  Since market pressures drive pricing decisions, typically a profitability target will then create cost-reduction pressures (profitability also influences pricing decisions, selection of markets, positioning within that market, etc).  A customer service strategy can also include a &#8220;you get your product quickly&#8221; component &#8211; as it does in this example.</p>
<p>Your warehouse manager now comes to you and says &#8220;I have an initiative to lower costs.&#8221;</p>
<p><strong>Is this a goal or is it a business requirement?</strong></p>
<p>Ultimately, it doesn&#8217;t matter what you call it, but for you to <em>actually do something</em> you need to know more.  That&#8217;s why <em>my</em> approach is to call it a goal.  Your warehouse manager&#8217;s problem is to lower costs.  You need to <a title="Problem decomposition with Ishikawa Diagrams" href="http://tynerblain.com/blog/2008/05/27/cause-and-effect-diagrams/">decompose that problem to understand</a> how you (and your team) can do something to help her achieve that goal.  The reason you have to do that is that you need <a title="Defining good problem statements" href="http://tynerblain.com/blog/2008/05/12/your-problem-statement/">a problem statement at the right level of abstraction</a>.</p>
<p>In <a title="Top elicitation techniques" href="http://tynerblain.com/blog/2007/09/13/elicitation-techniques-2/">elicitation conversations</a> with your warehouse manager, you learn that all of the costs of operating the warehouse are allocated to the different business units, who operate as profit centers.  The warehouse operates as a cost center.  The warehouse manager treats each business unit as a customer, and provides a service of &#8220;fulfilling product orders&#8221; in exchange for funds that cover the costs of operation.  The allocation of costs is done per product that appears in the warehouse.  Since allocation is per product, it could be something like $1.30 per product in &#8220;warehouse costs.&#8221;  There are multiple sources of those costs (that are then allocated per product), and there are multiple ways to approach reducing the <em>cost per product</em>.</p>
<p>Your warehouse manager develops a strategy (probably a &#8220;mini-strategy&#8221; from the company&#8217;s perspective) to lowering costs.  She rules out &#8220;sell more products&#8221; as an approach, because she can&#8217;t control that.  She also can not affect her fixed costs (rent, depreciation, labor).</p>
<p>Eventually you discover that there is another cost hidden in the provisioning model &#8211; products are purchased, they sit in the warehouse for a while, then they are sold and delivered, and eventually money is collected from customers to pay for the products.  Your company has to pay in advance for the products, and doesn&#8217;t get their money back until funds are collected from the customers.  That money is &#8220;tied up in inventory&#8221; when it could have been invested otherwise &#8211; so there is a cost associated with high inventory levels, that directly correlates with the amount of inventory in stock.  When a new version / revision of a product is introduced, your inventory may become obsolete (it is definitely devalued).  And since markets are moving targets, your prospects of selling a product change over time &#8211; a risk that you will not be able to sell all of your inventory.</p>
<p>At the end of the day, the amount of inventory you have on hand has a cost.  The more you have, the more it costs.  A rule of thumb I heard 20 years ago was that inventory costs could be as high as 1/3 of the cost of the product for each year you keep it around.  If that is true, that is something like 0.5% added cost for every week the product is in inventory.  Here&#8217;s something the warehouse manager can potentially control.</p>
<p>Currently, your warehouse manager has 8 weeks of inventory on hand (on average) for products, which allows her to ship quickly.  She realizes she is adding 4% to the cost of the product.  She decides that if she can cut those costs in half, she will be a heroine.</p>
<p><img class="alignnone" title="business woman triumphs" src="http://sehlhorst.smugmug.com/Other/blog/hooray/807760868_acWdi-O.jpg" alt="image of businesswoman in victory" width="166" height="250" /></p>
<p>Her <em>business requirement</em> is to reduce inventory levels from 8 weeks (on average) to 4 weeks (on average).  She also has a constraint that no more than 1% of orders be delayed by more than a day (due to running out of inventory).</p>
<p>Now you have requirements that are <a title="writing unambiguous requirements" href="http://tynerblain.com/blog/2006/06/12/writing-unambiguous-requirements/">unambiguous </a>and <a title="verifiable and measurable requirements" href="http://tynerblain.com/blog/2006/06/13/writing-verifiable-requirements/">measurable</a>.</p>
<h2>Conclusion</h2>
<p>Don&#8217;t trap yourself in worrying about the labeling of goals / requirements, but if you have to work with someone who does find that really important, before you call it a <em>requirement</em>, make sure it is at the right level of abstraction.  And of course, make sure you <a title="The rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">follow the rules of writing requirements</a>.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Business+Goals+and+Requirements+http://bit.ly/aVZD63+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/03/11/goals-and-requirements/&amp;t=Business+Goals+and+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/03/11/goals-and-requirements/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Complete Requirements</title>
		<link>http://tynerblain.com/blog/2010/02/23/complete-requirements/</link>
		<comments>http://tynerblain.com/blog/2010/02/23/complete-requirements/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 14:01:54 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Kano Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[complete requirements]]></category>
		<category><![CDATA[rules of requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1168</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F02%2F23%2Fcomplete-requirements%2F", "style": "big", "title": "Complete Requirements" });

You give your requirements to the engineering team, and they look complete.  The team builds your product, you launch it and the market soundly rejects it.  Why?  Because your requirements weren&#8217;t complete &#8211; they didn&#8217;t actually solve the problem that needed to be solved.

Complete Requirements &#8211; Revisiting
Going [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F02%252F23%252Fcomplete-requirements%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Complete%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F02%2F23%2Fcomplete-requirements%2F", "style": "big", "title": "Complete Requirements" });</script></div>
<p><img class="alignnone" title="big ten rules of requirements logo" src="http://sehlhorst.smugmug.com/photos/128628589-M.png" alt="big ten rules of writing requirements logo #5" width="250" height="250" /></p>
<p>You give your requirements to the engineering team, and they <em>look</em> complete.  The team builds your product, you launch it and the market soundly rejects it.  Why?  Because your requirements weren&#8217;t <em>complete</em> &#8211; they didn&#8217;t actually solve the problem that needed to be solved.</p>
<p><span id="more-1168"></span></p>
<h2>Complete Requirements &#8211; Revisiting</h2>
<p>Going back almost four years, I wrote <em><a title="writing complete requirements" href="http://tynerblain.com/blog/2006/06/08/writing-complete-requirements/">Writing Complete Requirements</a></em>, as part of the <em><a title="The rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">Big Rules of Writing Requirements</a></em> series.  That article centered on two key ideas of requirements completeness.</p>
<ul>
<li>Data, not opinion, is the most important input into determining completeness.</li>
<li>There is no <em>absolute </em>way to determine the completeness of your requirements in advance.</li>
</ul>
<p>Completeness is best measured by market acceptance, so technically you can&#8217;t know if your requirements were complete until your customers buy (or fail to buy) your product.  This doesn&#8217;t mean you should give up on this <em>rule</em> of requirements &#8211; you can still focus on, and improve, the completeness of your requirements.</p>
<h2>Objective and Heuristic Assessment</h2>
<p><img class="alignnone" title="raven" src="http://sehlhorst.smugmug.com/Other/blog/raven/795282939_wKV8c-O.jpg" alt="picture of raven with a blue eye" width="250" height="250" /></p>
<p>Given a market problem and the associated requirements (which you can argue are actually the same thing), you can review those requirements to determine if they objectively <em>appear to be</em> complete.  This assessment is based on what you objectively know about your market (needs, opportunity costs, competitive alternatives, etc).  You can also apply heuristic, or logical analysis to identify <em>gaps</em> in the language of your requirements.</p>
<p><strong>Objective assessment</strong> is the application of market knowledge (data) to determine if the nature of the problem is being addressed completely by your requirements.  A bird-feeding maven would know that the requirements for your bird feeder would be incomplete if they didn&#8217;t address the problem of squirrels stealing food from the birds.</p>
<p><strong>Heuristic analysis </strong>is the identifications of logical omissions in your requirements, without the need to apply market insights.  A logician would know that the requirements for your bird feeder were incomplete if they didn&#8217;t address the need to refill an empty feeder.</p>
<p>When you&#8217;re writing requirements, you need to do both.  Heuristic analysis of your requirements will identify where your requirements do not fully solve the problems you already know about &#8211; an eCommerce checkout process without the ability to receive payment, for example.  Objective assessment will help you identify the problems that you overlooked but need to solve &#8211; the need to allow customers to have different billing and shipping addresses when placing an order online, for example.</p>
<p><strong>Complete Requirements for Incomplete Solutions</strong></p>
<p><img class="alignnone" title="gummy worms" src="http://sehlhorst.smugmug.com/photos/415923338_gzWKd-L.jpg" alt="image of worms on the table - illustrating a metaphor" width="250" height="187" /></p>
<p>Don&#8217;t confuse having complete <em>requirements</em> (a good thing) with completely solving a problem (not always a good thing).  In agile development, the idea of <a title="satisficing with sprints" href="http://tynerblain.com/blog/2008/11/12/satisficing-sprints/">satisficing is key to scoping individual iterations</a>.  The idea, simply put, is to solve <em>enough of the problem</em>, and not delay delivery (and value) until you can build a solution to the entire problem.  Because of the law of diminishing returns, for many market problems, there is little or no incremental value in solving the entire problem.  Those resources can be better applied to solving additional problems.</p>
<p><a title="kano analysis webinar" href="http://tynerblain.com/blog/2009/09/28/kano-analysis-for-product-managers/">Kano analysis</a> provides a framework for identifying which market problems <em>must be</em> completely solved, and which ones have a <em>more is better</em> characteristic.  In practice, <em>more is better</em> problems exhibit the law of diminishing returns, and should not be &#8220;completely&#8221; solved.</p>
<p><img class="alignnone" title="kano analysis - more is better" src="http://sehlhorst.smugmug.com/Other/blog/more-is-bettersmall/795296523_Y2haG-O.png" alt="diminishing returns nature of real world features" width="450" height="336" /> [<a title="kano analysis - more is better" href="http://sehlhorst.smugmug.com/Other/blog/more-is-betterbig/795296527_3Y9YM-O.png">larger image</a>, or view the entire <a title="Kano Analysis for Product Managers" href="http://tynerblain.com/blog/2009/09/28/kano-analysis-for-product-managers/">Kano analysis presentation</a>]</p>
<h2>Conclusion</h2>
<p>Complete Requirements are requirements that</p>
<ul>
<li>Identify all of the market problems that need to be solved and their nature (absolute vs. diminishing returns).</li>
<li>Are logically complete in their coverage / articulation of those market needs.</li>
</ul>
<p>To objectively improve the completeness of your requirements, apply market data in an assessment of your requirements.  To heuristically improve the completeness of your requirements, look for logical inconsistencies and gaps in reasoning or coverage.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Complete+Requirements+http://bit.ly/cgxzsL+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/02/23/complete-requirements/&amp;t=Complete+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/02/23/complete-requirements/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Most Engaging Articles of 2009</title>
		<link>http://tynerblain.com/blog/2010/01/05/most-engaging-articles-of-2009/</link>
		<comments>http://tynerblain.com/blog/2010/01/05/most-engaging-articles-of-2009/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 07:00:18 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Administrivia]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Prioritization]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[Requirements gathering]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[Use Cases]]></category>
		<category><![CDATA[2009]]></category>
		<category><![CDATA[top ten list]]></category>
		<category><![CDATA[tyner blain]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1161</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F01%2F05%2Fmost-engaging-articles-of-2009%2F", "style": "big", "title": "Most Engaging Articles of 2009" });

Engagement &#8211; that&#8217;s what this whole product management blogging thing is about.  Check out what Tyner Blain readers found to be the most engaging articles in 2009.
Deep Dives

If you&#8217;re new to Tyner Blain, you may be surprised by the length of the articles here. [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2010%252F01%252F05%252Fmost-engaging-articles-of-2009%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Most%20Engaging%20Articles%20of%202009%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2010%2F01%2F05%2Fmost-engaging-articles-of-2009%2F", "style": "big", "title": "Most Engaging Articles of 2009" });</script></div>
<p><img class="alignnone" title="engagement" src="http://sehlhorst.smugmug.com/Other/blog/engagement-ring/757754045_4RPCx-O.jpg" alt="" width="250" height="190" /></p>
<p>Engagement &#8211; that&#8217;s what this whole product management blogging thing is about.  Check out what Tyner Blain readers found to be the most engaging articles in 2009.</p>
<h2><span id="more-1161"></span>Deep Dives</h2>
<p><img class="alignnone" title="diving deep" src="http://sehlhorst.smugmug.com/Other/blog/diving/757757107_gNAMt-O.jpg" alt="" width="250" height="187" /></p>
<p>If you&#8217;re new to Tyner Blain, you may be surprised by the length of the articles here.  I joke that they are long because I don&#8217;t have time to edit.  <a title="Stewart on Twitter" href="http://twitter.com/stewartrogers">Stewart Rogers</a> jokes that they are long because I&#8217;m incapable of writing a short article.  If you&#8217;ve been here a while, you know what you&#8217;re in for.  If you&#8217;ve been here a <em>long</em> while, then you&#8217;re glad (like me) that I don&#8217;t write one per day any more.</p>
<p>Product Management is simultaneously a broad and deep discipline, requiring us to have a breadth of perspective combined with a depth of insight.  We then have to apply that in a market context, effectively navigating the political waters of our organizations.  Most of the articles here either try to skim the breadth of a range of related topics, or plumb the depths of a single topic.  Doing that in under a thousand words is pretty hard.  Most of the articles here also link to other articles, to try and provide even more depth and context, and encourage additional critical thinking.</p>
<p>One measure of the<em> quality</em> of the articles here is how often they stimulate readers to read further, or dive deeper into the topics.  While web analytics won&#8217;t allow us to measure how thought-provoking an article is, we can look to see how many people dive into the linked articles, versus how many people move on to something else.  We can measure the <em>bounce rate</em> of an article to see how often people leave a page without following any of the &#8220;tell me more&#8221; links.</p>
<p>Looking at ~170,000 page views at Tyner Blain in 2009, narrowed down to only those articles with at least 100 page views, here is the top-ten list of most engaging (or &#8220;least abandoned&#8221; if you&#8217;re a &#8220;cup is half empty&#8221; person) articles:</p>
<ol>
<li><a title="Introduction to a series of articles on use cases" href="http://tynerblain.com/blog/2005/12/18/use-case-series-introduction/">Use Case Series: Introduction</a>: A collection of articles on the &#8220;traditional&#8221; forms of use cases &#8211; informal, formal, UML.</li>
<li><a title="agile development of use cases" href="http://tynerblain.com/blog/2007/04/02/agile-development-of-use-cases/">Agile Development of Use Cases</a>: A dive into the dynamics and cadence of an agile process for developing use cases.</li>
<li><a title="Managing Market Data" href="http://tynerblain.com/blog/2008/08/19/managing-market-data/">How Do </a><em><a title="Managing Market Data" href="http://tynerblain.com/blog/2008/08/19/managing-market-data/">You</a></em><a title="Managing Market Data" href="http://tynerblain.com/blog/2008/08/19/managing-market-data/"> Manage Market Data?</a>: A collection of articles exploring different market-immersion techniques in depth.</li>
<li><a title="Scheduling Requirements Changes" href="http://tynerblain.com/blog/2006/04/11/scheduling-requirements-changes-part-2/">Scheduling Requirements Changes &#8211; Part 2</a>: A focus on practical techniques for managing change with an agile development process.</li>
<li><a title="BPMN Mea Culpa" href="http://tynerblain.com/blog/2006/08/22/yesterdays-bpmn-post-was-a-big-fat-lie/">Yesterday&#8217;s BPMN Post Was A Big Fat Lie</a>: A mea culpa and clarification of interest to folks following the <a title="Introduction to BPMN" href="http://tynerblain.com/blog/2006/07/18/foundation-series-business-process-modeling/">BPMN</a> Series.</li>
<li><a title="why ask why?" href="http://tynerblain.com/blog/2005/12/13/everything-i-needed-to-know-i-forgot-in-kindergarden/">Everything I Needed To Know I Forgot in Kindergarten</a>: Why asking <em>why?</em> is important.</li>
<li><a title="Plan Your Sprint by ROI" href="http://tynerblain.com/blog/2008/10/16/planning-sprints-by-roi/">Plan Your Next Sprint by ROI &#8211; Part 1</a>: Prioritizing by <em>Bang for the Buck</em>, not just <em>Bang</em>.</li>
<li><a title="10 Agile Mistakes" href="http://tynerblain.com/blog/2007/01/03/going-agile-ten-common-mistakes/">Ten Common Mistakes of Going Agile</a>: A collection of articles about common pitfalls encountered when adopting agile practices.</li>
<li><a title="Never Completing a Project" href="http://tynerblain.com/blog/2007/08/06/perpetually-almost-finished-projects/">Perpetually </a><em><a title="Never Completing a Project" href="http://tynerblain.com/blog/2007/08/06/perpetually-almost-finished-projects/">Almost</a></em><a title="Never Completing a Project" href="http://tynerblain.com/blog/2007/08/06/perpetually-almost-finished-projects/"> Finished Projects</a>: Organizing a project with discrete deliverables and rolling-wave planning to avoid the &#8220;90% done, 90% remaining&#8221; problem.</li>
<li><a title="Timeboxes are better than the Iron Triangle" href="http://tynerblain.com/blog/2006/04/12/how-to-use-timeboxes-for-scheduling-software-delivery/">How To Use Timeboxes for Scheduling Software Delivery</a>: One of my personal favorites.  A rational approach to making trade-offs when your &#8220;perfect&#8221; plan has to change.</li>
</ol>
<p>OK Stewart, that&#8217;s only 519 words.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Most+Engaging+Articles+of+2009+http://bit.ly/6vlxog+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/01/05/most-engaging-articles-of-2009/&amp;t=Most+Engaging+Articles+of+2009" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/01/05/most-engaging-articles-of-2009/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Why Cross-Selling Works</title>
		<link>http://tynerblain.com/blog/2009/12/16/why-cross-selling-works/</link>
		<comments>http://tynerblain.com/blog/2009/12/16/why-cross-selling-works/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 02:24:29 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[eCommerce]]></category>
		<category><![CDATA[cross-sale]]></category>
		<category><![CDATA[cross-selling]]></category>
		<category><![CDATA[ecommerce product management]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1156</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F12%2F16%2Fwhy-cross-selling-works%2F", "style": "big", "title": "Why Cross-Selling Works" });

Why does cross-selling, the process of selling something additional to someone who is already making a purchase, work?  This article explores some of the theory and rationale behind cross-selling &#8211; from qualification to motivation and profitability.
Cross-Selling is Big Business
You have an eCommerce site where people purchase [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F12%252F16%252Fwhy-cross-selling-works%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Why%20Cross-Selling%20Works%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F12%2F16%2Fwhy-cross-selling-works%2F", "style": "big", "title": "Why Cross-Selling Works" });</script></div>
<p><img class="alignnone" title="would you like fries with that?" src="http://sehlhorst.smugmug.com/Other/blog/fries/742431144_baaQK-O.jpg" alt="" width="250" height="187" /></p>
<p>Why does cross-selling, the process of selling something <em>additional</em> to someone who is already making a purchase, work?  This article explores some of the theory and rationale behind cross-selling &#8211; from qualification to motivation and profitability.</p>
<h2><span id="more-1156"></span>Cross-Selling is Big Business</h2>
<p>You have an eCommerce site where people purchase products from you.  Adding <a title="What is cross-selling?" href="http://tynerblain.com/blog/2009/10/28/cross-sell-and-upsell/">cross-sale capabilities</a> to your site can have a significant impact on your bottom line.</p>
<p>The<a title="etailing group 1Q2009 report" href="http://www.internetretailer.com/article.asp?id=30618"> e-tailing group&#8217;s 2009 report</a> shows (by survey of eCommerce executives) that 55% of online retailers will include cross-sell and upsell capabilities in their sites in 2009 (already there or being added).  For retailers that measure the data, cross-sale promotions result in a range of conversions (additional sales) from under 1% to over 10% &#8211; with a plurality of responses in the 1% to 4% range.  That represents additional revenue the retailers would not get without using cross-selling.</p>
<p>According to the<a title="cross-sales results" href="http://www.getelastic.com/measuring-cross-sell-success/"> Get Elastic blog</a>, Amazon reported that cross-selling accounted for 35% of their 2006 revenue.</p>
<p>Understanding why cross-selling works requires understanding customer&#8217;s purchasing processes work.</p>
<h2>Customer Purchase Process</h2>
<p>The following is a model for how customers make purchases.</p>
<ul>
<li>Customers start by thinking about <em>their</em> problem &#8211; what problem are they trying to solve (with a purchase)?</li>
<li>Some people will try and understand the problem <em>space</em>, while others are happy to jump to solutions.</li>
<li>Understanding the solution space (what are my options?) is next &#8211; and may be a shallow or deep analysis.</li>
<li>Within the solution space, customers will select a product and decide to buy it (from you) or not.</li>
<li>Customers who reject their first product choice may select another product or may abandon your store.</li>
</ul>
<p><img class="alignnone" title="customer purchase process" src="http://sehlhorst.smugmug.com/Other/blog/flow/742441880_YbcQr-O.png" alt="" width="337" height="772" /></p>
<p>You can take a higher-level view of these customer activities and decisions, and categorize them into areas:</p>
<ul>
<li><strong>Learning </strong>- Your customer is learning about her problem and possible solutions.</li>
<li><strong>Choosing </strong>- Your customer is comparing possible solutions, with the <em>intent</em> to purchase one of them.</li>
<li><strong>Buying </strong>- Your customer has selected a solution, and is trying to buy it.</li>
</ul>
<p><img class="alignnone" title="customer decision process" src="http://sehlhorst.smugmug.com/Other/blog/LCB-process/742441872_ufKm7-O.png" alt="" width="401" height="785" /></p>
<h2>Customer Qualification</h2>
<p>In direct sales, one of the first steps a sales rep will take is to <em>qualify</em> a prospective customer &#8211; how likely is this prospect to make a purchase?  A similar model can be applied, when treating your website as a sales rep, to understand how likely it is that a visitor to your website will make a purchase.  There is a <em>ton</em> of additional qualification (assessing a prospect&#8217;s ability to pay, for example) that we won&#8217;t talk about in this article.  In this article, we&#8217;ll focus just on this simplified purchasing model:</p>
<ul>
<li>Customers who are <em>learning</em> are more likely to buy than visitors who are browsing (window shopping).</li>
<li>Customers who are <em>choosing</em> are more likely to buy than customers who are learning.</li>
<li>Customers who are <em>buying</em> are more likely to buy than customers who are choosing.</li>
</ul>
<p>That last bullet seems silly &#8211; of course customers who are <em>buying</em> are more likely to buy &#8211; like 100% likely, right?</p>
<p>Wrong.</p>
<p>Prospective customers <em>abandon</em> the buying process all of the time.  <a title="shopping cart abandonment" href="http://websiteconversion.blogspot.com/2009/12/analysis-how-shopping-cart-abandonment.html">SeeWhy reported ~70% abandonment rates</a> during 2009&#8217;s post-Thanksgiving online shopping spree.  They also used the phrase &#8220;a relatively healthy 63%&#8221; to describe abandonment rates in August 2009.  SeeWhy is specifically measuring abandonment of the shopping cart (inside the &#8220;buying&#8221; area), but there is abandonment (often called leakage) throughout the process above.</p>
<p><strong>The further a customer is into</strong><em><strong> </strong></em><strong>the purchase process, the more likely they are to actually make that purchase.</strong></p>
<h2>Clearing Hurdles</h2>
<p>As a customer moves through the purchase process, they are clearing hurdles that would prevent them from making the purchase.  Each time they clear a hurdle, the pending &#8220;mental cost&#8221; of making the purchase gets smaller.</p>
<p>One of the hurdles is making a decision to purchase <em>now</em>, another is making the decision to purchase <em>from you</em>.</p>
<p>Offering cross-sale promotions to customers who have already (probably) decided to purchase from you, now, means that you&#8217;re offering the promotions to customers who are <em>qualified</em>.</p>
<h2>Relevance</h2>
<p>A defining element of a <em>cross-sale</em> is relevance.  You&#8217;ve got a customer who is purchasing a product, to solve her problem.  You want to increase the value of the transaction &#8211; both for your customer and for yourself.  To do that, you have to offer a <em>relevant</em> cross-sale item.  Selling french fries with a sandwich makes sense.  Selling car wax with a new car makes sense.</p>
<p>Selling car wax with a sandwich?  You probably won&#8217;t have a lot of success with that.</p>
<p>How do you determine relevance?  You can start out with an &#8220;expert opinion&#8221; &#8211; car wax is relevant to cars, for example.  Or you can do some data mining of past orders &#8211; &#8220;7% of people who bought cars also bought car wax.&#8221;  That lets you start out with a hypothesis (that car wax is a <em>relevant</em> cross-sell item for purchasers of cars).  If you&#8217;re data mining past orders, however, you may not know the direction of the cross-sell.  Cross-selling works because the two products are <a title="complementary goods explained" href="http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/">complementary goods &#8211; usually asymmetric complements</a>.</p>
<blockquote><p>Complementary goods are rarely symmetrical.  Peanut butter and jelly is a good example of symmetric complements – they have comparable price points, and both <em>generally</em> can be improved by purchase of the other.  In the mixer-cookbook example above, the cookbook is a great complement product for the mixer.</p>
<p>However, if your customer had selected the book initially, the encouragement to “add a stand mixer” would fall on deaf ears.</p>
<p><cite><a title="Intro to product substitution and complementary products" href="http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/">Foundation Series: Substitutes and Complements</a></cite></p></blockquote>
<p>You can measure behavior on your site to determine the nature of the complementary goods relationship.  For the orders that include two particular products (that are offered as cross-sale promotions for each other), in what percentage of orders with both products was each product selected first?  Alternately, what is the conversion % of product A when added to a transaction for product B, versus the conversion % for product B when added to a transaction for product A.</p>
<h2>Measurement of Cross Selling</h2>
<p>The obvious metric that most people think of when evaluating cross-sale promotion effectiveness is conversion rate.  Conversion rate identifies the percentage of people who, when buying the &#8220;original&#8221; product, choose to also buy the &#8220;promoted&#8221; product.  Making changes that raise your conversion rate increase your sales of the promoted product.  However, this conversion ratio is more a reflection of the <em>relevance</em> of the promoted product to the original product than it is a measure of profitability.</p>
<p>Your goal is to maximize profitability, while providing additional value to customers (who are better off or more satisfied with the original purchase when they also purchase the promoted item).</p>
<p>Introducing a cross-sale promotion can increase, decrease, or have no effect on the rate of purchase (conversion percentage) of the original product.  You need to measure the original-product conversion rate for customers who were shown the cross-selling promotion versus those that were not.</p>
<p>Second, you&#8217;ll want to know what the <em>ideal</em> products to promote are.  Typically, more than one cross-sale promotion is presented to a customer at a time.  For this example, assume 3 promotions are displayed.  Also assume that your data-mining exercise has identified 5 products that <em>could be</em> promoted as cross-selling items for this &#8220;original&#8221; product.  Which three of the five do you select?</p>
<p>You should select the three that you expect to be the most profitable.</p>
<p>&#8220;Most profitable&#8221; can be calculated as (profit per promoted item) x (conversion % &#8211; of the promoted item in the context of the original item).  When you don&#8217;t have conversion percentage data, you can either gather it (through testing) or predict it (through modeling).  There are many aproaches for predicting the degree of affinity, or implied relevance, of one product to another &#8211; but all of them are too detailed to cover in a blog article.  When you don&#8217;t have a model, you can test the possibilities to see which ones perform the best.</p>
<p>Some companies also report average order value (AOV), but that&#8217;s not necessarily an indicator of profitability.  It may be a component of profitability, but not necessarily.</p>
<h2>Product Managing Cross-Selling</h2>
<p>If you&#8217;re product managing your website, and exploring adding cross-selling capabilities, or enhancing current capabilities, here are some things to keep in mind:</p>
<ul>
<li>Your customers are in the middle of a buying process, and will be interested only in complementary products that would give them a better purchase &#8211; more value, even if it means more money.  This drives both the importance of relevance and value as criteria for selection of products to promote.</li>
<li>There may not be any one person who is responsible for (rewarded for) the profitability of your cross-selling capabilities, as the complementary products being promoted may be &#8220;owned&#8221; by different parts of your organization.</li>
<li>You will want to test the effectiveness of the approach you use for promoting particular products &#8211; which original products, promoted products, and unique combinations of the two are the most profitable?</li>
<li>You will want to be able to test the effectiveness of changes in the presentation of promotions (images, page location, text, etc) on profitability (or on conversion percentage as an isolated variable.</li>
<li>You may want to offer discounts that apply only in the context of the cross-sale promotion (e.g. &#8220;Buy these together and save!&#8221;) and measure the impact on profitability &#8211; do the added sales offset the reduced profit per sale?</li>
<li>You may find that a given complementary product has a different degree of relevance (and therefore effectiveness) depending on the market segment to which you are promoting it.  As an example, a game controller may be more relevant to consumers buying a large computer monitor than small business owners buying the same monitor.</li>
</ul>
<h2>Conclusion</h2>
<p>Cross-selling works when you promote a relevant product that is complementary to the original product.  It works because the prospective customer is already in the process of purchasing the original product, and is therefore already <em>qualified</em>.  You should only promote products where the additional sale increases value to your customer and increases value to you.</p>
<p>Ultimately, cross-sale is about profitability.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Why+Cross-Selling+Works+http://bit.ly/5HC012+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/12/16/why-cross-selling-works/&amp;t=Why+Cross-Selling+Works" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/12/16/why-cross-selling-works/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Foundation Series: Substitutes and Complements</title>
		<link>http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/</link>
		<comments>http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 03:25:26 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[eCommerce]]></category>
		<category><![CDATA[complementary goods]]></category>
		<category><![CDATA[complementary products]]></category>
		<category><![CDATA[complimentary products]]></category>
		<category><![CDATA[substitute goods]]></category>
		<category><![CDATA[substitute products]]></category>
		<category><![CDATA[substitutes and complements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1146</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F12%2F07%2Fsubstitutes-and-complements%2F", "style": "big", "title": "Foundation Series: Substitutes and Complements" });

Do you know about substitute goods and complementary goods?  If you&#8217;re doing any eCommerce, and are thinking about cross-sell and upsell, you should understand the basics about substitutes and complements.

Substitutes

You&#8217;re considering purchasing a specific product (e.g. a blank compact disc from Memorex).  You could [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F12%252F07%252Fsubstitutes-and-complements%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Foundation%20Series%3A%20Substitutes%20and%20Complements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F12%2F07%2Fsubstitutes-and-complements%2F", "style": "big", "title": "Foundation Series: Substitutes and Complements" });</script></div>
<p><img class="alignnone" title="economics class" src="http://sehlhorst.smugmug.com/photos/50445724-M.jpg" alt="" width="250" height="195" /></p>
<p>Do you know about substitute goods and complementary goods?  If you&#8217;re doing any eCommerce, and are thinking about <a title="cross-sell and upsell explained" href="http://tynerblain.com/blog/2009/10/28/cross-sell-and-upsell/">cross-sell and upsell</a>, you should understand the basics about substitutes and complements.</p>
<p><span id="more-1146"></span></p>
<h2><strong>Substitutes</strong></h2>
<p><img class="alignnone" title="compact disc" src="http://sehlhorst.smugmug.com/Other/blog/compact-disc/734841847_rTnLp-O.jpg" alt="" width="250" height="172" /></p>
<p>You&#8217;re considering purchasing a specific product (e.g. a blank compact disc from Memorex).  You could consider purchasing an alternate product (e.g. a blank compact disc from TDK), <em>substituting </em> the alternative for the original.  At a high level, that&#8217;s the definition of a substitute good.  Any product that could be substituted for another product, and still satisfy the needs that the original product was intended to address.</p>
<h2>Complements</h2>
<p><img class="alignnone" title="peanut butter and jelly" src="http://sehlhorst.smugmug.com/Other/blog/peanut-butter-and-jelly/734822679_Sk463-O.jpg" alt="" width="250" height="235" /></p>
<p>You&#8217;re purchasing one product (e.g. a slice of bread with peanut butter).  The value you get from the original product would be increased by the purchase of a <em>complementary</em> product (e.g. a slice of bread spread with jelly).  The basic definition of complementary goods is &#8220;products that are purchased together.&#8221;</p>
<h2>Economic Models: Substitutes and Complements</h2>
<p>The definitions for <a title="substitute goods" href="http://en.wikipedia.org/wiki/Substitute_good">substitute products</a> and <a title="complementary goods" href="http://en.wikipedia.org/wiki/Complementary_good">complementary products </a>come from the world of micro-economics.  Substitutes and complements are used to model the interdependent nature of the changes of prices on the supply and demand of &#8220;related&#8221; products.</p>
<p>You can imagine a junior economist who tried a pricing experiment to determine the <a title="definition of price elasticity" href="http://tynerblain.com/blog/2009/06/01/price-elasticity/">price elasticity of demand</a> of Jif brand peanut butter.  He predicted that by raising prices on the peanut butter, that the store would sell less peanut butter.  Sure enough, demand (at the higher price) was lower, and sales dropped.</p>
<p>However, he also discovered that sales of Skippy brand peanut butter went up, almost by exactly the amount that Jif sales dropped.  This is because Jif and Skippy peanut butter are substitute products (economists call them &#8220;goods&#8221;).</p>
<p>Later on, this economist tried another experiment.  He raised the prices on both Jif and Skippy at the same time.  This time, the store sold less peanut butter in total (there were no other brands), and the economist thought his experiment was concluded.</p>
<p>Another surprise for the economist &#8211; sales of jelly dropped too.  Sales of peanut butter and of jelly are tied together &#8211; when you sell more of one, you sell more of the other.  Economists, trying to be difficult, would say that when you raise the price of one, the demand for the other falls.  Technically true, but a little confusing.</p>
<p>Thus entered substitute and complementary products into the world of economics and pricing.</p>
<h2>Substitutes and Upselling</h2>
<p><img class="alignnone" title="upselling substitute products" src="http://sehlhorst.smugmug.com/Other/blog/substitutes/734867201_TxWec-O.png" alt="" width="450" height="195" /></p>
<p>You know that you&#8217;re upselling &#8211; trying to replace one product that is about to be selected with an alternative product &#8211; when your customer is considering <em>substitute products</em>.  Notice in the screenshot from amazon.com (above) that ~9% of the people who were otherwise going to buy the original product instead were convinced to buy a more expensive <em>substitute</em> product.</p>
<p>The goal in upselling is to create a win-win situation.  Your customer gets more value from the substitute product, and you get more profit from the sale of the substitute than you would have received from the original.  Everyone wins.</p>
<h2>Complements and Cross-selling</h2>
<p><img class="alignnone" title="cross-selling books at amazon" src="http://sehlhorst.smugmug.com/Other/blog/cross-selling/734876643_jYoxQ-O.png" alt="" width="450" height="143" /></p>
<p>The number one mistake I see when people talk about cross-selling is they call it &#8220;upselling [sic].&#8221;  Its enough to make me Cranky. The example above, also from amazon.com, shows an encouragement, when purchasing the first book (in the series), to also purchase the second and third books. What&#8217;s especially clever is that there is no discount &#8211; the total price is the same as the sum of the prices if purchased individually.</p>
<p>You can take advantage of the complementary product model to create product bundles, identifying products that should be sold together.</p>
<p><img class="alignnone" title="peanut butter and jelly bundled together as Goober" src="http://sehlhorst.smugmug.com/Other/blog/bundling/734876624_aLWKa-O.png" alt="" width="227" height="289" /></p>
<p>Although that may not be the best idea.</p>
<p>Often, you will see bundles created by combining products that <em>do not</em> go well together &#8211; products that are not complements.  This is a sneaky way for companies to sell products that otherwise would not sell as well.</p>
<p><img class="alignnone" title="45rpm vinyl single record" src="http://sehlhorst.smugmug.com/Other/blog/45rpm/734913023_eWekH-O.jpg" alt="" width="300" height="297" /></p>
<p>The recording industry made money in the 1950s and 1960s selling singles.  The recording industry then made a lot more money selling albums that &#8220;bundled&#8221; 8 or 9 mediocre songs with one or two hits when compact discs hit the market.  Digital downloads have re-introduced the popular purchasing of singles, and revenues are declining &#8211; not because of piracy, but because a &#8220;take advantage of our customers&#8221; bundling practice is now broken.</p>
<p>Complementary goods should be used to create bundles that increase value for your customers.</p>
<p><img class="alignnone" title="complementary bundle" src="http://sehlhorst.smugmug.com/Other/blog/cross-selling2/734876609_h4v58-O.png" alt="" width="431" height="162" /></p>
<p>A baking cookbook is a good <em>complementary </em>product for a customer purchasing a stand-mixer (a key appliance for baking).</p>
<h2>Symmetric Substitutes and Asymmetric Complements in Context</h2>
<p>Substitute products are symmetric &#8211; either product works effectively as a substitute for the other &#8211; in a specific context.</p>
<p>If you need a new computer to use at your desk, then a desktop computer and a laptop are symmetric substitutes.  Regardless of which one is your <em>originally selected</em> product, the other is a valid alternative.  If however, you are looking for a computer that you can use while travelling, the desktop is not a valid alternative for the laptop (nor would it be your first choice).</p>
<p>When you&#8217;re considering the <em>travelling</em> scenario, the products are not substitutes.  Economists will say that they are substitutes<em> </em>as long as they share common uses.  But economists are looking at aggregated behavior.  You have to make decisions in context &#8211; and when the context implies that products are not substitutes, they <em>are not substitutes</em>.</p>
<p>Complementary goods are rarely symmetrical.  Peanut butter and jelly is a good example of symmetric complements &#8211; they have comparable price points, and both <em>generally</em> can be improved by purchase of the other.  In the mixer-cookbook example above, the cookbook is a great complement product for the mixer.</p>
<p><span style="background-color: #ffffff;">However, if your customer had selected the book initially, the encouragement to &#8220;add a stand mixer&#8221; would fall on deaf ears.  <span style="background-color: #ffffff;">Surprisingly, amazon.com still recommended adding a mixer to my book purchase.  Technically rated a &#8220;toss up&#8221; by GetElastic in their great <a title="cross-selling tips" href="http://www.getelastic.com/cross-selling-tips-ecommerce/">cross-selling do&#8217;s and don&#8217;ts article</a>, but I put it squarely in the <em>don&#8217;t</em> bucket (until measured and proven otherwise).</span></span></p>
<h2><span style="background-color: #ffffff;"><span style="background-color: #ffffff;">Summary</span></span></h2>
<ul>
<li>Complementary Products &#8211; consider cross-selling an additional product.  Complements are usually asymmetrical.</li>
<li>Substitute Products &#8211; an upsell is a suggestion to replace the original product with an alternative product.  Substitutes are symmetrical, but only in a context where both products address the relevant needs of your customer.</li>
</ul>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Foundation+Series%3A+Substitutes+and+Complements+http://bit.ly/6F9Nic+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/&amp;t=Foundation+Series%3A+Substitutes+and+Complements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Attainable Requirements</title>
		<link>http://tynerblain.com/blog/2009/11/30/attainable-requirements/</link>
		<comments>http://tynerblain.com/blog/2009/11/30/attainable-requirements/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 20:03:18 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Ishikawa Diagram]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[attainable requirements]]></category>
		<category><![CDATA[rules of requirements]]></category>
		<category><![CDATA[writing requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1138</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F11%2F30%2Fattainable-requirements%2F", "style": "big", "title": "Attainable Requirements" });

Unless you live in a world filled with unicorns and rainbows, writing realistic requirements is critical.  When you set unattainable goals, the best result you can hope for is a frustrated engineering team.  Write requirements that are attainable, and your team will surprise you with what they [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F11%252F30%252Fattainable-requirements%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Attainable%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F11%2F30%2Fattainable-requirements%2F", "style": "big", "title": "Attainable Requirements" });</script></div>
<p><img class="alignnone" title="attainable requirements logo" src="http://sehlhorst.smugmug.com/photos/128628575-M.png" alt="" width="250" height="250" /></p>
<p>Unless you live in a world filled with unicorns and rainbows, writing realistic requirements is critical.  When you set unattainable goals, the best result you can hope for is a frustrated engineering team.  Write requirements that are attainable, and your team will surprise you with what they can achieve.</p>
<h2><span id="more-1138"></span>Attainable Requirements &#8211; Revisiting</h2>
<p>A little over three years ago (ten unicorn years), I wrote <em><a title="writing attainable requirements" href="http://tynerblain.com/blog/2006/06/07/writing-attainable-requirements/">Writing Attainable Requirements</a></em>, as part of the <em><a title="The rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">Big Rules of Writing Requirements</a></em> series.  In that article, we focused on the unique situations that every team faces &#8211; politics and people, and the shared challenge of implicit practicality.  Those factors are as important today as they were then.</p>
<p><img class="alignnone" title="no unicorns" src="http://sehlhorst.smugmug.com/Other/blog/Wappenatlechaschau/727825581_cEP5G-O.png" alt="" width="166" height="192" /></p>
<h2>Defining <em>Attainable</em></h2>
<p>Attainability, for requirements, is simply the answer to the question &#8211; <em>can this be reasonably done</em>?  Most, but not all, of the answer to that question comes from understanding if your team can build and test a solution to the problem you identify with your requirement.  Being able to create a solution requires that the problem you&#8217;re solving is tractable, and that the team creating the solution has the skills to solve it.</p>
<p>Being able articulate a problem and it&#8217;s solution is necessary, but insufficient &#8211; solving the problem requires that there be a feasible solution.</p>
<p>As the founders of the agile development movement explained in their pitch for &#8220;low overhead&#8221; process &#8211; <em>people trump process</em>.  I think it was Alistair Cockburn who added, &#8220;but politics trumps people.&#8221;</p>
<p>Finally, process is the often-overlooked element of determining attainability.  Realizing the benefits of a novel solution to an existing problem usually involves process changes &#8211; sometimes significant ones.</p>
<p>The next few sections go into more detail on each of these &#8211; <strong>tractability, feasibility, people, and process</strong>.</p>
<h2>Tractability</h2>
<p><img class="alignnone" title="large black bear" src="http://sehlhorst.smugmug.com/Other/blog/Blackbearlarge-small/727836946_MFCx8-O.jpg" alt="" width="157" height="250" /></p>
<p>Goldilocks ruled out the <em>large</em> bed because it was <em>too</em> large.  <em>Eating the elephant, drinking from the fire-hose, boiling the ocean</em> &#8211; these are all common phrases in the American vernacular, because so many people try to do <em>too much </em>(at one time).  There are many ways to decompose a large, intractable problem into smaller, addressable components.  <span style="background-color: #ffffff; ">Practicality requires that the problem you&#8217;re trying to solve is not <em>too</em> large.</span></p>
<p>If everything you do is <em>small</em>, however, you won&#8217;t ever accomplish anything <em>big</em>.  That&#8217;s where<a title="strategic thinking" href="http://www.strategicproductmanager.com/2009/11/26/strategic-thinker/"> strategic product management</a> shines.  As part of understanding your market, you identify large, valuable problems to be solved.  To solve those large problems, you have to break them up into smaller problems, and then address them individually.  You also have to make sure your team understands the big picture and the larger problem that ultimately needs to be solved.  A great way to share context while decomposing problems is with the use of <a title="Ishikawa diagrams for problem decomposition" href="http://tynerblain.com/blog/2008/05/27/cause-and-effect-diagrams/">Ishikawa diagrams</a>.</p>
<p><img class="alignnone" title="simple ishikawa diagram" src="http://sehlhorst.smugmug.com/photos/302635390_W2GiV-O.jpg" alt="" width="450" height="269" /></p>
<p>And zooming in&#8230;</p>
<p><img class="alignnone" title="branch of an ishikawa diagram" src="http://sehlhorst.smugmug.com/photos/302640001_zmjrk-L.jpg" alt="" width="350" height="175" /></p>
<p>Maintaining <a title="providing context to agile teams" href="http://tynerblain.com/blog/2008/10/01/agile-product-management-providing-context/">context is a particularly critical component of working with agile teams</a>, where each deliverable&#8217;s possible size is constrained further to what a team can accomplish in an iteration.</p>
<blockquote><p><a href="http://photos.smugmug.com/photos/384746454_ASdyM-L.gif"><img title="market ishikawa" src="http://photos.smugmug.com/photos/384746439_MCSvi-L.gif" alt="" /></a>[<a title="market driven ishikawa" href="http://photos.smugmug.com/photos/384746454_ASdyM-L.gif">click for larger version</a>]</p>
<p>For some problems (and some teams!) this may be enough information to provide the context to develop a product backlog.  And your agile team will move forward into managing their own execution from the product backlog stage.  For larger or more complex problems (such as this example), you will need more detailed communication before diving into user stories / use cases.</p>
<p>The same Ishikawa diagram, with more detail, looks like the following:</p>
<p><a href="http://photos.smugmug.com/photos/384746511_Un8EL-L.gif"><img title="detailed market driven ishikawa" src="http://photos.smugmug.com/photos/384746482_NFmAJ-L.gif" alt="" /></a>[<a title="detailed market driven ishikawa" href="http://photos.smugmug.com/photos/384746511_Un8EL-L.gif">click for larger version</a>]</p>
<p><cite><a title="agile product management - providing context to teams" href="http://tynerblain.com/blog/2008/10/01/agile-product-management-providing-context/">Agile Product Management: Providing Context</a></cite></p></blockquote>
<p>This reduced granularity represents the smallest go-to-market <em>atomic</em> requirement.  Further decomposition results in smaller requirements, but they become too small, because they are no longer independently valuable.  I&#8217;m not talking about &#8220;the sum of the whole is greater than the sum of the parts&#8221; stuff here &#8211; I&#8217;m talking about &#8220;if you <em>only</em> get X, without Y and Z, it has no value&#8221; stuff.</p>
<h2>Feasibility</h2>
<p>Even after decomposing market problems into addressable chunks, you still have to make sure that there are feasible solutions.  One of the brighter software developers I worked with <em>back in the day</em> used to say &#8220;We&#8217;re writing software &#8211; it&#8217;s all ones and zeros &#8211; we <em>can do </em>anything.&#8221;  He also followed that up with &#8220;&#8230;but <em>should</em> we be doing <em>that</em>?&#8221;  The team I was working with at the time probably could do just about anything.  But not everything can be done with a given budget and a specific deadline.  Some things are simply infeasible.</p>
<p>Scrum teams measure <em>velocity</em> &#8211; a reflection of how much software they deliver in a given iteration, as a function of how much work they believe is involved in delivering.  This is a great &#8220;protected&#8221; measure of efficiency.  The team is protected from requests to do work that has little or no value &#8211; by measuring throughput in terms of effort, a team can get more efficient at doing more.  A requirement is infeasible, and therefore unattainable, when it exceeds what the team can accomplish given a fixed amount of capacity.  Project managers refer to this as the <em>Iron Triangle</em> &#8211; given scope, cost, and quality, pick any two as inputs and the third will be a variable output (absorbing the impact of uncertainty that arises during the development process).  I prefer to use <a title="scheduling software delivery with timeboxes" href="http://tynerblain.com/blog/2006/04/12/how-to-use-timeboxes-for-scheduling-software-delivery/">timeboxes </a>rather than that rusty old triangle, to emphasize my perspective that quality is inherent in delivery, and should not be a &#8220;variable output of uncertainty.&#8221;  Because quality is what usually bears the brunt of uncertainty.</p>
<p><img class="alignnone" title="fixed capacity" src="http://sehlhorst.smugmug.com/photos/64224627-M.png" alt="" width="223" height="128" /> plus <img class="alignnone" title="quality is inherent in delivery" src="http://sehlhorst.smugmug.com/photos/64224642-M.png" alt="" width="79" height="153" /> yields <img class="alignnone" title="filling a timebox with quality and capability" src="http://sehlhorst.smugmug.com/photos/64224630-M.png" alt="" width="223" height="154" /></p>
<p><span style="background-color: #ffffff; ">When the solution to a defined problem is prohibitively expensive, it is not attainable.  The notion of <a title="include both cost and value when prioritizing" href="http://tynerblain.com/blog/2007/07/31/prioritization-and-value-maximization/">cost should also be considered in the context of value</a>.  Requirements with higher value can justify implementing solutions with higher costs.</span></p>
<p>Prohibitively expensive solutions make requirements unattainable.  Relatively expensive (relative to their value) solutions also reflect unattainable requirements.  You need to collaborate with your implementation team to understand the costs associated with any particular requirement to know if it is attainable.  This is one of the strongest arguments against <em>throw-it-over-the-wall</em> interactions between product managers and implementation teams.  Without that feedback about feasibility and cost of a solution, you can&#8217;t assure that the requirements you are proposing are attainable.</p>
<p>Regular readers of Tyner Blain will realize that this is just an alternate way of stressing the<a title="prioritization and the ROI of requirements" href="http://tynerblain.com/blog/2007/02/07/prioritization-with-roi-and-utility/"> importance of considering ROI when defining requirements</a>.</p>
<h2>Politics</h2>
<p>There are political realities that every organization faces.  It could be a <em>benevolent dictator</em> CEO, or an executive with an agenda or pet project.  It may simply be that there is value in the problems you&#8217;ve identified, but solving them is not aligned with your corporate strategy.  You may be focusing on dominating an existing market, where expansion into new markets is the company&#8217;s focus &#8211; or vice versa.  You may be focusing on top-line growth opportunities, while the company is fixated on cost-reduction in a time of economic contraction.</p>
<p>Each of these scenarios causes you to be fighting an uphill battle internally.  When that hill is too steep, you&#8217;re writing unattainable requirements.</p>
<h2>Process</h2>
<p>When deciding what to build, you also have to think about how you launch.  Launching, as <a title="dave daniels launch clinic" href="http://pragmaticmarketing.typepad.com/launchclinic/">Dave Daniels regularly points out on his Launch Clinic blog</a>, is not just putting your product up on your website for sale.  You have to think organizationally about all of the other moving parts:</p>
<ul>
<li><span style="background-color: #ffffff;">Do your customers have the ability to absorb an update to your software?</span></li>
<li><span style="background-color: #ffffff;">Can your customer service reps be trained in time to promote and support the new capabilities?</span></li>
<li><span style="background-color: #ffffff;">Will your sales team be able to communicate a message that helps them close deals based on what you&#8217;ve just built?</span></li>
</ul>
<p>Process is more than just the process of typing, compiling, and testing code.  Process includes everything needed to successfully go to market and sustain your product.  If you&#8217;re defining requirements that are too far ahead of your market they are not attainable.  If your requirements embody process changes that are too difficult or expensive for your customers or your organization to absorb, your requirements are not attainable.</p>
<h2>Conclusion</h2>
<p>Attainable requirements are requirements that</p>
<ul>
<li><span style="background-color: #ffffff; ">Have a reasonable cost to implement,</span></li>
<li><span style="background-color: #ffffff; ">Are aligned with your company&#8217;s strategy and stakeholder&#8217;s agendas, and</span></li>
<li><span style="background-color: #ffffff; ">Result in solutions that can be consumed by your company and your customers.</span></li>
</ul>
<p>Make sure you&#8217;re writing <em>attainable</em> requirements.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Attainable+Requirements+http://bit.ly/8RT4vE+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/11/30/attainable-requirements/&amp;t=Attainable+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/11/30/attainable-requirements/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>SEO Product Management</title>
		<link>http://tynerblain.com/blog/2009/11/10/seo-product-management/</link>
		<comments>http://tynerblain.com/blog/2009/11/10/seo-product-management/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 15:36:36 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[eCommerce]]></category>
		<category><![CDATA[market segmentation and SEO]]></category>
		<category><![CDATA[search engine optimization]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[seo product management]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1119</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F11%2F10%2Fseo-product-management%2F", "style": "big", "title": "SEO Product Management" });

SEO, Search Engine Optimization, is an area that every online website needs to think about.  The idea is that the more traffic you can get to your website, the more products you&#8217;ll sell.  Just because you can lead a horse to water doesn&#8217;t mean you can [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F11%252F10%252Fseo-product-management%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22SEO%20Product%20Management%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F11%2F10%2Fseo-product-management%2F", "style": "big", "title": "SEO Product Management" });</script></div>
<p><img class="alignnone" title="leading a horse to water" src="http://sehlhorst.smugmug.com/Other/blog/lead-a-horse/708861348_QxDXY-O.jpg" alt="" width="250" height="187" /></p>
<p>SEO, Search Engine Optimization, is an area that every online website needs to think about.  The idea is that the more traffic you can get to your website, the more products you&#8217;ll sell.  Just because you can lead a horse to water doesn&#8217;t mean you can make him drink.  What a great opportunity to <a title="product managing a website" href="http://tynerblain.com/blog/2009/08/24/product-manage-your-website/">product manage your website</a> and ask <em>why</em> about SEO.</p>
<h2><span id="more-1119"></span>SEO</h2>
<p>When you&#8217;re building a website, you have four primary channels by which you get traffic (visitors) to your site:</p>
<p><img class="alignnone" title="website traffic sources" src="http://sehlhorst.smugmug.com/Other/blog/traffic-sources/709182606_zUYbV-O.png" alt="" width="301" height="125" /></p>
<ol>
<li><span style="background-color: #ffffff;"><strong>Direct Traffic</strong> &#8211; people who type in the URL (address) of a page on your website directly into their browser.</span></li>
<li><span style="background-color: #ffffff;"><strong>Referral Traffic</strong> &#8211; people who are sent to a URL on your website from another website (usually by clicking on a link).</span></li>
<li><span style="background-color: #ffffff;"><strong>Paid Search Traffic</strong> &#8211; people who click on an advertisement that you run (on other websites) to reach a URL on your site.</span></li>
<li><span style="background-color: #ffffff;"><strong>Organic Search Traffic</strong> &#8211; people who use a search engine (like Bing or Google) to try and find an answer to a question, who then click on a link to a URL on your website within the search engine results.</span></li>
</ol>
<p>[Note that the graph above combines #3 and #4 into one channel of traffic, as the source of about 1/3 of the traffic for this website.]</p>
<p>Search Engine Optimization, or SEO, is collectively the set of activities you do to increase (&#8220;optimize&#8221;) the amount of traffic you get from organic search (#4 above).  SEO has at best a second-order effect on the other three channels from which you may get traffic &#8211; they are effectively unaffected by your SEO activities.</p>
<p>There are entire companies, in fact an entire industry, built to help companies increase the traffic they get from &#8220;organic&#8221; search.  It is called &#8220;organic&#8221; search based on the premise that search engine algorithms will determine (through their own proprietary algorithms) the &#8220;best&#8221; results for any given search.  Like nature, this can be influenced by you, but is out of your control &#8211; hence &#8220;organic.&#8221;  This is in contrast to <em>paid</em> search, where you are directly controlling when someone comes to your site (by clicking on an advertisement that you paid for).</p>
<p>Since SEO is such a large topic, even though this is a longer article, it only scratches the surface.  This article focuses on the decision making you would do (and the measurements needed to support those decisions).  It does not attempt to be a one-stop-shop for all of your SEO needs.</p>
<h2>SEO Has ROI (or Does It?)</h2>
<p><img class="alignnone" title="full stadium" src="http://sehlhorst.smugmug.com/Other/blog/stadium-full/709186755_SPcBk-O.jpg" alt="" width="250" height="163" /></p>
<p>People who promote their SEO services will tell you &#8211; <em>build it, and they will come</em>.  What you do with the traffic once it arrives is up to you &#8211; SEO just gets people to show up.  Makes for a good movie, but it doesn&#8217;t always work that way.  This is where product management can help.</p>
<p>You want <em>the right people</em> to show up, not just anyone.  In keeping with the baseball analogy, applied to the web: your website is the stadium.  The games are free.  Your SEO efforts get people to show up at the stadium.  But you&#8217;re not selling tickets.  The only way you make money is if people buy hot dogs or pennants or peanuts.  You have products for sale <em>at the stadium</em> and you want people <em>who will buy them</em> to show up.  You don&#8217;t get any value from just filling the seats.</p>
<p><img class="alignnone" title="empty baseball stadium" src="http://sehlhorst.smugmug.com/Other/blog/stadium-empty/709186760_GKJco-O.jpg" alt="" width="250" height="160" /></p>
<p><strong>If the people who show up don&#8217;t buy anything, it&#8217;s as worthless as if no one ever came in the first place.</strong></p>
<p>I&#8217;ve worked with a client in the past who had a project that successfully increased the number of visitors to one of their websites by over 30% for several months, resulting in almost no change in the amount of products they sold during that period.  An SEO-only person would say &#8220;hey, the people showed up, I did my job,&#8221; but a product manager is acutely aware that this was an exercise in futility.</p>
<p>Perhaps the people who showed up had no <em>intention</em> of buying anything.  That would be consistent with the data my client collected.  Perhaps something intrinsic to the website <em>prevented</em> the new visitors from purchasing (while allowing a consistent percentage of the previous visitors to continue making purchases).  To the best of my knowledge, the data needed to perform that <a title="root cause analysis of product failures" href="http://tynerblain.com/blog/2009/02/19/failure-to-launch/">root cause analysis</a> was not available.</p>
<p>When you&#8217;re<a title="product manage your website to convert visitors into customers" href="http://tynerblain.com/blog/2009/08/24/product-manage-your-website/"> product managing your website</a>, you are responsible not only for getting people to your website, but also for getting them to <em>convert</em> their presence into purchases.</p>
<h2>Measuring SEO &#8211; Easy Versus Important</h2>
<p>The challenge in any measurement activity is determining what to measure.  There always seem to be a bunch of things that are easy to measure, and a handful of things that are important to measure.  When you&#8217;re lucky, there&#8217;s some overlap.  The challenge is to resist the urge to measure stuff just because it is easy &#8211; you&#8217;re making work for yourself &#8211; both in taking the measurements and in reviewing the measurements.</p>
<p>To select the right measurements for your website, you first have to understand your goals.  Assume that your goal is to sell products, profitably.  This is the driver for your &#8220;bottom line measurements&#8221; &#8211; at the end of the day, how is your product (website) performing?  If you aren&#8217;t measuring revenue and profits, you won&#8217;t know if you&#8217;ve filled your stadium with &#8220;empty chairs&#8221; who don&#8217;t buy any peanuts.</p>
<p>You also have to understand the buying processes that users (website visitors) use to make purchases from you.  One way to characterize the buying process is to look at the process from the perspective of the user, who goes through the following stages of activity:</p>
<ol>
<li><strong>Identify a need</strong> to solve a problem (possibly by purchasing a product).</li>
<li><strong>Discover possible solutions</strong> to the identified problem (possibly products that solve the problem).</li>
<li><strong>Compare solutions</strong> (products) and decide which to implement (purchase).</li>
<li><strong>Solve the problem</strong> (purchase and use the product).</li>
<li><strong>Re-evaluate the solution </strong>(product).</li>
</ol>
<p>Step 2, <em>discover possible solutions</em>, is where SEO can help.  One way people can discover solutions (and there are <em>many</em> others) is by using a search engine to discover solutions.  Those people may search for phrases that describe their problem (&#8220;webcam not working with Skype&#8221;) or ask questions as if the search engine could solve their problem directly (&#8220;how do I make my webcam work with Skype?&#8221;).  Some people will determine (or assume) that the problem is with their webcam, and that they need a new one.  Those people will search for the solution they&#8217;ve already envisioned (&#8220;best webcam&#8221;), or combine steps 2 and 3, and search for comparison data (&#8220;webcam reviews&#8221;) or pricing data (&#8220;webcam deals&#8221;).</p>
<p>In addition to the goal-measurements (step 4), you&#8217;ll also want to include search-effectiveness measurements (step 2).  Keep in mind that there are other factors at play in your website &#8211; not every visitor who searches has a propensity to buy, visitors who arrive may abandon your site because they don&#8217;t like your pricing, etc.</p>
<h2>Measuring SEO Effectiveness</h2>
<p>Keep in mind that you&#8217;re trying to sell products (profitably), and this particular effort is focused on improving <em>organic search</em> as a mechanism by which you attract customers to which to sell products (profitably).  Your measurements should focus on these two aspects.  Here are some things that are interesting to measure [note: the screenshots below are of <em>Tyner Blain</em> traffic - I won't share any client data - so these values are low compared to a successful eCommerce site - but they are illustrative.]:</p>
<p><strong>Organic Search Engine Traffic</strong></p>
<ul>
<li>How many visitors come to your site from search engines (and from which search engines?)?</li>
<li><img class="alignnone" title="search engines" src="http://sehlhorst.smugmug.com/Other/blog/search-engines/709222087_t4wPv-S.png" alt="" width="309" height="300" /></li>
<li>What are the keywords / phrases that visitors used to find your website?</li>
<li><img class="alignnone" title="keywords" src="http://sehlhorst.smugmug.com/Other/blog/keywords/709218617_pMzcx-O.png" alt="" width="333" height="323" /></li>
<li>To which pages did the search engines direct the most traffic?</li>
<li><img class="alignnone" title="landing pages" src="http://sehlhorst.smugmug.com/Other/blog/landing-pages/709220818_7YW83-S.png" alt="" width="400" height="283" /></li>
<li>What search terms sent traffic to which pages?</li>
<li><img class="alignnone" title="keywords vs landing pages" src="http://sehlhorst.smugmug.com/Other/blog/keyword-to-landing-page/709225444_LxMuZ-S.png" alt="" width="357" height="300" /></li>
<li>SERP Ranking (Search Engine Results Page Ranking) &#8211; How high up is your result for one of your targeted keywords?  Is it on the front page?</li>
<li><img class="alignnone" title="pert estimation ranking" src="http://sehlhorst.smugmug.com/Other/blog/pert-estimation/709234454_XJ7wN-O.png" alt="" width="250" height="206" /></li>
</ul>
<p>All of those measures, while easy to do (the screenshots above are from the free Google Analytics program), only tell you about how many people came to your stadium, they don&#8217;t give you any insight into peanut sales.  You can use these measurements to provide feedback as you make changes in your SEO implementation &#8211; to determine if each change increases or reduces <em>traffic</em> (or fills seats).</p>
<p><strong>You also need to know about the peanuts.</strong></p>
<p><img class="alignnone" title="peanuts" src="http://sehlhorst.smugmug.com/Other/blog/peanuts/709229231_XvHaX-O.jpg" alt="" width="250" height="161" /></p>
<p>The specific financial measurements you make will depend on your strategy for how you engage your market.  Are you a discounter, trying to maximize sales in the short term, with a transactional focus?  Are you focused on the long term, building relationships, and maximizing the lifetime value of customers (better to sell more, later, than less, now)?  Are you trying to gain market share, or maximize profits in a mature market?  The specific ways you measure will vary, but some common measurements are:</p>
<ul>
<li><strong>Conversion Percentage</strong> &#8211; how many of the people who come to your site end up purchasing (during that visit)?</li>
<li><strong>Number of Purchases</strong> &#8211; how many orders were placed?</li>
<li><strong>Average Order Value (AOV)</strong> &#8211; how much is each order &#8220;worth&#8221; in both revenue and profit?</li>
<li><strong>Lifetime Customer Value </strong>- how much is each customer &#8220;worth&#8221; in both revenue and profit?</li>
</ul>
<p>The way you get real insights from these measurements is by combining them.  Utilize the &#8220;SEO mechanics&#8221; measurements (above the peanuts) to slice or segment the financial measurements.  Ask questions like &#8220;How many orders were placed by people who came to the site and landed on the webcam page?&#8221; or &#8220;What is the conversion percentage for people who came to the site by searching for <em>best webcam</em>?&#8221; or &#8220;How much revenue do we get from each keyword that sends organic traffic to our site?&#8221;</p>
<h2>SEO Goals &#8211; Getting Actionable</h2>
<p>Combining the results of the two forms of measurement (mechanics vs. revenue) will identify for you where you are getting the most value, and where you have the most opportunity to increase value.  You&#8217;ll have to do analyses of &#8220;do I make one thing (page, keyword, etc) better, or do I try and make all things better?&#8221;</p>
<p>One technique that can help you reach those decisions is by noticing that most of the metrics you see follow power law (long tail) curves.  Roughly speaking, 80% of your traffic will come from 20% of your keywords.  80% of your sales may be to 20% of your customers.  20% of your pages may generate 80% of your visits (or 80% of your revenue).  You&#8217;ll have to &#8220;do the math&#8221; for each project to estimate the impact of those projects &#8211; and determine if your best bet is to improve a single page (a lot), or make a change to your site that improves all of the pages (a little).</p>
<p>You may find that your website is not sufficiently instrumented to make the measurements you need.  My suggestion is to instrument your website first, and then try and improve it second.  If you can&#8217;t measure it, it didn&#8217;t happen.</p>
<p>The current &#8220;state of the industry&#8221; for SEO has a hint of product management influence in it already &#8211; there&#8217;s some awareness that these sorts of aggregate statistics are limited in their ability to give you insight about your customers.  Where SEO seems to be pushing today is in being able to segment the above data views against <a title="how to create personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">personas </a>or <a title="market segmentation" href="http://tynerblain.com/blog/2008/09/15/market-segmentation-example/">market segments</a>.  This looks to me like an industry that is maturing beyond the <a title="elastic users" href="http://tynerblain.com/blog/2007/07/23/elastic-users/">elastic user problem</a> that software development and <a title="different user experience professions" href="http://tynerblain.com/blog/2006/03/03/foundation-series-user-experience-disciplines/">user experience</a> teams have been addressing for years.  This approach will allow you to target your website development initiatives with an eye on the uniqueness of customers in <a title="prioritization by market segment" href="http://tynerblain.com/blog/2008/04/09/improved-prioritization/">different market segments</a>.</p>
<h2>SEO Product Management Conclusion</h2>
<p>Search engine optimization is important.  Focusing your efforts to improve your business, as it relates to search engines, is what is really important &#8211; and search engine optimization is how you get there.  Discover the factors that have a bottom line impact, and then execute to address them.  Don&#8217;t just assume that more traffic is better traffic.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+SEO+Product+Management+http://bit.ly/34dUZE+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/11/10/seo-product-management/&amp;t=SEO+Product+Management" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/11/10/seo-product-management/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Design-Free Requirements</title>
		<link>http://tynerblain.com/blog/2009/11/03/design-free-requirements/</link>
		<comments>http://tynerblain.com/blog/2009/11/03/design-free-requirements/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 16:16:06 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Use Cases]]></category>
		<category><![CDATA[User Stories]]></category>
		<category><![CDATA[big ten rules]]></category>
		<category><![CDATA[product management and design]]></category>
		<category><![CDATA[rules of requirements]]></category>
		<category><![CDATA[rules of writing requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1106</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F11%2F03%2Fdesign-free-requirements%2F", "style": "big", "title": "Design-Free Requirements" });

Design-Free requirements are important for two reasons, and hard for two other reasons.
Design-free requirements are hard because you &#8220;know what you want&#8221; when you should be documenting &#8220;why you want it.&#8221;  Writing design-free requirements can be hard when you don&#8217;t trust your development team to &#8220;do the [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F11%252F03%252Fdesign-free-requirements%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Design-Free%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F11%2F03%2Fdesign-free-requirements%2F", "style": "big", "title": "Design-Free Requirements" });</script></div>
<p><img class="alignnone" title="Design-Free Requirements Logo" src="http://sehlhorst.smugmug.com/photos/128628560-M.png" alt="" width="250" height="250" /></p>
<p>Design-Free requirements are important for two reasons, and hard for two other reasons.</p>
<p>Design-free requirements are hard because you &#8220;know what you want&#8221; when you should be documenting &#8220;why you want it.&#8221;  Writing design-free requirements can be hard when you don&#8217;t trust your development team to &#8220;do the right thing&#8221; even though it is not your job to design the solution.</p>
<h2><span id="more-1106"></span>Design-Free Requirements &#8211; Revisiting</h2>
<p><img class="alignnone" title="alphabet soup" src="http://sehlhorst.smugmug.com/photos/89784885-M.jpg" alt="" width="250" height="187" /></p>
<p>It has been three years since I wrote <em><a title="Separating Requirements from Design" href="http://tynerblain.com/blog/2006/06/02/writing-design-free-requirements/">Writing Design-Free Requirements</a></em> as part of <em><a title="The rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">The Big Ten Rules of Writing Requirements</a></em>.  In that time, agile development practices have moved from being an esoteric development methodology to being the topic on the tips of everyone&#8217;s tongues as executives and organizations try to either (1) get the benefits of the state of the art in software-development process or (2) do something shiny and fashionable.</p>
<p>The previous article centered on elements of designs within MRD, PRD, and SRS artifacts.  A regular <a title="Alphabet Soup of Requirements Artifacts" href="http://tynerblain.com/blog/2006/08/24/alphabet-soup/">alphabet soup of artifacts</a>.  Honoring the <a title="agile manifesto - Alistair Cockburn speaks" href="http://tynerblain.com/blog/2006/05/10/agile-values-alistair-cockburn-on-the-agile-manifesto/">values behind the agile manifesto</a> encourages us to emphasize <em>working software</em> over <em>comprehensive documentation</em>.  In that light, we&#8217;ll take a &#8220;what is needed&#8221; approach to talking about how requirements, design, and implementation are all needed &#8211; rather than issue an edict about where that information should be captured.</p>
<h2>Agile Development Inputs</h2>
<p><strong>When creating software, someone needs to know:</strong></p>
<ul>
<li>What <a title="solve problems, don't address problem manifestations" href="http://tynerblain.com/blog/2008/05/12/your-problem-statement/">problems are being solved</a>, and how important (valuable) they are to be solved.</li>
<li><a title="defining personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">Who has the problems</a> and who is using the software to (help) solve those problems.</li>
<li><a title="defining constraints" href="http://tynerblain.com/blog/2007/11/08/abilene-paradox/">What constraints limit the space</a> that defines the universe of possible viable solutions.</li>
<li>What <a title="nonfunctional requirements and acceptance criteria in agile" href="http://tynerblain.com/blog/2009/02/10/agile-non-functional-reqs/">acceptance criteria</a> define if the delivered solution will be acceptable.</li>
</ul>
<p><strong>Subject to those inputs, someone needs to make design decisions:</strong></p>
<ul>
<li>User experience design -<a title="user interaction design" href="http://tynerblain.com/blog/2006/03/07/interaction-design-explained-by-alan-cooper/"> what interactions</a> will a user of our solution love?</li>
<li>Program design &#8211; how (in a nuts and bolts way) will our solution <a title="feature-driven design explained" href="http://tynerblain.com/blog/2006/03/27/foundation-series-feature-driven-development-fdd-explained/">function</a>?</li>
</ul>
<p>When talking about agile and talking about design, we should take a look at how Kent Beck and Alan Cooper, as respective though leaders in each space, view this.</p>
<blockquote><p>Cooper doesn’t talk much about creating the requirements to support the daily use scenarios – he proposes moving directly into design of the solution. This differs from the more traditional technique of <a style="color: #0000aa; text-decoration: none; padding: 0px; margin: 0px;" title="Use cases are supported with functional requirements" href="http://tynerblain.com/blog/2006/02/10/writing-functional-requirements-to-support-use-cases/">writing functional requirements to support use cases</a>. Cooper also breaks down design into two components – program design and interaction design. Program design is everything you don’t see. Interaction design is everything you do see.</p>
<p>[...]</p>
<p>Cooper argues that designing the interaction should happen before any code is written. He uses a construction analogy to drive home his perspective – you can’t pour the concrete before you build the forms. Kent Beck, founder of the XP programming philosophy disagrees with the premise. Beck believes that the cost of changing software is low, and the imagery Cooper uses is hyperbole. We touch on, and <a style="color: #0000aa; text-decoration: none; padding: 0px; margin: 0px;" title="Cooper vs Beck" href="http://tynerblain.com/blog/2006/03/07/interaction-design-explained-by-alan-cooper/">link to that debate in this post</a>.</p>
<p><cite><a title="Overview of the interaction design process" href="http://tynerblain.com/blog/2006/03/21/interaction-design-process-overview/">Interaction Design Process Overview</a></cite></p></blockquote>
<p>I don&#8217;t believe that Beck is arguing for &#8220;don&#8217;t do design&#8221; &#8211; I believe he is arguing for &#8220;don&#8217;t do <em>big upfront design</em> that would delay implementation.&#8221;  He&#8217;s championing the agile values that emphasize creating working software and responding to change.  I can imagine him saying &#8220;no one will buy a design, they want a solution.&#8221;  Cooper&#8217;s point is that create a solution without first understanding how someone will use it, you can&#8217;t create a great product.</p>
<p>Program design has many <em>hidden</em> impacts &#8211; cost of maintenance, cost to change, and the performance of the solution.  You can have a design (or architecture) that makes everything easier to do in the future &#8211; at the cost of delaying the delivery of anything.  Or you can have a design that minimizes the time to deliver the first thing, while increasing the cost to deliver any particular next thing.  Or you can design a solution that falls somewhere between those extremes.</p>
<p>If you say &#8220;we don&#8217;t do design&#8221; you&#8217;re lying.  Every solution includes design.  Your team&#8217;s design process may be &#8220;big and upfront&#8221; or it could be a couple sketches on a whiteboard, or some email exchanges.  You may create storyboards and wireframes.  Or design may be the thing that happens right before the programmer&#8217;s fingers strike the keys.  Design may be explicit or it may be implicit &#8211; but it never &#8220;doesn&#8217;t happen.&#8221;</p>
<p>In the movie Amadeus, Salieri is astounded that there are no rough drafts of Mozart&#8217;s compositions.  That&#8217;s because Mozart did the design in his head, not because he didn&#8217;t do design.  I&#8217;ve worked with programmers who&#8217;s &#8220;implicit designs&#8221; were great, but that is the <em>exception</em>, not the rule.</p>
<h2>Who Owns Design?</h2>
<p>Since design happens <em>sometime before fingers strike the keyboard</em>, the real question is &#8211; &#8220;who owns the design?&#8221;</p>
<ul>
<li>You have a product manager developing an understanding of market problems, and prioritizing the problems that should be solved with your product.</li>
<li>You may have a product owner managing the backlog and clarifying those requirements (problems) for the development team.</li>
<li>You may have an interface (or interaction) designer or team of designers who are broadly responsible for &#8220;how users interact with our products.&#8221;</li>
<li>You may have an architect or lead engineer who is responsible for the &#8220;big picture design&#8221; of how your product works.</li>
<li>You have developers and testers who are responsible for delivering your product. [Note: coding without testing is like typing code without compiling - <em>maybe</em> it works, but probably not.]</li>
</ul>
<p>You may not have distinct individuals with each of these titles &#8211; every small team I&#8217;ve worked with has people wearing multiple hats.  This is especially true when you have an agile team full of <a title="specialized generalists and stagging an agile team" href="http://tynerblain.com/blog/2008/02/14/specializing-generalists/">specializing generalists</a> &#8211; any given story (or task) may have a different architect and different implementer.  I&#8217;ve only worked with one company where the architects are NOT part of the development team.  If your team is set up that way, please comment below &#8211; I had never seen that before, and I&#8217;m not convinced that it is the best way to organize &#8211; what have your experiences been?</p>
<p>Generally, &#8220;program design&#8221; is clearly owned by the development team &#8211; and product managers (and product owners) know better than to specify program design in their requirements.  Neither the lead engineer nor the product manager believes that the product manager is a <em>better</em> programmer &#8211; so the product manager better not be <a title="requirements versus design" href="http://tynerblain.com/blog/2006/02/11/requirements-vs-design-which-is-which-and-why/">specifying program design and mislabeling it as requirements</a>.  Coincidentally, Steve Johnson, at Pragmatic Marketing has a post running right now with a bit of a <a title="requirement or design?  a quiz" href="http://pragmaticmarketing.typepad.com/productmarketing/2009/11/lets-play-req-or-spec-duplicate-images.html">quiz &#8211; is this a req(uirment) or a spec (design)</a>?</p>
<p>Where the line is more blurred is around interface and/or interaction design.  Some development teams have interface designers as part of the team.  Some companies organize with interface design as a &#8220;shared service&#8221; within the company.  Either approach can be the &#8220;right one&#8221; &#8211; it depends on too many details to make a sweeping generalization.  When the designers are members of the development team, the solution (from a product management perspective) is the same &#8211; the &#8220;team&#8221; is responsible for all design.  When the designers are not part of the development team, the developers have to consume two sets of guidance &#8211; &#8220;solve this problem&#8221; from product management, and &#8220;the solution needs to look like / act like this&#8221; from the designers.</p>
<p><a title="ux and product management collaboration" href="http://tynerblain.com/blog/2007/03/05/product-management-and-ux/">Collaboration between product management and user experience</a> people is the ideal solution.  The &#8220;requirements&#8221; and &#8220;design&#8221; inputs to the development team are comprehensive and consistent.</p>
<h2>Design-Free Requirements</h2>
<p>There are benefits &#8211; especially when being agile and <em>minimizing</em> documentation &#8211; to delivering requirements and design <em>at the same time</em>.  Just don&#8217;t do it by embedding design constraints within the requirements.</p>
<ul>
<li>When people on your team misinterpret design as requirements, they are unnecessarily constrained.</li>
<li>As a product manager &#8211; are you the best designer on your team?  If you&#8217;re busy designing, who&#8217;s product managing?</li>
</ul>
<p>This is trickiest when writing use cases &#8211; sequencing a set of interactions <em>is</em> interaction design.  That is one benefit of<a title="user stories vs use cases" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/"> writing a user story instead of a use case</a>.  An approach that has worked well for me with multiple teams is to deliver user stories (requirements) combined with storyboards (interaction design) and wireframes (interface design).  When details are needed (usually when &#8220;changing&#8221; versus &#8220;creating&#8221; an interface), screenshots can replace wireframes.  When business processes are complicated, process flows can replace storyboards.</p>
<p>Just don&#8217;t embed the designs within the requirements.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Design-Free+Requirements+http://bit.ly/3BuFst+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/11/03/design-free-requirements/&amp;t=Design-Free+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/11/03/design-free-requirements/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Foundation Series: Cross-Selling and Upselling</title>
		<link>http://tynerblain.com/blog/2009/10/28/cross-sell-and-upsell/</link>
		<comments>http://tynerblain.com/blog/2009/10/28/cross-sell-and-upsell/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 04:40:20 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Foundation series]]></category>
		<category><![CDATA[eCommerce]]></category>
		<category><![CDATA[cross-sell]]></category>
		<category><![CDATA[crosssell]]></category>
		<category><![CDATA[up-sell]]></category>
		<category><![CDATA[upsell]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1099</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F10%2F28%2Fcross-sell-and-upsell%2F", "style": "big", "title": "Foundation Series: Cross-Selling and Upselling" });

You have an eCommerce site.  You sell products online.  Do you cross-sell additional products?  Do you upsell to better products?  This article explains the difference between cross-sell and upsell, and looks at some real-world data about the effectiveness of both.
Cross-Sell and Upsell &#8211; What [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F10%252F28%252Fcross-sell-and-upsell%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Foundation%20Series%3A%20Cross-Selling%20and%20Upselling%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F10%2F28%2Fcross-sell-and-upsell%2F", "style": "big", "title": "Foundation Series: Cross-Selling and Upselling" });</script></div>
<p><img class="alignnone" title="ecommerce classroom" src="http://sehlhorst.smugmug.com/photos/50445724-M.jpg" alt="" width="250" height="195" /></p>
<p>You have an eCommerce site.  You sell products online.  Do you cross-sell additional products?  Do you upsell to better products?  This article explains the difference between cross-sell and upsell, and looks at some real-world data about the effectiveness of both.</p>
<h2><span id="more-1099"></span>Cross-Sell and Upsell &#8211; What Are They?</h2>
<p>Cross-selling and upselling are marketing techniques that are applied during the sales process to increase the value of the transaction to both the buyer and the seller.  Technically, they only increase the value to the seller &#8211; but they <em>should</em> also be increasing the value to the buyer.</p>
<p>The key idea behind both cross-selling and upselling is that you are changing a transaction that is <em>already in process</em>.  You might think that marketing ends once buying begins.  Not so.  Marketing is about getting the right message (buy something from us) to the right person (someone who needs our products) at the right time (when they are ready to buy).</p>
<ul>
<li><em>What better time to market</em> than when someone is in the process of buying already?</li>
<li><em>Who better to market to</em> than someone who is in the process of buying from us?</li>
</ul>
<p>The trick then, is in sending the right marketing message.</p>
<p>Cross-selling and upselling only make sense in the context of an ongoing sales process.  For an eCommerce retailer (a company that sells a product online), that means that the customer (technically, the prospective customer, also known as a prospect) is in the process of making a purchase &#8211; either looking for the right product, evaluating a specific product, or having selected (but not yet purchased) a product.</p>
<ul>
<li><strong>Cross-selling</strong> is defined as selling an additional product when the customer is purchasing the original product.</li>
<li><strong>Upselling </strong>is defined as selling a more expensive product instead of the product that the customer was originally purchasing.</li>
</ul>
<p>As a retailer, you have to know when to attempt to cross-sell, and when to propose an upsell &#8211; and when to do both.  To decide when to try and modify (and risk losing) a sale, you have to look at the economic impact on your business of trying to change an ongoing sale.  Cross-selling does not help you make a sale that you wouldn&#8217;t already have made &#8211; although an upsell suggestion may help a customer discover a &#8220;better&#8221; product for their needs, and close a sale that would have been abandoned otherwise.</p>
<p>Note &#8211; to keep the language of this article easier to read, the word &#8220;product&#8221; is being used to represent (traditional) products and services &#8211; anything a business would sell.</p>
<h2>Economics of Selling</h2>
<p>To evaluate the economics of cross-selling, you have to first establish the economic measures of selling.  When you sell something you have the following:</p>
<ul>
<li><strong>Price </strong>- the price the customer pays for the product being purchased.  This is also known as revenue.</li>
<li><strong>Cost </strong>- the cost to the merchant to acquire or create the product being purchased.  Also known as &#8220;COGS&#8221; &#8211; an acronym for cost of goods sold.</li>
<li><strong>Gross Profit</strong> &#8211; the price paid by the customer minus the cost of the product.</li>
<li><strong>Cost of Sale</strong> &#8211; the cost the merchant incurs to make the sale.  For an individual transaction, this is called &#8220;cost per quote&#8221; or &#8220;cost per order&#8221; or &#8220;cost per sale.&#8221;</li>
<li><strong>Net Profit</strong> &#8211; the gross profit minus the cost per sale.  This is also known as operating income.</li>
</ul>
<p>As an online retailer, you will likely track all of the above.  Your <em>Cost of Sale</em> is potentially difficult to measure &#8211; you will probably have a mixture of <a title="how to measure costs" href="http://tynerblain.com/blog/2007/02/05/calculating-roi-and-measuring-costs/">variable costs and fixed costs</a> that can be allocated to the cost of sales.</p>
<ul>
<li>If you pay $1,000 per month to host your eCommerce website (making sales possible) and you make 1,000 sales per month, you could allocate $1 per sale as a cost per sale.</li>
<li>If you pay 2.5% of the price collected to a credit card processing service, and you sold a product for $100, you would incur a $2.50 cost per sale for that transaction.</li>
</ul>
<p>A financial analysis of your business will involve aggregating all of the revenue and costs, and calculating the total operating income (all revenue minus all costs) for a period of time.  Since you sell different products (with different costs) at different prices, any given transaction will have a different net profit.  As part of managing your sales and pricing, you may also measure</p>
<ul>
<li><strong>Average Revenue per Order </strong>- 100 orders for a total $1,500 in revenue would yield and average revenue per order of $15.  Calculated as Revenue / Number of Orders &#8211; in this example $1,500/100 = $15.</li>
<li><strong>Average Gross Profit per Order</strong> &#8211; 100 orders at $1,500 in revenue with $1,100 in COGS would yield an average gross profit of $4 per order.  Calculated as (Total Revenue &#8211; Total COGS)/Number of Orders &#8211; in this example ($1,500 &#8211; $1,100)/100 = $4.</li>
<li><strong>Gross Profit Margin (Percentage)</strong>- a product purchased for $100 for which the retailer paid $60 to acquire the product has a gross profit margin of 40%.  Calculated as (Revenue &#8211; COGS)/Revenue &#8211; in this example ($100 &#8211; $60)/$100 = 40%.</li>
</ul>
<h2>Economics of Cross-Selling</h2>
<p>Cross-selling is when you convince a customer (who is in the process of buying something) to buy an additional product.  When you successfully cross-sell a product, you are increasing the revenue for the order.  This results in an increase in average revenue per order.  The sale of the additional product will also increase the average gross profit per order.  The cross-sell <em>may</em> increase the gross profit margin of the order, or it may not.  When the product originally being purchased is less profitable than the additional product being cross-sold, the margin is increased.  When the original product is more profitable than the additional product, the margin is decreased.</p>
<p>If your current operations strategy involves increasing your profit <em>margins</em>, you need to make sure your cross-sell activities only recommend additional products with <em>higher</em> margins than the products against which they are being cross-sold.  When your strategy is prioritizing growth over profitability, your cross-sell activities should focus on <em>conversion</em> &#8211; increasing the percentage of the time are you successfully cross-selling additional products.</p>
<h2>Economics of UpSelling</h2>
<p>Upselling is when you convince a customer (who is in the process of buying something) to buy something else &#8211; specifically, something more expensive.  This replacement of the original item with a new item is known in economics as product substitution.  Since the products are not identical (one is more expensive and presumably &#8220;better&#8221; than the other), the products are by definition <em>imperfect</em> substitutes.  A <em>perfect</em> substitute is one that would be identical to the product it replaced.</p>
<p>[Update: Check out <em><a title="complementary products and product substitution" href="http://tynerblain.com/blog/2009/12/07/substitutes-and-complements/">Complementary and Substitute Products</a></em> for more on product substitution.]</p>
<p>Successfully upselling a product results in an increase in revenue, and ideally an increase in profits.  It may also result in an increase in profit margin (but may not).  Consider a customer who intends to purchase a 200GB hard drive for $100 (at a cost of $45).  This purchase would yield $100 is revenue, and $55 dollars in profit at a 55% profit margin.  If you successfully upsold the customer to purchase a 500GB hard drive for $200 (at a cost of $100), the purchase would yield $200 in revenue, and $100 in profit at a 50% profit margin.</p>
<p>You have to understand if your strategy is prioritizing an increase in revenue, profits, or profit margins.  This will determine which upselling recommendations you want to make to customers.</p>
<h2>Measuring Cross-Selling and Upselling</h2>
<p>In addition to measuring your sales you want to specifically measure the impact that cross-selling and upselling has on your measurements.  Those measurements are described above.  You may be breaking those measurements down by product category, product price levels, market segments, or any other decomposition that helps guide future decisions.  You also want to measure the effectiveness of your cross-selling and upselling solutions.  You do that by measuring conversion &#8211; the percentage of customers that change their purchases in response to your cross-sell and upsell marketing.</p>
<p>Get Elastic, the eCommerce blog,<a title="measuring cross-sell" href="http://www.getelastic.com/measuring-cross-sell-success/"> shares some 2009 survey data</a> provided by <a title="etailing group survey data" href="http://www.internetretailer.com/article.asp?id=30618">the e-tailing group</a> on cross-sell and upsell conversion statistics.  Two-thirds of retailers that measure cross-sell and upsell conversion rates reported less than 5% conversion rates.  At the same time, Get Elastic reports that Amazon reported 35% of their 2006 revenue came from cross-sells.</p>
<p>If you&#8217;re adding cross-selling and upselling capabilities to your eCommerce website, you should set your initial expectations of effectiveness low, and your aspirations high.  You won&#8217;t start out with results like Amazon&#8217;s &#8211; no more than 98% of retailers that measure conversion see results far lower than Amazon&#8217;s.  In fact, most of them see results <em>an order of magnitude</em> smaller.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Foundation+Series%3A+Cross-Selling+and+Upselling+http://bit.ly/AgLtQ+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/10/28/cross-sell-and-upsell/&amp;t=Foundation+Series%3A+Cross-Selling+and+Upselling" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/10/28/cross-sell-and-upsell/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Modeling User Competency</title>
		<link>http://tynerblain.com/blog/2009/10/13/modeling-user-competency/</link>
		<comments>http://tynerblain.com/blog/2009/10/13/modeling-user-competency/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 04:40:50 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[competency model]]></category>
		<category><![CDATA[experience curves]]></category>
		<category><![CDATA[learning curves]]></category>
		<category><![CDATA[user competency]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1084</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F10%2F13%2Fmodeling-user-competency%2F", "style": "big", "title": "Modeling User Competency" });

Perpetually intermediate (competent) users.  Users who briefly exist as novice users and never become experts. Most of your users are competent, and you should design for them.  Competent users have different needs and different expectations than novice or expert users.  How do you know your user&#8217;s [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F10%252F13%252Fmodeling-user-competency%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Modeling%20User%20Competency%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F10%2F13%2Fmodeling-user-competency%2F", "style": "big", "title": "Modeling User Competency" });</script></div>
<p><img class="alignnone" title="measuring competence" src="http://sehlhorst.smugmug.com/photos/680267147_f9DUM-O.png" alt="" width="250" height="181" /></p>
<p>Perpetually intermediate (competent) users.  Users who briefly exist as novice users and never become experts. Most of your users are competent, and you should design for them.  Competent users have different needs and different expectations than novice or expert users.  How do you know your user&#8217;s competency levels, so you can design for them?</p>
<p><span id="more-1084"></span></p>
<h2>User Competency</h2>
<p>User competency is a concept I first read about in Alan Cooper&#8217;s <em><a title="The Inmates are Running the Asylum, by Alan Cooper" href="http://www.amazon.com/dp/0672326140?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=0672326140&amp;creative=373489&amp;camp=211189">The Inmates Are Running The Asylum</a></em>.  Cooper&#8217;s contention is that the level of expertise of your users follows a bell curve, or <a title="normal distribution" href="http://en.wikipedia.org/wiki/Normal_distribution">normal distribution</a>.</p>
<blockquote><p>When we’re designing software we need to keep in mind that most of our users will be competent – neither experts nor beginners. Alan Cooper’s studies tell us that user skill levels follow a bell curve. He talks about competent users as perpetual intermediates. Some users drop out of the bell curve when they stop using our software. The rare user becomes an expert. Most users only learn enough to get their real job done.<br />
<cite><a title="competent users" href="http://tynerblain.com/blog/2006/04/02/competent-users-and-software-design/">Competent Users and Software Requirements</a></cite></p></blockquote>
<p>Cooper contends that the combination of <a title="usability learning curves" href="http://tynerblain.com/blog/2007/03/12/software-usability-learning-curves/">learning curves</a> and natural user tendencies to stop learning or abandon a software application are the sources of this distribution of user competency.</p>
<h2>Experience Curves</h2>
<p><a title="experience curves" href="http://en.wikipedia.org/wiki/Experience_curve_effects">Experience curves</a> represent the diminishing costs over time of manufacturing something repeatedly.  The process of manufacturing something gets more efficient as you get smarter about the process.  The process of using software is at least analogous to, if not a specific example of a manufacturing process.  If you&#8217;re using an email application, you are manufacturing email messages.  In a CRM system, you are manufacturing contacts, or contact reports, etc.</p>
<p>By treating any &#8220;using the software to do something&#8221; interactions as a process, you can measure the cost (how long it takes) of the user&#8217;s interactions.  Applying the math behind experience curves, you can predict the reduction in cost (to your users) over time, for any set of interactions.  Experience curves take into account that some processes are inherently more learnable than others.  This property of learnability is reflected as an efficiency coefficient &#8211; how efficiently someone can learn ways to reduce the cost (time) needed to perform the interactions.</p>
<p>This gives us an approach to quantitatively model user competency.  Having a definition allows us to model competence.  And measuring competence allows us to manage product design in the context of user competency -<a title="design for competent users" href="http://tynerblain.com/blog/2007/03/23/dont-make-products-too-simple/"> designing for competent users</a>.</p>
<h2>Defining Competence</h2>
<p>The first step to measuring competency is to define the model.  I am proposing a definition in this article that I suspect will yield insights (to help us manage our products). I was unable to find any quantified definitions of competence, when researching it as part of a client engagement.  If you have, or know of a model, please share it in the discussion below this article.</p>
<ul>
<li>A competent user is someone who learns to perform a task in half the time it initially took them.</li>
<li>An expert user is someone who can complete a task in 10% of the initial time.</li>
</ul>
<p>This definition is guided by an expectation that Alan Cooper&#8217;s premise about perpetually intermediate users is true.  Being a novice user is a very transient state, and becoming an expert is very infrequent.  The goal of the definition is to be able to segment your users and make well-informed design decisions.</p>
<h2>A Proposal, Not a Doctrine</h2>
<p>This is a proposal that doubling performance reflects competence, and achieving a ten-times improvement represents expertise.  It may be that some different measure of performance improvement more accurately reflects competence and expertise.  We have to test it to know.</p>
<p>The experience curve is defined mathematically by <em>Henderson&#8217;s Law</em>.  It states that the time to complete a task is a function of the number of times you have previously done that task, adjusted by the &#8220;elasticity&#8221; of the cost of that task.  In other words, some tasks are easier to improve than others.  If you populate a table with the results of applying Henderson&#8217;s Law, you get the following:</p>
<p><img class="alignnone" title="experience curves" src="http://sehlhorst.smugmug.com/photos/680267101_QEofx-O.png" alt="" width="450" height="247" /> [<a title="experience curve data" href="http://sehlhorst.smugmug.com/photos/680267134_VUcpL-O.png">larger image</a>]</p>
<ul>
<li>Each row in the table represents the Nth repetition of a task.</li>
<li>Each column represents how easy that task is to learn &#8211; progressing from &#8220;hard to improve&#8221; on the left, to &#8220;easy to improve&#8221; on the right.</li>
<li>Each cell in the table represents how long it would take to perform the Nth repetition of the task, as a function of how easy it is to improve your performance at the task.</li>
</ul>
<p>The above definitions represent what experience curves predict mathematically, when the task initially takes 60 seconds.  The following definitions reflect the proposed user competency model:</p>
<ul>
<li>A user is a <em>novice</em> user until she has learned enough to cut the time-on-task in half.  These cells have a white background (and are in the upper left area of the table).</li>
<li>A user is a <em>competent</em> user when the time needed to complete the task is between one half and one tenth of the initial time.  These cells are shown with a yellow background (and are in the central area of the table).</li>
<li>A user is an <em>expert</em> user when she can complete the task in less than one tenth of the time required to initially complete the task.  Theses cells are shown with a red background (and are in the lower right area of the table).</li>
</ul>
<p>In the absence of empirical data, I used my intuition to suggest that a representative experience curve for a typical task performed in software would be one with an &#8220;elasticity&#8221; of 50%.  For a task with those learning characteristics:</p>
<ul>
<li>A novice user would cut the needed time in half on the 4th repetition of the task, and would be considered to be a competent user.</li>
<li>A competent user would further reduce the time needed to one tenth of the initial time on the 100th repetition of the task, and would be considered an expert user.</li>
<li>The 50% elasticity column is surrounded by a black border, and the number of repetitions required to advance to <em>competent</em> or <em>expert</em> status is also highlighted with a black border.</li>
</ul>
<h2>Inferring Competence</h2>
<p>Since different processes have different learning characteristics, you have to figure out how easy it is for your users to improve at your processes.  To do that, you have to study (or at least measure) your users&#8217; interactions with your software.  In the 50% curve highlighted above, a user is capable of cutting their time-on-task in half by the fourth time they perform the task.</p>
<p>If data from your initial testing (or measurement) reveals this to be true, then you have selected the correct curve (the correct column in the table).  If it takes more or less time to reach this level of improvement, shift to the left or right to find the appropriate curve.  If software-interactions are reasonable analogs to manufacturing processes, then the experience curve projects an expected rate of improvement on task.</p>
<p>The following graph isolates the time-on-task data for a user who is learning to improve when repeating a task (process) that matches the 50% elasticity curve.</p>
<p><img class="alignnone" title="rate of learning on a 50% curve" src="http://sehlhorst.smugmug.com/photos/680267141_hukQA-O.png" alt="" width="450" height="327" /> [<a title="larger 50% experience curve time-on-task graph" href="http://sehlhorst.smugmug.com/photos/680267164_phQRh-O.png">larger image</a>]</p>
<p>Note that the number of repetitions of the task (the X axis) is represented as a logarithmic scale.  The data points along the curve correspond to the cell values in the table above (for the 50% column).</p>
<p><strong>Shades of Gray</strong></p>
<p>One nice thing about this quantitative approach to inferring competency by measuring usage is that your measurements are per-process.  Users are not &#8220;purely novice&#8221; or &#8220;purely expert&#8221; &#8211; they can be experts at some processes, while remaining neophytes at other.  There is also awareness, for any particular process, of &#8220;how much competency&#8221; a user has.  This allows you to refine your assumptions of the steepness of the learning curve, and of the thresholds (doubled performance and ten-times performance improvements).</p>
<h2>Improvement Over Time</h2>
<p>Any particular learning curve can be considered relative to calendar time, to see how quickly a user will progress along the curve (as a function of frequency of use).  This can be useful for determining the <a title="definition of ROI" href="http://tynerblain.com/blog/2006/02/01/definition-of-roi-return-on-investment/">ROI </a>of improvement in a particular process.</p>
<blockquote><p>The following graph shows how an 80% learning curve overlays a calendar for tasks that happen daily, weekly, and hourly.<br />
<img title="calendar overlay of competency curve" src="http://sehlhorst.smugmug.com/photos/135449754-M.jpg" alt="" /><br />
[<a title="larger improvement over time" href="http://sehlhorst.smugmug.com/photos/135449796-O.jpg">larger image</a>]</p>
<p>The graph shows that for a weekly frequency, after 16 weeks, the task time has reduced from 300 seconds to 100 seconds. With a daily frequency, the task time is even lower – about 60 seconds. This graph shows nothing other than converting the academic learning curve graph into one that incorporates calendar time and frequency of occurrence.</p>
<p><cite><a title="software usability and learning curves" href="http://tynerblain.com/blog/2007/03/12/software-usability-learning-curves/">Software Usability and Learning Curves</a></cite></p></blockquote>
<p>One approach to inferring user competency would be to measure how long a user has been using your software.  The variation in how frequently different users perform the same task will introduce an error into that inference.  You can avoid introducing that error into your modeling by counting the number of times a user has performed a task.</p>
<h2>Applying the User Competency Model</h2>
<p>The advice in previous articles, and from Cooper&#8217;s book, and from this <a title="perpetual intermediacy" href="http://www.codinghorror.com/blog/archives/000098.html">great article on the  Coding Horror site</a>, encourages us to focus on the competent users.</p>
<p>I&#8217;m working with a client who needs to prioritize a set of capabilities and establish design principles for a product.  We will incorporate this user competency model as part of our analysis.</p>
<p>Hopefully we&#8217;ll have an opportunity to collect data to validate and / or refine the model.  I&#8217;m proposing that we first gain some insight into the which users (novice, competent, expert) drive the most revenue and profit from use of the product &#8211; to establish the importance of each category of user.</p>
<p>For this product, I suspect that we will find many more <em>novice</em> users than a normal distribution would predict.  If that is true, the next question will be to understand if we are dealing with a normal behavioral dynamic, or if characteristics of the current product &#8220;force&#8221; novice users to abandon it before they achieve competence.</p>
<p>Either way, we will have a framework for prioritizing the goals of the novice, competent, and expert users.</p>
<p>How would you apply a model like this to improving your product?</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Modeling+User+Competency+http://bit.ly/ZYSig+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/10/13/modeling-user-competency/&amp;t=Modeling+User+Competency" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/10/13/modeling-user-competency/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Concise Requirements</title>
		<link>http://tynerblain.com/blog/2009/08/03/concise-requirements/</link>
		<comments>http://tynerblain.com/blog/2009/08/03/concise-requirements/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 03:23:17 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Ishikawa Diagram]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[Use Cases]]></category>
		<category><![CDATA[User Stories]]></category>
		<category><![CDATA[concise requirements]]></category>
		<category><![CDATA[writing good requirements]]></category>
		<category><![CDATA[writing requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1010</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F08%2F03%2Fconcise-requirements%2F", "style": "big", "title": "Concise Requirements" });

Concise requirements give your team a useful, easy to read and easy to change understanding of what must be done.  Great requirements exist to do three things:

Identify the problems that need to be solved.
Explain why those problems are worth solving.
Define when those problems are solved.

Concise Requirements &#8211; Revisiting

In [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F08%252F03%252Fconcise-requirements%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Concise%20Requirements%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F08%2F03%2Fconcise-requirements%2F", "style": "big", "title": "Concise Requirements" });</script></div>
<p><img class="alignnone" title="concise requirements logo" src="http://sehlhorst.smugmug.com/photos/128628545-M.png" alt="" width="250" height="250" /></p>
<p><em>Concise</em> requirements give your team a useful, easy to read and easy to change understanding of what must be done.  Great requirements exist to do three things:</p>
<ol>
<li>Identify the problems that need to be solved.</li>
<li>Explain why those problems are worth solving.</li>
<li>Define when those problems <em><span style="text-decoration: underline;">are</span></em> solved.</li>
</ol>
<h2><span id="more-1010"></span>Concise Requirements &#8211; Revisiting</h2>
<p><img class="alignnone" title="ipod 2006" src="http://sehlhorst.smugmug.com/photos/610301383_BDte6-L.jpg" alt="" width="149" height="250" /><img class="alignnone" title="ipod 2009" src="http://sehlhorst.smugmug.com/photos/610301393_sfN5r-L.jpg" alt="" width="141" height="250" /></p>
<p>In the three years since we last looked at <em><a title="writing concise requirements" href="http://tynerblain.com/blog/2006/05/31/writing-concise-requirements/">Writing Concise Requirements</a></em> from the <em><a title="Writing Good Requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">Big Ten Rules of Writing Requirements</a></em>, the iPod evolved to give us a better experience.  Let&#8217;s see if we can do the same with the topic of brevity in requirements.  The size of our community here has grown ten-fold, and the people who were here back then have grown just as much.  It makes sense to look at this again.</p>
<p>Writing concise requirements is not just minimizing the number of words you use.  Writing concise requirements is presenting the most important information in the easiest format for your audience to consume.</p>
<h2>Concise Requirements Identify the Problems That Need to be Solved</h2>
<p>Ultimately, requirements are the problems that we choose to solve.  A concise requirements artifact (formal document, index card, photo of a whiteboard, whatever) is one that has the highest signal-to-noise ratio possible.  You&#8217;re maximizing the amount of communication, and minimizing the cost of communicating.</p>
<p><img class="alignnone" title="signal and noise" src="http://sehlhorst.smugmug.com/photos/610324412_eSzfc-L.png" alt="" width="241" height="210" /></p>
<p>You want your requirements document to read like the lines, not the points.  If the line (the signal) is what you really want, and you communicate a big pile of points (the signal, hidden in the noise), you run the very real risk that your audience will misinterpret the signal.</p>
<p><a title="writing complete user stories" href="http://tynerblain.com/blog/2009/07/06/writing-complete-user-stories/">User stories</a> provide the best example of clarity that comes from conciseness.  The format you should use, based on Mike Cohn&#8217;s great book, <em><a title="user stories applied at amazon" href="http://www.amazon.com/dp/0321205685?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=0321205685&amp;creative=373489&amp;camp=211189">User Stories Applied</a></em><a title="user stories applied at amazon" href="http://www.amazon.com/dp/0321205685?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=0321205685&amp;creative=373489&amp;camp=211189">,</a> is</p>
<blockquote><p>As a [<strong>role</strong>], I want to [<strong>do something</strong>] [<strong>with some frequency</strong>] so that I can/will [<strong>achieve some goal</strong>]</p></blockquote>
<p>The user story is not <em>always</em> the right communication format &#8211; it depends on what problems you&#8217;re solving, and who is on your team.  <a title="use cases vs user stories" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/">Sometimes, use cases work better than user stories</a>.  Conciseness is important for use cases too.  Start with a <a title="use case naming tips" href="http://tynerblain.com/blog/2007/01/22/how-to-write-good-use-case-names/">good use case name</a>.</p>
<h2>Concise Requirements Explain Why Those Problems Are Worth Solving</h2>
<p>Last week&#8217;s article on <em><a title="Writing Valuable Requirements" href="http://tynerblain.com/blog/2009/07/29/valuable-requirements/">Valuable Requirements</a></em> focused on <em>why</em> particular problems should be solved.  Your focus should be on value, and that article discussed five ways to assure that your requirements are valuable.  One of the techniques,<a title="finding the root causes of problems" href="http://tynerblain.com/blog/2008/05/27/cause-and-effect-diagrams/"> the use of an Ishikawa diagram</a>, provides a method for identifying the root causes of problems.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; line-height: 1.4em; padding: 0px;"><img style="padding: 0px; margin: 0px;" src="http://sehlhorst.smugmug.com/photos/302635390_W2GiV-O.jpg" alt="excessive car operating costs" width="450" height="269" /></p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; line-height: 1.4em; padding: 0px;">[<a style="color: #0000aa; text-decoration: none; padding: 0px; margin: 0px;" title="large excessive car costs example cause and effect diagram" href="http://sehlhorst.smugmug.com/photos/302635439_BqV4v-L.jpg">larger image</a>]</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; line-height: 1.4em; padding: 0px;">Imagine that you have a collection of user stories, representing problems to be solved for your users.  You need a way to demonstrate why <em>this</em> user story should be implemented and why <em>that</em> one shouldn&#8217;t.  You can often use the Ishikawa diagram in the same way.  A particular <strong>goal is achieved</strong> when a user is able to <strong>do something</strong>.  Perhaps several somethings are required.  The point is that you can use the Ishikawa to drive home the point &#8211; if <em>this set of user stories</em> are all implemented, then <em>this goal will be achieved</em>.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; line-height: 1.4em; padding: 0px;">There are two reasons this is important &#8211; first, you&#8217;re providing context for your team.  They understand <em>why</em> they are doing something.  Second, you can make changes easily, because you can see the impact of those changes.  By understanding the cause-and-effect relationships between problems and their values (user stories and their goals), you can see the impact of changing one or the other.</p>
<h2>Concise Requirements Define When Those Problems <em>Are</em> Solved</h2>
<p>Clarity is the goal of conciseness.  It isn&#8217;t enough to say &#8220;work on this.&#8221;  It&#8217;s important to know <em>why</em> you&#8217;re working on it, but that still isn&#8217;t enough.  You have to know when you&#8217;re <em>done</em>.  When you&#8217;re defining problems to be solved (and therefore solutions), you must also define the <em>measures</em> by which the solution will be judged.</p>
<p>A measurement of success for &#8220;Cost of Operation is Too High&#8221; might be &#8220;reduce costs of operation by 10%.&#8221;  This gives you a testable criteria for knowing when that problem has been <em>sufficiently</em> solved.  Sticking with the Ishikawa, you can also map out the strategy for achieving that lofty goal.  You can say that the goal is to reduce fuel expenses by 20%, reduce cost of maintenance by 5%, and reduce payments by 15%.  This process continues &#8211; a 20% reduction in fuel spend requires that you operate with your tires within 5% of nominal pressure, and that you reduce the aerodynamic drag coefficient by 7% (or whatever).</p>
<p>This gives you clarity in your objectives.</p>
<p>User stories, when combined with user acceptance criteria, provide that last connection of testability that lets your team know when they are done.</p>
<p><img class="alignnone" title="acceptance criteria for user stories" src="http://sehlhorst.smugmug.com/photos/584149015_prgqx-L.png" alt="" width="450" height="305" /></p>
<p>There aren&#8217;t many things more frustrating to a development team than having them solve the wrong problems.  One of those things might be having their solution be rejected because it isn&#8217;t <em>enough</em>.  Writing acceptance criteria clearly and concisely lets the team know exactly when they can move on to the next problem.</p>
<p>Providing a crisp understanding of acceptance criteria also facilitates iterative development.  One challenge teams always face is <a title="how to use timeboxes for agile development" href="http://tynerblain.com/blog/2006/04/12/how-to-use-timeboxes-for-scheduling-software-delivery/">making improvements that fit within the timebox</a> of a given iteration.  Imagine a user story with 4 acceptance criteria, where the story is too big to complete in one sprint.  When talking with your development team, you may find that the story is too big because satisfying all of the acceptance criteria is too big.  This is where many teams miss an opportunity &#8211; by defining <em>all</em> of the acceptance criteria that are believed to be needed <em>eventually</em> and requiring that they all be implemented <em>now</em>.  One of those criteria is going to be more important than the others.  Implement the story such that is satisfies the most important criteria (timeboxing) now, and rewrite or enhance it to meet the additional criteria later.</p>
<h2>Conclusion</h2>
<p>Software Product Success depends not only on identifying the &#8220;right stuff&#8221; to build, but on making sure the team builds it and builds it right.</p>
<p>Concise requirements improve your ability to communicate with your team, thereby improving their ability to build the right stuff right.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Concise+Requirements+http://bit.ly/pZRj8+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/08/03/concise-requirements/&amp;t=Concise+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/08/03/concise-requirements/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Writing Complete User Stories</title>
		<link>http://tynerblain.com/blog/2009/07/06/writing-complete-user-stories/</link>
		<comments>http://tynerblain.com/blog/2009/07/06/writing-complete-user-stories/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 05:18:23 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[User Stories]]></category>
		<category><![CDATA[agile traceability]]></category>
		<category><![CDATA[agile tracing]]></category>
		<category><![CDATA[requirements traceability]]></category>
		<category><![CDATA[traceability]]></category>
		<category><![CDATA[tracing goals]]></category>
		<category><![CDATA[tracing user stories]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=987</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F07%2F06%2Fwriting-complete-user-stories%2F", "style": "big", "title": "Writing Complete User Stories" });

User stories can make requirements management a lot easier.  They shift some of the communication from up-front documentation to ongoing dialog.  That&#8217;s the main reason they work so well for agile teams.  And agile teams focus on &#8220;what&#8217;s next?&#8221; instead of an ever-changing &#8220;what&#8217;s everything?&#8221; [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F07%252F06%252Fwriting-complete-user-stories%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Writing%20Complete%20User%20Stories%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F07%2F06%2Fwriting-complete-user-stories%2F", "style": "big", "title": "Writing Complete User Stories" });</script></div>
<p><img class="alignnone" title="a bunch of unorganized stories" src="http://sehlhorst.smugmug.com/photos/584129084_rYfmw-L.jpg" alt="" width="250" height="130" /></p>
<p>User stories can make requirements management a lot easier.  They shift some of the communication from<em> up-front documentation</em> to<em> ongoing dialog</em>.  That&#8217;s the main reason they work so well for agile teams.  And agile teams focus on &#8220;what&#8217;s next?&#8221; instead of an ever-changing &#8220;what&#8217;s everything?&#8221;   The problem is, when those conversations are working well, it is easy to forget to make sure that what you&#8217;ve done is actually enough.  Add a small dose of traceability, and you can easily validate the completeness of your user stories.</p>
<h2><span id="more-987"></span>Three Big User Story Problems</h2>
<p>Over the last few years, Alistair Cockburn surveyed a range of teams and identified that they all were facing a similar set of problems.  <a title="use cases solve agile problems" href="http://tynerblain.com/blog/2008/02/18/cockburn-loves-agile-use-cases/">Alistair proposed using use cases to solve those problems</a>.  The following list of problems is Alistair&#8217;s:</p>
<ol>
<li>Designers lack the context of the goal that the user is trying to achieve.</li>
<li>The team does not get a early indication of the scope of the project.</li>
<li>Alternate user-behaviors are not identified in advance of the commitment to deliver.</li>
</ol>
<p>We agreed then (and still do) that well developed use cases can be used to address these issues.  Since then, however, we&#8217;ve done more analysis of how and <a title="user stories versus use cases" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/">when to create use cases and when to create user stories</a>.  The primary drivers of the use case versus user story decision still apply, and should still sometimes point you to creating user stories.</p>
<p>Without the context of goals, and without a notion of completeness, your team just has a haphazhard stack of stories.  Not only will this reduce their motivation, but it will introduce frustration both for the implementation team and the stakeholders &#8211; no one will <em>really</em> know when the job is done.  Validating the completness of user stories will allow you to know (and regularly revisit) when you should be done.</p>
<p>When you are creating user stories, you need to be able to address the issues Cockburn identified.  You can do that with traceability, and a <em>very</em> small amount of additional documentation.</p>
<h2>User Story Metadata</h2>
<p>The cool thing about a well-written user story is that it already has metadata within it that makes tracing very easy.  A well-written user story, using a format based on the work of Mike Cohn (in <em><a title="user stories applied at amazon" href="http://www.amazon.com/dp/0321205685?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=0321205685&amp;creative=373489&amp;camp=211189">User Stories Applied</a></em>), would read:</p>
<p>As a [role], I want to [do something] [with some frequency] so that I can/will [achieve some goal].</p>
<p>If you were to build a UML Class Diagram to show the relationships that are implicit in a user story, you would get something that looks like the following:</p>
<p><img class="alignnone" title="user story class diagram" src="http://sehlhorst.smugmug.com/photos/584129144_PErXN-L.png" alt="" width="450" height="313" />[<a title="larger user story class diagram" href="http://sehlhorst.smugmug.com/photos/584129127_E8Fy3-O.png">larger version</a>]</p>
<ul>
<li>The [role] that starts a user story is the <a title="how to create personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">persona </a>(lower right corner of the diagram).  For products with simple market strategies, identification of personas alone is sufficient.  Larger companies and larger products are often trying to address the needs of users in multiple markets or market segments.  Each persona you develop is in a single market segment.  You may organize your segments regionally or by vertical industry or any other strategy that helps you position your product.  You can manage your personas not only as members of market segments, but with <a title="hierarchy of roles and personas" href="http://tynerblain.com/blog/2007/12/20/global-actor-hierarchies-and-personas/">a hierarchy of roles</a>.</li>
<li>The [do something] you identify is the meat of the user story (top center of the diagram) &#8211; what the persona is going to do.</li>
<li>The [with some frequency] element tells your team how often a particular user story will happen.  This can be represented as an attribute of the user story.</li>
<li>The [achieve some goal] component of the user story provides the context (center of diagram) for why a user will be performing an action.  The user will be performing the action either to achieve a user goal or a corporate goal.  If it is a corporate goal, it will have an internal stakeholder.  Ultimately, there should be an internal stakeholder who is not only the beneficiary of that goal, but also the person who &#8220;owns&#8221; the market segment in which the persona is defined.  Sometimes, <a title="goal conflict" href="http://tynerblain.com/blog/2007/10/18/stakeholder-goals-2/">there will be conflicts in goals</a>, commonly between user and corporate goals.  These can also result in conflicting goals between internal stakeholders.</li>
</ul>
<p>This is what makes things pretty exciting &#8211; all of that information is already there, and in your user story.  All you have to do now is leverage it.</p>
<h2>Goals and User Stories</h2>
<p>The following diagram shows how a use case exists to enable the achievement of a goal.</p>
<p><img class="alignnone" title="structured requirements" src="http://sehlhorst.smugmug.com/photos/71264266-M.jpg" alt="" width="567" height="450" /></p>
<p>A user story can exist in the same way, just replacing the use case.  If you want to do <a title="ux and requirements" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">a deeper dive into how interaction design and structured requirements</a> work together, you can use the following model instead:</p>
<p><img class="alignnone" title="interaction design and structured requirements" src="http://sehlhorst.smugmug.com/photos/61228367-O.png" alt="" width="461" height="525" /></p>
<p>Note that the diagram above introduces a couple additional concepts.  The first additional concept is the <em>practical goal</em> &#8211; what the persona is attempting to do <em>because</em> it is the manifestation of a corporate goal.  &#8221;Take an order quickly&#8221; is the practical goal that manifests the corporate goal of &#8220;Reduce time required to take orders.&#8221;  The second concept is that of a <em>scenario</em>.  A scenario is an amalgam of user stories (or use cases) that collectively allow the persona to achieve the practical goal.  We already represent this without introducing the <em>scenario</em> concept by acknowledging that a single goal is mapped to multiple user stories.</p>
<p>The common element in both approaches is a strong tie between goals and user stories.  Focusing on this aspect, you can visualize the relationship as follows:</p>
<p><img class="alignnone" title="user stories and goals" src="http://sehlhorst.smugmug.com/photos/584149015_prgqx-L.png" alt="" width="450" height="305" /> [<a title="goals are achieved through user stories" href="http://sehlhorst.smugmug.com/photos/584148954_P4px6-O.png">larger version</a>]</p>
<p>Note that the acceptance criteria for each user story are called out (so that you can confirm that a user story is &#8220;done&#8221; and &#8220;done well&#8221;).  Each goal is achieved by enabling one or more user stories, such that the acceptance criteria are met.  This is the crux of it, so I&#8217;ll write it again, but in bold for the busy people who scan this article.</p>
<p><strong>Each goal is achieved by enabling one or more user stories, such that the acceptance criteria are met.</strong></p>
<p>Note also that multiple goals can be supported by the same user story.</p>
<h2>Validating Completeness</h2>
<p>The important question that many developers (agile or otherwise) can not answer about their project is &#8220;If we do [everything we've been asked to do] will we meet our goals?&#8221;  This is either a failure in communication of context, or a failure to <a title="writing complete requirements" href="http://tynerblain.com/blog/2006/06/08/writing-complete-requirements/">validate completeness of the requirements</a>.  You have to flip things around and ask &#8220;If only <em>these</em> user stories are implemented, will the goal(s) be achieved?&#8221;  This is the same process used to <a title="validate completeness with use cases" href="http://tynerblain.com/blog/2006/07/06/requirement-completeness-validation-with-use-cases/">validate completeness of use cases</a> &#8211; just applied to user stories [Ed: that completeness-validation article was written 3 years ago today.  That's 28 years ago in internet time].</p>
<h2>Incremental Overhead</h2>
<p>Each user story already identifies the goal(s) it is supporting.  The incremental overhead is to recognize that this is &#8220;a backwards view&#8221; of goal satisfaction and create a simple table that shows the &#8220;forward view.&#8221;</p>
<p>You are creating traceability from each goal to each of its supporting user stories &#8211; but you&#8217;re doing it with a simple table (or list, or tree, or whatever).  You don&#8217;t have to manage your requirements in some big messy repository.  If you&#8217;re using index cards, consider getting some brightly colored sticky-dots, number them for each goal, and stick them on the index cards to show the relationship.</p>
<p>Then ask the question, for each goal, &#8220;Will this goal be achieved if all of the traced user stories (and no other stories) are completed, such that the acceptance criteria are met?&#8221;</p>
<p>An added benefit of this simple document is that it markedly improves your engagement with internal stakeholders.  You&#8217;ve created another opportunity for them to influence the scope of delivery.  These stakeholders can identify user stories that <em>don&#8217;t</em> map to any goals (you can drop those stories), and by identifying incomplete support, you can collaborate to make sure the missing user stories are identified.</p>
<p>The task of updating stakeholders about progress and <a title="managing stakeholder expectations" href="http://tynerblain.com/blog/2008/12/30/stakeholders-in-a-barrel/">managing stakeholder expectations</a> just got much easier &#8211; because you can report progress in the context of completed user stories (and therefore manifested goals).</p>
<h2>Reviewing Cockburn&#8217;s Issues</h2>
<p>Does this approach address Cockburn&#8217;s issues (listed at the start of this article)?</p>
<ol>
<li><strong>Lacking the context of goals</strong>.  This approach explicitly emphasizes that context.</li>
<li><strong>No early indication of scope</strong>.  The combination of completeness analysis and acceptance criteria provides concrete insight about scope.  Note that scope can still change, but this approach is just as effective as documenting requirements with use cases.</li>
<li><strong>Alternate behaviors not identified early</strong>.  Completeness analysis will highlight when the &#8220;happy path&#8221; (a.k.a. the normal course in a use case) is not sufficient to achieve the goal.  This is really just a variation of the second issue (not understanding scope), but along a <em>variation</em> dimension instead of a <em>coverage</em> dimension.</li>
</ol>
<h2>Conclusion</h2>
<p>There is value in being able to <a title="user story vs use case" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/">document requirements with either user stories or use cases</a> as circumstances dictate.  <a title="cockburn on agile use cases" href="http://tynerblain.com/blog/2008/02/18/cockburn-loves-agile-use-cases/">Cockburn identified issues</a> that teams face when dealing with decoupled user stories.  His approach of leveraging use cases to solve the issues is perfectly valid.  The approach outlined above, tracing user stories, also addresses the issues.  As a product manager or business analyst, you need to be able to address the very real issues with either documentation approach.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Writing+Complete+User+Stories+http://bit.ly/MGtPm+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/07/06/writing-complete-user-stories/&amp;t=Writing+Complete+User+Stories" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/07/06/writing-complete-user-stories/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>User Goals and Corporate Goals</title>
		<link>http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/</link>
		<comments>http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 04:59:02 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Prioritization]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[corporate goals]]></category>
		<category><![CDATA[requirements management]]></category>
		<category><![CDATA[user goals]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=973</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F06%2F22%2Fuser-goals-and-corporate-goals%2F", "style": "big", "title": "User Goals and Corporate Goals" });

When defining requirements, you always start in the context of a goal &#8211; either a user goal or a corporate goal.  You need to be aware of both.  Having a positive user experience is important, and requires a user-centered understanding.  Achieving your corporate goals [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F06%252F22%252Fuser-goals-and-corporate-goals%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22User%20Goals%20and%20Corporate%20Goals%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F06%2F22%2Fuser-goals-and-corporate-goals%2F", "style": "big", "title": "User Goals and Corporate Goals" });</script></div>
<p><img class="alignnone" title="vending machine as user interface" src="http://sehlhorst.smugmug.com/photos/571470636_NcRaS-L.jpg" alt="" width="163" height="250" /></p>
<p>When defining requirements, you always start in the context of a goal &#8211; either a user goal or a corporate goal.  You need to be aware of both.  Having a positive user experience is important, and <em>requires</em> a user-centered understanding.  Achieving your corporate goals <em>might</em> be in conflict with some user goals.</p>
<h2><span id="more-973"></span>User Goals</h2>
<p>A user centered, or user-centric approach to developing software is one where you start by <a title="developing persona for goal driven development" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">identifying the key persona</a> in your target market.  For each of those personas, you identify their most important goals.  You then identify the <a title="user stories and use cases" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/">user stories or use cases</a> that represent the things these people do in order to achieve their goals.  These &#8220;things&#8221; are manifested as practical goals.  For these activities, you design user interfaces (process, layout, architecture, look and feel, etc) that <a title="customer delight in requirements prioritization" href="http://tynerblain.com/blog/2006/02/27/prioritizing-software-requirements-kano-take-two/">create customer delight</a> for those users, doing those things.  This is how your product <a title="designing to exceed the suck threshold" href="http://tynerblain.com/blog/2005/12/14/getting-past-the-suck-threshold/">exceeds the suck-threshold</a> (good enough that it doesn&#8217;t suck to use your product).</p>
<h2>Corporate Goals</h2>
<p>There&#8217;s a reason your company is creating or improving a product.  It may be to gain market share, or improve profitability, or increase sales.  Whatever it is, there&#8217;s a corporate goal that your decisions should be supporting.  The (subset of) corporate goals that are relevant to your product could be communicated in a vision and scope document, that constrains the domain of problems to be solved, and provides nuanced insights into viable approaches to solving them (<a title="vision and scope docs for apr" href="http://tynerblain.com/blog/2007/04/18/apr-scope-and-vision/">example vision and scope</a>).</p>
<p>Corporate goals are achieved when customers do things with the products.  These &#8220;things&#8221; are manifested as practical goals.  For those activities, you document what should be accomplishable and why.</p>
<h2>Alignment and Conflict of Goals</h2>
<p>Notice that both the user goals and corporate goals manifest in terms of people doing things.  When the person (user) wants to do the same things that your company wants them to do, you&#8217;re in alignment.  When the user goals and corporate goals suggest different activities, you&#8217;re in conflict.</p>
<p>You can see visually that these worlds collide at the &#8220;practical goals&#8221; stage  in the following diagram, from an article on <a title="interaction design and structured requirements" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">combining interaction design and structured requirements principles</a>.</p>
<p><img class="alignnone" title="interaction design and structured requirements" src="http://sehlhorst.smugmug.com/photos/61228367-O.png" alt="" width="461" height="525" /></p>
<p>It may be great &#8211; when the user and corporate goals are in alignment, the practical goal and associated scenario (activity) are easily defined.  What about when the goals are in conflict?</p>
<h2>Vending Machine Example</h2>
<p>Last Thursday morning, as I interacted with a vending machine, the idea for this article was dispensed along with my Diet Mountain Dew.  Yes, I know that&#8217;s odd.  Move on.</p>
<p>It occured to me that the process of buying a cold, caffeinated beverage can be both aligned and unaligned from the perspective of user and corporate goals.  If you imagine writing a use case for purchasing a beverage from the vending machine, your most important scenario is the one where a person wants to purchase a beverage that is available in the machine.</p>
<ul>
<li>User Goal: Get refreshed and vitalized.</li>
<li>Corporate Goal: Sell a beverage.</li>
</ul>
<p>I want to buy a Diet Mountain Dew, as a means to realize my personal goal.  The owner of the vending machine wants to realize her corporate goal of selling me the beverage I want to buy.  We&#8217;re in alignment.  Our requirements definitions and design decisions will be pretty easy &#8211; everything that increases the likelihood of and improves the experience of purchasing that beverage is good.  I put my money in the machine and push the button.</p>
<p>Then it occurs to me &#8211; there&#8217;s a situation where my personal goals are clearly not aligned with the corporate goals of the vending machine owner.  When there is no Diet Mountain Dew available to be purchased.</p>
<p>Consider the following procedure I&#8217;m forced to endure:</p>
<ol>
<li>I view the available beverages that this machine dispenses &#8211; Diet Mountain Dew is one of them.</li>
<li>I put my money in the machine.</li>
<li>I push the button for Diet Mountain Dew.</li>
<li>The tiny display on the machine presents a message in taunting, scrolling red LED lights: SOLD OUT.</li>
</ol>
<p>At this point, I&#8217;m faced with a choice &#8211; select a less desireable beverage, or request my money back and try to satisfy my user goal in some other way.</p>
<p>Consider an alternate procedure:</p>
<ol>
<li>I view the available beverages that this machine dispenses &#8211; Diet Mountain Dew is one of them.</li>
<li>I view the &#8216;current availability&#8217; of Diet Mountain Dew and see that this machine is currently sold out of Diet Mountain Dew.</li>
</ol>
<p>At this point, I&#8217;m faced with a choice &#8211; select a less desireable beverage, or request my money back and try to satisfy my user goal in some other way.</p>
<p>The differences in these two possible procedures indicate that there is a conflict between the corporate goal and the user goal.  With the first procedure, the &#8220;Sell a beverage&#8221; goal is given more importance, because it makes me more likely to purchase a beverage that I don&#8217;t particularly want.  My utility is potentially sacrificed, while the owner of the vending machine is just as satisfied.</p>
<p>By failing to tell me that I can&#8217;t get what I want, until I&#8217;m further invested in the process, I am more likely to purchase something else.  That purchase creates just as much value for the owner of the vending machine, but less value for me.</p>
<p>If the vending machine owner had allowed me to use the second procedure, it would demonstrate that the  owner believed the improved customer experience, while risking the loss of this sale, would encourage me to purchase more over time.  The owner would have been prioritizing the requirements and design that supported the user goal ahead of those supporting the corporate goal &#8211; in hopes that my user loyalty would result in <a title="how word of mouth works" href="http://tynerblain.com/blog/2007/09/18/dynamics-of-word-of-mouth/">better word of mouth</a> (more business from other people) and <a title="usability sells software" href="http://tynerblain.com/blog/2007/01/10/usability-sells-software/">more business from me</a> over time.</p>
<h2>Generalizing User and Corporate Goal Conflicts</h2>
<p>In this vending machine example, the annoying procedure is <em>probably</em> the right one &#8211; I&#8217;m going to treat the &#8220;point of use vending of cold, caffeinated beverages&#8221; as a commodity product.  This market has a very low barrier to entry, and relatively small problem being solved.  I&#8217;m not going to tell my friends about how much I love the vending machines from Joey&#8217;s Vending and encourage them to go out of their way to find and use those machines.  Nor will I purchase more Diet Mountain Dew because the emotional cost of the occasional &#8220;sold out&#8221; scenario is trivially smaller with Joey&#8217;s machines.  I would, however, be more likely to buy a Diet Pepsi when I&#8217;ve already invested time in the process and put my money in the machine &#8211; especially when the alternative is to find a water fountain.  I&#8217;m emotionally invested at this point.</p>
<p>However, this experience did jump out at me as one that is worth explicit consideration when defining requirements and designing solutions.  It does come up regularly.</p>
<p>The new iPhone 3GS hardware allows tethering (using the phone as an internet-connection device for your laptop).  ATT (the exclusive carrier for iPhones in the USA) is indicating that they will charge customers an extra monthly fee for this capability, when they eventually allow it on their network.  The user already has a data plan, and the traffic that ATT would have to carry is just &#8220;data.&#8221;  The user just wants it to work.  ATT, however, may want more money, or may want to limit data traffic on its network &#8211; perhaps to improve the quality of service to all customers.  This could be ATT&#8217;s corporate goal of &#8220;provide better service quality&#8221; conflicting with the user&#8217;s &#8220;increase the flexibilty of how I use my data plan.&#8221;  The former would likely influence customer satisfaction (and abandonment) over time, while the latter would influence customer acquisition rates.  Another conflict in goals.</p>
<p>Think about how different goals can lead to conflicting solutions, requirements, and designs.  And tell me when you&#8217;re out of Diet Mountain Dew before I&#8217;m emotionally invested in the purchase.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+User+Goals+and+Corporate+Goals+http://bit.ly/df3j0+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/&amp;t=User+Goals+and+Corporate+Goals" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>ProductCamps and Class Diagrams</title>
		<link>http://tynerblain.com/blog/2009/06/09/pcamps-and-class-diagrams/</link>
		<comments>http://tynerblain.com/blog/2009/06/09/pcamps-and-class-diagrams/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 20:07:45 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ProductCamp]]></category>
		<category><![CDATA[class diagram example]]></category>
		<category><![CDATA[domain modeling]]></category>
		<category><![CDATA[pcamp]]></category>
		<category><![CDATA[productcamp]]></category>
		<category><![CDATA[uml class diagram example]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=949</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F06%2F09%2Fpcamps-and-class-diagrams%2F", "style": "big", "title": "ProductCamps and Class Diagrams" });

For you product managers out there &#8211; here are a couple upcoming productcamp unconferences.  For you business analysts, here&#8217;s an excuse to do a little domain modeling and practice your UML class diagram skills.
Upcoming ProductCamps
There are at least four productcamp unconferences coming up in the [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F06%252F09%252Fpcamps-and-class-diagrams%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22ProductCamps%20and%20Class%20Diagrams%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F06%2F09%2Fpcamps-and-class-diagrams%2F", "style": "big", "title": "ProductCamps and Class Diagrams" });</script></div>
<p><img class="alignnone" title="productcamp logo 450px" src="http://sehlhorst.smugmug.com/photos/559356067_iGLmZ-L.gif" alt="" width="450" height="88" /></p>
<p>For you product managers out there &#8211; here are a couple upcoming productcamp <em>un</em>conferences.  For you business analysts, here&#8217;s an excuse to do a little domain modeling and practice your UML class diagram skills.</p>
<h2><span id="more-949"></span>Upcoming ProductCamps</h2>
<p>There are at least four productcamp <em>un</em>conferences coming up in the near future.  I&#8217;ve been able to attend (and host sessions at) both of the productcamp Austin sessions, and they were great.  If you can make it to a session near you, you definitely should.  And if you go, you should help out &#8211; these are entirely free, and their quality directly relates to the amount of volunteer support that the attendees give.</p>
<ol>
<li>ProductCampNYC &#8211; Jul 18th 2009 @ The Downtown Association, New York City, NY.  <a title="pcampnyc info" href="http://barcamp.org/ProductCampNYC">More info</a>.</li>
<li>ProductCampAustin &#8211; Aug 2009 (exact day and venue TBD).  <a title="productcamp austin" href="http://www.productcampaustin.com/">More info</a>.</li>
<li>ProductCampToronto &#8211; (everything TBD).  <a title="pcamp toronto" href="http://pct2009prereg.eventbrite.com/">More info</a>.</li>
<li>ProductCampSeattle &#8211; Oct 10th 2009 @ Amdocs.  <a title="pcamp seattle" href="http://pmconsortium.ning.com/events/seattle-product-camp">More info</a>.</li>
</ol>
<p>Check out the comments on this article too &#8211; as updates happen in different cities, I&#8217;m sure folks will post them here.</p>
<p>[Note: I updated the venue for the NYC product camp on 10 Jun 2009]</p>
<p>If you&#8217;re on twitter, you can search for #pcampnyc, #pca, for NYC and Austin productcamp info (respectively).  Or follow @ProductCampNYC.</p>
<h2>Session Planning</h2>
<p>One of the interesting things about productcamp is that it is a barcamp-style <em>un</em>conference.  That means it is free, and in theory, there is no centralized planning of sessions.  However, there&#8217;s a lot of planning that goes into having these unplanned sessions.</p>
<p><a title="Roger Cauvin's blog" href="http://cauvin.blogspot.com/">Roger Cauvin</a> is one of the volunteers helping to organize the next productcamp Austin, with a focus on sessions.  He and I met over some seriously tasty <a title="good greek restaurant" href="http://tinosgreekcafe.com/default.aspx">Greek food at Tino&#8217;s Greek Cafe</a> in Austin yesterday for lunch to begin planning for the sessions.  Our discussion focused around how the attendees will best benefit from the sessions, and what we can do to maximize that benefit.</p>
<p>One idea that came up was looking at addressing the frustration that people feel when there are two simultaneous sessions that they want to go see.  At previous productcamps, we used a very simple, on-the-fly scheduling approach:</p>
<ol>
<li>We created index cards for each session and stuck them on the wall.</li>
<li>Each person had a few (3?) sticky notes, and stuck them under each session card.</li>
<li>The ones that got the most were lined up in the same room (to reduce conflicts in the popular sessions).</li>
<li>The rest of the sessions filled up the room/time slots without any particular optimization.</li>
<li>We did this sequencing in a couple minutes after everyone quickly &#8220;voted&#8221; with their post-it notes.</li>
</ol>
<p>We learned, from &#8220;customer&#8221; feedback from the first two sessions that there is room to improve:</p>
<ul>
<li>People were still expressing frustration about &#8220;good session&#8221; conflicts.</li>
<li>We also noticed a drop-off in attendance as people left before the end of the day &#8211; more attendees for earlier sessions.</li>
</ul>
<p>So, if we&#8217;re going to improve session planning, one of the things we need to do is understand the details of sessions.  This is where domain modeling comes in.</p>
<p>We can create a <a title="how to create uml class diagrams" href="http://tynerblain.com/blog/2008/03/06/requirements-class-diagrams-1/">UML class diagram</a> that represents the domain of planning for (and attending) sessions.  This serves as an example of applying the business analysis techniques to gain insight into a problem domain before attempting to define a solution.</p>
<p>We know the following things about the domain:</p>
<ul>
<li>There are a limited number of rooms available for sessions.</li>
<li>There are a limited number of time-slots available for sessions.</li>
<li>Each session has a topic and presenter(s), and happens in a single room at a single time-slot.</li>
<li>Each session has multiple attendees.</li>
<li>Each attendee wants to attend multiple sessions.</li>
<li>Each attendee has a prioritized list of sessions they expect will benefit them if attended.</li>
<li>Each attendee can only attend one session per time-slot.</li>
<li>Each attendee wants to maximize the benefit that they get from the productcamp.</li>
</ul>
<p><img class="alignnone" title="uml class diagram example" src="http://sehlhorst.smugmug.com/photos/559347375_54j4N-L.png" alt="" width="450" height="326" /> [<a title="larger uml class diagram example of productcamp sessions" href="http://sehlhorst.smugmug.com/photos/559346621_b8vSG-O.png">larger image</a>]</p>
<p>The diagram above shows the relationships that will inform the design of any solutions.  For more on how to create UML class diagrams, check out our <a title="how to use class diagrams for domain modeling" href="http://tynerblain.com/blog/2008/03/06/requirements-class-diagrams-1/">tutorial series on domain modeling</a>.  One challenge of domain modeling is that there are often multiple ways to represent the same relationships.  With a goal of &#8220;understand the domain&#8221; &#8211; how would you model this differently?</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+ProductCamps+and+Class+Diagrams+http://bit.ly/CtB6R+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/06/09/pcamps-and-class-diagrams/&amp;t=ProductCamps+and+Class+Diagrams" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/06/09/pcamps-and-class-diagrams/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Foundation Series: Price Elasticity</title>
		<link>http://tynerblain.com/blog/2009/06/01/price-elasticity/</link>
		<comments>http://tynerblain.com/blog/2009/06/01/price-elasticity/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 22:09:02 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Foundation series]]></category>
		<category><![CDATA[economics]]></category>
		<category><![CDATA[price elasticity]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=932</guid>
		<description><![CDATA[
topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F06%2F01%2Fprice-elasticity%2F", "style": "big", "title": "Foundation Series: Price Elasticity" });

When prices go up, demand goes down.  But how much does it go down?  Price elasticity of demand is the term economists use for the math that describes this behavior.

Cause and Effect
Prices go up and sales go down.  Prices go down, and sales go up. [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Ftynerblain.com%252Fblog%252F2009%252F06%252F01%252Fprice-elasticity%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Foundation%20Series%3A%20Price%20Elasticity%22%20%7D);"><script type="text/javascript">topsyWidgetPreload({ "url": "http%3A%2F%2Ftynerblain.com%2Fblog%2F2009%2F06%2F01%2Fprice-elasticity%2F", "style": "big", "title": "Foundation Series: Price Elasticity" });</script></div>
<p><img class="alignnone" title="economics classroom" src="http://sehlhorst.smugmug.com/photos/50445724-M.jpg" alt="" width="250" height="195" /></p>
<p>When prices go up, demand goes down.  But how much does it go down?  Price elasticity of demand is the term economists use for the math that describes this behavior.</p>
<p><span id="more-932"></span></p>
<h2>Cause and Effect</h2>
<p>Prices go up and sales go down.  Prices go down, and sales go up.  There is definitely a correlation &#8211; and economists will argue that it is cause and effect.  I think they&#8217;re right &#8211; and here&#8217;s the rationale.</p>
<p>Imagine an apple, a group of people who are interested in buying that apple.  Each person would be willing to pay a different amount for that apple, because each person assigns a different value, or <a title="intro to utility curves" href="http://tynerblain.com/blog/2007/02/06/foundation-series-intro-to-utility-curves/">utility</a>, to having that apple.   Even two identical twins who normally would value the apple the same might value it differently <em>right now</em>.  Imagine that one of our twins has not eaten in a couple days, and the other just finished a very large meal.  They would realize different amounts of utility <em>right now</em> from that same apple.  Or imagine a millionaire and a pauper, who value apples equally, but place less importance on a small amount of money.  Or imagine someone with a bushel of apples, and someone with none &#8211; to whom is &#8220;one more apple&#8221; worth more?</p>
<p>Because different people are willing to pay different amounts (for different reasons) to buy an apple, we have the effect of demand (a proxy for eventual sales) that varies with price.</p>
<p>At price X, half of this group of people would be willing to buy the apple.  Some people might see it as a great bargain, while others are only just barely willing to pay the price of X.  There are also some people who are almost willing, but the price is just a bit too high.  And finally, some people for whom a price of X is just unreasonable.</p>
<p>If you lower the price, all of the people who were previously willing to buy the apple are still willing.  The people who were almost willing before will now buy the apple.  If, on the other hand, you had raised the price, the people who were just barely willing to buy will instead not buy.</p>
<p><img class="alignnone" title="price elasticity" src="http://sehlhorst.smugmug.com/photos/552079332_BBBNq-L.png" alt="" width="352" height="352" /></p>
<p> </p>
<p>The graph above shows price on the vertical axis, and quantity on the horizontal.  When you lower the price from P0 to P1, the quantity that will be sold increases from Q0 to Q1.</p>
<h2>Price Elasticity of Demand</h2>
<p>When you&#8217;re talking about pricing impacts on demand, you&#8217;ll usually just say &#8220;price elasticity&#8221; but it is worth remembering the &#8220;of demand&#8221; part.  For example &#8211; there&#8217;s also <em>Price Elasticity of Supply</em>.  Think of the apple example above.  Imagine that the group of people are all selling apples, and there&#8217;s a single buyer.  Depending on the price the buyer sets, some people would be willing to sell, and others unwilling.  Change that market price, and the number of available apples for sale will change.  For now, we&#8217;ll focus on the impact of changing prices on demand.</p>
<p>The reason price elasticity is interesting is because it gives us some insight into how <em>much</em> the quantity will change when prices change.</p>
<p>Economists have a couple formulas for price elasticity (of demand), including e = % change in quantity / % change in price.</p>
<p>When the relative quantity changes by exactly the same amount as the relative price, you have e=-1, referred to as <em>unitary</em> elasticity.  If you reduce your price by 10%, you increase the quantity sold by 10%.</p>
<p><img class="alignnone" title="unitary elasticity" src="http://sehlhorst.smugmug.com/photos/552108894_q2vGF-L.png" alt="" width="352" height="352" /></p>
<p>As a numerical example, you price bags of apples at $10 each, and are able to sell 20 bags of apples for $200.  With e=-1, unitary elasticity, if you lowered the price to $9, you would then sell 22 bags for $198.  If you had raised the price to $11 per bag, you would have sold 18 bags for $198.  If you dropped the price to $5 per bag, you would have sold 40 bags for $200.  Ignoring rounding errors, you would always have the same revenue.</p>
<p><img class="alignnone" title="revenue as area" src="http://sehlhorst.smugmug.com/photos/552116832_CG8Fi-L.png" alt="" width="352" height="352" /></p>
<p>The areas of the two rectangles formed by matching price and quantity are identical.  This leads to the conclusion that you will get the same revenue (assuming you can meet demand) regardless of the price you set for your product.  However, don&#8217;t worry about this too much &#8211; as far as I know, no real-world products have unitary elasticity.</p>
<h2>Changes, More or Less</h2>
<p>Elasticity is still useful for understanding the magnitude of change in demand that results from changes in price.  Does demand change by more than your change in price, or by less?</p>
<p>An <em>inelastic</em> demand curve has an elasticity value between 0 and -1.</p>
<p><img class="alignnone" title="inelastic demand curve" src="http://sehlhorst.smugmug.com/photos/552108937_e5ZpV-L.png" alt="" width="352" height="352" /></p>
<p>The resultant <em>relative </em>changes in quantity from a given change in price are smaller than the change in prices.  You can see from the steepness of the cuve in the inelastic demand curve above that a large drop in price (from P0 to P1) results in a small increase in quantity sold (from Q0 to Q1).  However, the converse is also true &#8211; a relatively large increase in price will cause a proportionally smaller decrease in demand.</p>
<p>This tends to be the case with products that people &#8220;must have.&#8221;  In other words, people don&#8217;t have good alternatives (substitute goods, or doing without).  When the price of gas doubled, did you reduce the amount of gas you purchase by half, or by less than half?  On the whole, demand for gas dropped by less than 50% when the price doubled.  Another example is anti-biotics.</p>
<p>An <em>elastic</em> demand curve is one where the quantity is very sensitive to changes in price, and has elasticity values below -1.</p>
<p><img class="alignnone" title="elastic demand curve" src="http://sehlhorst.smugmug.com/photos/552108985_ZLiFU-L.png" alt="" width="352" height="352" /></p>
<p>Small changes in price result in large changes in quantity with an elastic demand curve.  This tends to happen when there are reasonable alternatives to purchasing the product.  For example, when mass-scale production of chicken started and poultry prices dropped in the US, demand increased faster than prices dropped.  This happened at the expense of beef and pork purchases.</p>
<h2>Conclusion</h2>
<p>Understanding price elasticity of demand is important to making decisions about pricing your products.  There are many factors that determine price elasticity.  The value of your product is a key driver, as it determines the utility curve on which a customer places your product &#8211; how much is &#8220;what your product does&#8221; worth to your potential customer.  Understanding the alternatives your customer has are important &#8211; are you selling a commodity product like typing paper, or a unique product like a Tesla?  The more &#8220;perfect substitutes&#8221; there are for your product, the more elastic your demand curve will be.  If the problem you&#8217;re solving can also be solved in other ways, you are again facing substitution.  A pencil is an &#8220;imperfect substitute&#8221; for a pen, for customers that care only about recording messages on paper.  These also tend to make your demand curve more elastic.</p>
<p>In <em><a title="predictably irrational at amazon" href="http://www.amazon.com/dp/0061854549?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=0061854549&amp;creative=373489&amp;camp=211189">Predictably Irrational</a></em>, the authors identify several pricing concepts, like <em>anchoring</em> where people are psychologically influenced to believe one product is more valuable than another.  They look at some very interesting experiments that appear to highlight things that influence people&#8217;s <em>perception of</em> utility &#8211; making them willing to pay different prices.  An interesting extension of their ideas is that you can influence the price elasticity of demand for your product through positioning and marketing actions.</p>

<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Foundation+Series%3A+Price+Elasticity+http://bit.ly/5vrxU+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/06/01/price-elasticity/&amp;t=Foundation+Series%3A+Price+Elasticity" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/06/01/price-elasticity/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
