<?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: Managing Software Debt &#8211; article</title>
	<atom:link href="http://www.gettingagile.com/2008/10/20/managing-software-debt-article/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/</link>
	<description>with Sterling Barton</description>
	<lastBuildDate>Fri, 19 Feb 2010 16:23:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Chris Sterling</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-104</link>
		<dc:creator>Chris Sterling</dc:creator>
		<pubDate>Mon, 05 Oct 2009 02:09:47 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-104</guid>
		<description>I agree if your perspective is right in terms of only 1 &quot;right&quot; type of person for all software projects. Maybe I did a poor job of discussing that right means, in this case, for the job at hand. Java people working on Java projects. I did not mean a superior software developer that is amazing in all aspects of all domains and platforms.</description>
		<content:encoded><![CDATA[<p>I agree if your perspective is right in terms of only 1 &#8220;right&#8221; type of person for all software projects. Maybe I did a poor job of discussing that right means, in this case, for the job at hand. Java people working on Java projects. I did not mean a superior software developer that is amazing in all aspects of all domains and platforms.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: King</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-103</link>
		<dc:creator>King</dc:creator>
		<pubDate>Thu, 01 Oct 2009 23:09:55 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-103</guid>
		<description>One thing I do not understand is SCRUM prescribing about &quot;RIGHT or highly skilled people&quot; as part of scrum to be more effective. I personally feel that SCRUM/AGILE is indirectly encouraging the technical rascism among the software world. I beleive who ever working, are very well qualified and if they are not qualified, they wont be hired in the first place.
If one has highly skilled people to start with, then why do we need to follow scrum but not any other frameworks. Highlly skilled/right people will always succeed no matter what framework they use. So, we need to stop the scrap about &quot;Right/highly skilled people&quot; requirement/prescription as part of Agile/Scrum. Though scrum is good but it indirectly INVESTs in creating divisions in the software industry too.</description>
		<content:encoded><![CDATA[<p>One thing I do not understand is SCRUM prescribing about &#8220;RIGHT or highly skilled people&#8221; as part of scrum to be more effective. I personally feel that SCRUM/AGILE is indirectly encouraging the technical rascism among the software world. I beleive who ever working, are very well qualified and if they are not qualified, they wont be hired in the first place.<br />
If one has highly skilled people to start with, then why do we need to follow scrum but not any other frameworks. Highlly skilled/right people will always succeed no matter what framework they use. So, we need to stop the scrap about &#8220;Right/highly skilled people&#8221; requirement/prescription as part of Agile/Scrum. Though scrum is good but it indirectly INVESTs in creating divisions in the software industry too.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Refactoring is Not the Same as Re-Designing &#171; What&#8217;s it all about, Alfie?</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-102</link>
		<dc:creator>Refactoring is Not the Same as Re-Designing &#171; What&#8217;s it all about, Alfie?</dc:creator>
		<pubDate>Thu, 09 Jul 2009 11:18:52 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-102</guid>
		<description>[...] found this article that does a reasonably good job of describing it. It&#039;s something that you have to be [...]</description>
		<content:encoded><![CDATA[<p>[...] found this article that does a reasonably good job of describing it. It&#39;s something that you have to be [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paying Down Technical Debt &#124; BrandonSavage.net</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-101</link>
		<dc:creator>Paying Down Technical Debt &#124; BrandonSavage.net</dc:creator>
		<pubDate>Mon, 23 Mar 2009 12:35:07 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-101</guid>
		<description>[...] has been written about technical debt, and the way it&#8217;s both accrued and paid off. For the [...]</description>
		<content:encoded><![CDATA[<p>[...] has been written about technical debt, and the way it&#8217;s both accrued and paid off. For the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jen</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-96</link>
		<dc:creator>Jen</dc:creator>
		<pubDate>Tue, 23 Dec 2008 16:02:07 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-96</guid>
		<description>Hi Chris--

Great article! I&#039;d like to reprint this post on pmboulevard.com in our January 19 issue. Please email me to talk specifics.

Best Regards,

Jen Girdish</description>
		<content:encoded><![CDATA[<p>Hi Chris&#8211;</p>
<p>Great article! I&#8217;d like to reprint this post on pmboulevard.com in our January 19 issue. Please email me to talk specifics.</p>
<p>Best Regards,</p>
<p>Jen Girdish</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Managing Tech &#187; Blog Archive &#187; Hitmeister Optimierungs Tage - unsere Erfahrung mit Sprints, Scrums und co</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-100</link>
		<dc:creator>Managing Tech &#187; Blog Archive &#187; Hitmeister Optimierungs Tage - unsere Erfahrung mit Sprints, Scrums und co</dc:creator>
		<pubDate>Mon, 01 Dec 2008 19:27:47 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-100</guid>
		<description>[...] sie. Eine gute Analogie sind Schulden, die immer weiter anwachsen. Im Englischen nennt man das auch technical debt oder so karmic debit. Wir wollten bei Hitmeister mal was f&#252;r unser Karma tun. Das Ziel war es [...]</description>
		<content:encoded><![CDATA[<p>[...] sie. Eine gute Analogie sind Schulden, die immer weiter anwachsen. Im Englischen nennt man das auch technical debt oder so karmic debit. Wir wollten bei Hitmeister mal was f&#252;r unser Karma tun. Das Ziel war es [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Josh Gough</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-99</link>
		<dc:creator>Josh Gough</dc:creator>
		<pubDate>Sat, 08 Nov 2008 17:22:01 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-99</guid>
		<description>This is a great article. Our team is reviewing our technical debt and trying to be more proactive in preventing it from piling up. I think part of what leads to this debt, at least in our case, was an over-reliance on the idea that the pre-existing code in our system was &quot;already tested&quot;. It ended up having to be modified heavily.

So, we ended up with a Regression Test Suite Debt, in that we had no automated regression tests and no performance / load tests against which to measure the system at the end of a long big-bang rewrite.

We took steps to correct this by introducing automated testing using Selenium and web load tools.

However, convincing reluctant management who already see a project over-budget and running longer than they wished is not an easy task. Eventually we adopted Scrum and other agile practices to help us prioritize on delivery requirements.

When it comes to debt that is piling up, you really have to operate on principle. This means you probably have to &quot;draw a line in the sand&quot; when you know that the debt is too large and it must be addressed NOW, before disaster occurs later.

This does not mean you do not negotiate, far from it. However, you must set forth the principle that you, as a technical person, will not proceed with decisions made by someone else that you feel are ill-advised and worsen the debt. If you ever feel pressured into into making decisions to continue piling up debt, think about this:

1) If you accept the decision and proceed, and utter failure occurs as you predicted, does it make it any better that it wasn&#039;t your decision in the first place?

The likely answer is no, it does not make it better. There is very little satisfaction in seeing a failure occur that you had anticipated and failed to prevent, regardless of whether it&#039;s your decision of somebody else&#039;s.

2) If you argue the decision and insist that the debt must be paid down, what is the worst that could happen?

Will they fire you? They likely will not. If they do, you&#039;re probably better off elsewhere anyway if you&#039;ve been warning of the debt for a long time and they continue to ignore it.

3) Finally, sometimes you can remind them that the reason the debt is high is that they made decisions early on not to slow down, knowing that the debt would have to be removed later. But, make sure they understand that THERE IS DEBT. If they don&#039;t even believe that there is debt, then your task is more difficult.

Finally...

After all is said and done, the team as a whole is responsible for the quality of a system, not one individual. If a team denies responsibility and blames &quot;management decisions&quot;, then the team has not tried hard enough or has not been smart enough to solve the problem.

Development, in groups larger than one, is a team sport, and that is why the Scrum metaphor works well. It is not easy, and it requires constant communication and attention, but</description>
		<content:encoded><![CDATA[<p>This is a great article. Our team is reviewing our technical debt and trying to be more proactive in preventing it from piling up. I think part of what leads to this debt, at least in our case, was an over-reliance on the idea that the pre-existing code in our system was &#8220;already tested&#8221;. It ended up having to be modified heavily.</p>
<p>So, we ended up with a Regression Test Suite Debt, in that we had no automated regression tests and no performance / load tests against which to measure the system at the end of a long big-bang rewrite.</p>
<p>We took steps to correct this by introducing automated testing using Selenium and web load tools.</p>
<p>However, convincing reluctant management who already see a project over-budget and running longer than they wished is not an easy task. Eventually we adopted Scrum and other agile practices to help us prioritize on delivery requirements.</p>
<p>When it comes to debt that is piling up, you really have to operate on principle. This means you probably have to &#8220;draw a line in the sand&#8221; when you know that the debt is too large and it must be addressed NOW, before disaster occurs later.</p>
<p>This does not mean you do not negotiate, far from it. However, you must set forth the principle that you, as a technical person, will not proceed with decisions made by someone else that you feel are ill-advised and worsen the debt. If you ever feel pressured into into making decisions to continue piling up debt, think about this:</p>
<p>1) If you accept the decision and proceed, and utter failure occurs as you predicted, does it make it any better that it wasn&#8217;t your decision in the first place?</p>
<p>The likely answer is no, it does not make it better. There is very little satisfaction in seeing a failure occur that you had anticipated and failed to prevent, regardless of whether it&#8217;s your decision of somebody else&#8217;s.</p>
<p>2) If you argue the decision and insist that the debt must be paid down, what is the worst that could happen?</p>
<p>Will they fire you? They likely will not. If they do, you&#8217;re probably better off elsewhere anyway if you&#8217;ve been warning of the debt for a long time and they continue to ignore it.</p>
<p>3) Finally, sometimes you can remind them that the reason the debt is high is that they made decisions early on not to slow down, knowing that the debt would have to be removed later. But, make sure they understand that THERE IS DEBT. If they don&#8217;t even believe that there is debt, then your task is more difficult.</p>
<p>Finally&#8230;</p>
<p>After all is said and done, the team as a whole is responsible for the quality of a system, not one individual. If a team denies responsibility and blames &#8220;management decisions&#8221;, then the team has not tried hard enough or has not been smart enough to solve the problem.</p>
<p>Development, in groups larger than one, is a team sport, and that is why the Scrum metaphor works well. It is not easy, and it requires constant communication and attention, but</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kurt Häusler</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-98</link>
		<dc:creator>Kurt Häusler</dc:creator>
		<pubDate>Wed, 05 Nov 2008 13:52:16 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-98</guid>
		<description>Very interesting article. Especially how you listed Technical Debt as a sub category of Software Debt alongside other aspects of Software Debt (such as Quality Debt and Design Debt etc.)

Is this your own innovation or do others use a similar categorization? Up until now I have considered Software Debt and Technical Debt to be synonyms and included the other aspects within.

Except I think that Configuration Management Debt and Platform Experience Debt are more symptoms of Software Debt rather that components, or causes of it.

Also thought provoking is the idea of listing technical debt payback tasks in the same list as all other tasks, which implies, to me at least, that we can quantify it in the same way as the other tasks for example as story points.

I look forward to your further posts on the topic.</description>
		<content:encoded><![CDATA[<p>Very interesting article. Especially how you listed Technical Debt as a sub category of Software Debt alongside other aspects of Software Debt (such as Quality Debt and Design Debt etc.)</p>
<p>Is this your own innovation or do others use a similar categorization? Up until now I have considered Software Debt and Technical Debt to be synonyms and included the other aspects within.</p>
<p>Except I think that Configuration Management Debt and Platform Experience Debt are more symptoms of Software Debt rather that components, or causes of it.</p>
<p>Also thought provoking is the idea of listing technical debt payback tasks in the same list as all other tasks, which implies, to me at least, that we can quantify it in the same way as the other tasks for example as story points.</p>
<p>I look forward to your further posts on the topic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Derek Winter</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-95</link>
		<dc:creator>Derek Winter</dc:creator>
		<pubDate>Mon, 27 Oct 2008 00:41:04 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-95</guid>
		<description>Excellent article. I read this having recently discussed the &#039;broken windows&#039; metaphor used in Andy Hunt and Dave Thomas&#039;s &quot;Pragmatic Programmer&quot;.

As a software house that delivers bespoke software solutions to corporate customers we grapple with the issue of managing &#039;software debt&#039; in the context of getting the customer to understand the issue enough to justify the budget for re-factoring. This is not always an easy task.

Our development team continue to explore the best ways to enact the principles of agile development and translating that into a commercially viable offering.

Experience plays a big part in judging whether there is sufficient time in the schedule of a project to allow re-factoring to occur even if the benefits and long term advantages are clear.</description>
		<content:encoded><![CDATA[<p>Excellent article. I read this having recently discussed the &#8216;broken windows&#8217; metaphor used in Andy Hunt and Dave Thomas&#8217;s &#8220;Pragmatic Programmer&#8221;.</p>
<p>As a software house that delivers bespoke software solutions to corporate customers we grapple with the issue of managing &#8217;software debt&#8217; in the context of getting the customer to understand the issue enough to justify the budget for re-factoring. This is not always an easy task.</p>
<p>Our development team continue to explore the best ways to enact the principles of agile development and translating that into a commercially viable offering.</p>
<p>Experience plays a big part in judging whether there is sufficient time in the schedule of a project to allow re-factoring to occur even if the benefits and long term advantages are clear.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: T-Enterprise</title>
		<link>http://www.gettingagile.com/2008/10/20/managing-software-debt-article/comment-page-1/#comment-97</link>
		<dc:creator>T-Enterprise</dc:creator>
		<pubDate>Mon, 20 Oct 2008 22:01:46 +0000</pubDate>
		<guid isPermaLink="false">http://chrissterling.gettingagile.com/?p=169#comment-97</guid>
		<description>Nice article.  I remember having to try and decypher someone elses code whilst backing up every single change and thoroughly testing it before moving onto another change.</description>
		<content:encoded><![CDATA[<p>Nice article.  I remember having to try and decypher someone elses code whilst backing up every single change and thoroughly testing it before moving onto another change.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
