<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Technical Stories in Agile Software Development</title>
	<atom:link href="http://www.designinginteractive.com/agile/thoughts-on-technical-stories/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.designinginteractive.com/agile/thoughts-on-technical-stories/</link>
	<description>Usable Web Applications with Web Standards</description>
	<lastBuildDate>Mon, 06 Feb 2012 10:57:57 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Josh Walsh</title>
		<link>http://www.designinginteractive.com/agile/thoughts-on-technical-stories/comment-page-1/#comment-1081</link>
		<dc:creator>Josh Walsh</dc:creator>
		<pubDate>Thu, 14 Jan 2010 04:47:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.designinginteractive.com/?p=855#comment-1081</guid>
		<description>Ok, I don&#039;t think any of us are disagreeing.  However, I think the term &quot;technical story&quot; means something more specific to me.

Technical stories, in my opinion, are cards which are non-demonstrable dependencies required to implement a feature that was requested.  A task that the client didn&#039;t request to be done, but is required to fulfill another needed task.

Example: The client may ask us to move from rails 2.2 to 2.3 to give them access to new capabilities.  There will certainly be technical stories to upgrade rubygem dependencies, which would require technical stories to accomplish.

Intriguing post, I really enjoyed it.</description>
		<content:encoded><![CDATA[<p>Ok, I don&#8217;t think any of us are disagreeing.  However, I think the term &#8220;technical story&#8221; means something more specific to me.</p>
<p>Technical stories, in my opinion, are cards which are non-demonstrable dependencies required to implement a feature that was requested.  A task that the client didn&#8217;t request to be done, but is required to fulfill another needed task.</p>
<p>Example: The client may ask us to move from rails 2.2 to 2.3 to give them access to new capabilities.  There will certainly be technical stories to upgrade rubygem dependencies, which would require technical stories to accomplish.</p>
<p>Intriguing post, I really enjoyed it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Goerlich</title>
		<link>http://www.designinginteractive.com/agile/thoughts-on-technical-stories/comment-page-1/#comment-1080</link>
		<dc:creator>Dave Goerlich</dc:creator>
		<pubDate>Thu, 14 Jan 2010 04:05:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.designinginteractive.com/?p=855#comment-1080</guid>
		<description>I&#039;m specifically talking about efforts of a size large enough to warrant management equal to that of an MMF - something large enough to be broken down into multiple story cards.  For example, updating a client&#039;s application to work on a newer version of a development library or framework (Sandstone 2.0 to 4.0, Rails 1.x to Rails 2.x, .NET Framework 2.0 to 3.0, etc), or as Jack mentioned in his article - converting from MySQL to Oracle.  Perhaps even the conversion of an application from one language to another (PHP to Ruby).

I mentioned security issues in this context - where the only available methodology for patching a hole in a framework might be upgrading to a newer version.  The value to the customer here is the avoidance of the cost of compromised security.  It&#039;s our job to educate the customer of the true and accurate risks involved, the value of the completed task, and let them prioritize.

Of course, I would never advocate such infrastructure upgrade tasks simply for the sake of upgrade.  There must be a definable value to the customer.

You are correct, bug fixes aren&#039;t billable.  Fundamental refactoring of code while working on it isn&#039;t separately billable either - it&#039;s simply part of the development process and is therefore &quot;built in&quot; to the points of each story.</description>
		<content:encoded><![CDATA[<p>I&#8217;m specifically talking about efforts of a size large enough to warrant management equal to that of an MMF &#8211; something large enough to be broken down into multiple story cards.  For example, updating a client&#8217;s application to work on a newer version of a development library or framework (Sandstone 2.0 to 4.0, Rails 1.x to Rails 2.x, .NET Framework 2.0 to 3.0, etc), or as Jack mentioned in his article &#8211; converting from MySQL to Oracle.  Perhaps even the conversion of an application from one language to another (PHP to Ruby).</p>
<p>I mentioned security issues in this context &#8211; where the only available methodology for patching a hole in a framework might be upgrading to a newer version.  The value to the customer here is the avoidance of the cost of compromised security.  It&#8217;s our job to educate the customer of the true and accurate risks involved, the value of the completed task, and let them prioritize.</p>
<p>Of course, I would never advocate such infrastructure upgrade tasks simply for the sake of upgrade.  There must be a definable value to the customer.</p>
<p>You are correct, bug fixes aren&#8217;t billable.  Fundamental refactoring of code while working on it isn&#8217;t separately billable either &#8211; it&#8217;s simply part of the development process and is therefore &#8220;built in&#8221; to the points of each story.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Penn</title>
		<link>http://www.designinginteractive.com/agile/thoughts-on-technical-stories/comment-page-1/#comment-1079</link>
		<dc:creator>Jonathan Penn</dc:creator>
		<pubDate>Thu, 14 Jan 2010 03:50:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.designinginteractive.com/?p=855#comment-1079</guid>
		<description>Thanks for sharing your observations, Dave.

I don&#039;t think I can disagree with the quote you shared from Jack, though. It sounds like you&#039;re thinking of yourself as a customer of some theoretical dev firm. You, as an established developer, would of course find business value in learning about the unit tests from such a firm. I would expect an audit of these tests to be how you, specifically, would sign off on the stories.

But, I bet that none of DI&#039;s clients would care about a story about &quot;unit tests&quot;.  They want to know it works, of course, but &quot;unit test&quot; is the kind of phrase we should avoid with customers. They are the &quot;eye glazing&quot; phrases that distance us from their world and make us seem mystical.

The whole point of keeping close ties to the customer is to close that distance and to work hard to communicate on their terms at all costs.</description>
		<content:encoded><![CDATA[<p>Thanks for sharing your observations, Dave.</p>
<p>I don&#8217;t think I can disagree with the quote you shared from Jack, though. It sounds like you&#8217;re thinking of yourself as a customer of some theoretical dev firm. You, as an established developer, would of course find business value in learning about the unit tests from such a firm. I would expect an audit of these tests to be how you, specifically, would sign off on the stories.</p>
<p>But, I bet that none of DI&#8217;s clients would care about a story about &#8220;unit tests&#8221;.  They want to know it works, of course, but &#8220;unit test&#8221; is the kind of phrase we should avoid with customers. They are the &#8220;eye glazing&#8221; phrases that distance us from their world and make us seem mystical.</p>
<p>The whole point of keeping close ties to the customer is to close that distance and to work hard to communicate on their terms at all costs.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Josh Walsh</title>
		<link>http://www.designinginteractive.com/agile/thoughts-on-technical-stories/comment-page-1/#comment-1078</link>
		<dc:creator>Josh Walsh</dc:creator>
		<pubDate>Thu, 14 Jan 2010 03:37:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.designinginteractive.com/?p=855#comment-1078</guid>
		<description>&lt;blockquote&gt;Better system stability, lower vulnerability to security or other malicious attacks, enhanced scalability and more robust disaster recovery all intrinsically add value to a system.  Value can also come in the form of more efficient future development, and the associated reduction in cost or schedule.&lt;/blockquote&gt;

It sounds as though you advocate billing the client directly for refactoring without any demonstrable added value.  Is that true?

If refactoring would improve the development cycle of additional demonstrable features, then it shouldn&#039;t be implemented until those features are needed.

Security holes are a different story.  If we (the developers) discover a security exploit in our code, we should just fix it.  There is no reason to notify the client of the exploit unless there are side effects they should know about.  We do this all the time.  If the client finds a vulnerability then it&#039;s a bug from their perspective, which we don&#039;t bill for.

Thoughts?</description>
		<content:encoded><![CDATA[<blockquote><p>Better system stability, lower vulnerability to security or other malicious attacks, enhanced scalability and more robust disaster recovery all intrinsically add value to a system.  Value can also come in the form of more efficient future development, and the associated reduction in cost or schedule.</p></blockquote>
<p>It sounds as though you advocate billing the client directly for refactoring without any demonstrable added value.  Is that true?</p>
<p>If refactoring would improve the development cycle of additional demonstrable features, then it shouldn&#8217;t be implemented until those features are needed.</p>
<p>Security holes are a different story.  If we (the developers) discover a security exploit in our code, we should just fix it.  There is no reason to notify the client of the exploit unless there are side effects they should know about.  We do this all the time.  If the client finds a vulnerability then it&#8217;s a bug from their perspective, which we don&#8217;t bill for.</p>
<p>Thoughts?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

