<?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: Quality is a bogus variable</title>
	<atom:link href="http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/feed/" rel="self" type="application/rss+xml" />
	<link>http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/</link>
	<description>Mostly about the management of software development</description>
	<lastBuildDate>Wed, 27 Jan 2010 09:48:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Fast, Cheap, Good &#171; Said Svec</title>
		<link>http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/comment-page-1/#comment-55</link>
		<dc:creator>Fast, Cheap, Good &#171; Said Svec</dc:creator>
		<pubDate>Sat, 30 Sep 2006 18:07:06 +0000</pubDate>
		<guid isPermaLink="false">http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/#comment-55</guid>
		<description>[...] Edit: Niksilver.com has some interesting comments on &#8220;good&#8221;. [...]</description>
		<content:encoded><![CDATA[<p>[...] Edit: Niksilver.com has some interesting comments on &#8220;good&#8221;. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nik</title>
		<link>http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/comment-page-1/#comment-54</link>
		<dc:creator>Nik</dc:creator>
		<pubDate>Sat, 30 Sep 2006 15:18:21 +0000</pubDate>
		<guid isPermaLink="false">http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/#comment-54</guid>
		<description>Mishkin, you touch on two very important areas which really need their own separate exploration, but are worth at least identifying in brief.

I really feel for the support team you describe, and to me this is all about &quot;whole teams&quot;. Whole teams must work together and be empowered to create the system. But once it goes into production most of that team often disappears and it&#039;s just the support people who are left. The team is no longer whole. The support people cannot possibly have the power to make improvements when those improvements really are the domain of the long-departed developers.

The other area relates to common understanding. You&#039;re hinting at the point (which I didn&#039;t consider) that while it&#039;s one thing for the developers to report technical debt, it&#039;s quite another for the rest of the business to understand what they&#039;re being told. It does relate to truthfulness, your hot topic, but it&#039;s also apparent that truthfulness is going to be very hard to attain if your two parties don&#039;t understand each other in the first place. And it&#039;s not helped that quality is rather intangible in the way that time and budget are not.

That issue of common understanding also takes us right back to the beginning: is quality about a bug count (nice and tangible) or about the bigger issues including usability, architecture, scaleability, etc? I suspect that because developers see a different side of the software from the client there will often be a mismatch on this issue. Maybe the most we can hope for is that whole teams in constant communication with each other will be able to agree among themselves on a per-project basis, even if there isn&#039;t ever a single standard understanding throughout everyone in the industry.</description>
		<content:encoded><![CDATA[<p>Mishkin, you touch on two very important areas which really need their own separate exploration, but are worth at least identifying in brief.</p>
<p>I really feel for the support team you describe, and to me this is all about &#8220;whole teams&#8221;. Whole teams must work together and be empowered to create the system. But once it goes into production most of that team often disappears and it&#8217;s just the support people who are left. The team is no longer whole. The support people cannot possibly have the power to make improvements when those improvements really are the domain of the long-departed developers.</p>
<p>The other area relates to common understanding. You&#8217;re hinting at the point (which I didn&#8217;t consider) that while it&#8217;s one thing for the developers to report technical debt, it&#8217;s quite another for the rest of the business to understand what they&#8217;re being told. It does relate to truthfulness, your hot topic, but it&#8217;s also apparent that truthfulness is going to be very hard to attain if your two parties don&#8217;t understand each other in the first place. And it&#8217;s not helped that quality is rather intangible in the way that time and budget are not.</p>
<p>That issue of common understanding also takes us right back to the beginning: is quality about a bug count (nice and tangible) or about the bigger issues including usability, architecture, scaleability, etc? I suspect that because developers see a different side of the software from the client there will often be a mismatch on this issue. Maybe the most we can hope for is that whole teams in constant communication with each other will be able to agree among themselves on a per-project basis, even if there isn&#8217;t ever a single standard understanding throughout everyone in the industry.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mishkin Berteig</title>
		<link>http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/comment-page-1/#comment-53</link>
		<dc:creator>Mishkin Berteig</dc:creator>
		<pubDate>Sat, 30 Sep 2006 02:04:19 +0000</pubDate>
		<guid isPermaLink="false">http://niksilver.com/2006/09/26/quality-is-a-bogus-variable/#comment-53</guid>
		<description>Thanks for writing this!  I agree with many of the things you are saying.  I recently taught a course where there were several support folks in the audience.  Their problem was complex in its details, but fundamentally it came down to them not being empowered to _really_ fix their users&#039; problems.  Everything they did was surface patches, bandaids, appeasment, etc.  In a lean environment (and I admit to not being an expert here), my understanding is that any time a quality problem is found (in the large sense, not just in the &quot;bug&quot; sense), everyone stops what they are doing and fixes the problem... but not just the surface problem, but the root cause of the problem so that hopefully, the problem never re-surfaces again.  For a support organization, that would mean that instead of providing one-off workarounds to users, the support people would solve the problem so that it never happened again.  In fact, a support organization (e.g. a help desk) could be thought of as the sensory apparatus for detecting quality problems.  A user calls and says &quot;how do I do X&quot;? and the support organization will normally just tell the user how to do X.  But wouldn&#039;t it be better if the support organization also figured out how to make it so that no user would ever have to call and ask that question again?  This gets to your comments about quality including usability, performance, etc.  The trouble with this encompassing definition of quality is that it is in fact never perfectly attainable.  That is also the good thing about this definition: it provides a very high standard to which we can aspire, and always find ways to move towards.  This gets to my belief that with software we are ultimately looking to create the perfect servant: an uber-system which can do what we want and need before we even know it... and that&#039;s an intro to a huge topic in and of itself!!!

Also, thanks for calling me on the arrogant comment.  You are right: that is arrogant.  I guess that lately I&#039;ve been very focused on the idea of truthfulness and how incredibly foundational it is to being able to do valuable work.  Again, a long discussion, but I think that we have a long way to go in developing our ability to be truthful.  This isn&#039;t something that can be enforced with a process, and yet it is at the very core of what I think of as &quot;agile&quot;.  Now to get back to my comment...  The problem with technical debt is that most organizations aren&#039;t really aware of the conseqences of allowing it to build up.  We have a good understanding of financial debt: debt ratios, cash flow, assets vs. liabilities, etc.  But when it comes to technical debt, it is a lot harder to measure, it is often obsure or hidden, and it is often incurred without the _informed_ consent of those who are taking the risks, namely the owners of the business funding the software development.  This is where we get into a bit of trouble.  Software development is a black art, an esoteric discipline.  It is difficult to truly communicate the consequences of technical debt to the people who should be making the decisions about that debt.  In fact, I think that software developers often don&#039;t know the consequences.</description>
		<content:encoded><![CDATA[<p>Thanks for writing this!  I agree with many of the things you are saying.  I recently taught a course where there were several support folks in the audience.  Their problem was complex in its details, but fundamentally it came down to them not being empowered to _really_ fix their users&#8217; problems.  Everything they did was surface patches, bandaids, appeasment, etc.  In a lean environment (and I admit to not being an expert here), my understanding is that any time a quality problem is found (in the large sense, not just in the &#8220;bug&#8221; sense), everyone stops what they are doing and fixes the problem&#8230; but not just the surface problem, but the root cause of the problem so that hopefully, the problem never re-surfaces again.  For a support organization, that would mean that instead of providing one-off workarounds to users, the support people would solve the problem so that it never happened again.  In fact, a support organization (e.g. a help desk) could be thought of as the sensory apparatus for detecting quality problems.  A user calls and says &#8220;how do I do X&#8221;? and the support organization will normally just tell the user how to do X.  But wouldn&#8217;t it be better if the support organization also figured out how to make it so that no user would ever have to call and ask that question again?  This gets to your comments about quality including usability, performance, etc.  The trouble with this encompassing definition of quality is that it is in fact never perfectly attainable.  That is also the good thing about this definition: it provides a very high standard to which we can aspire, and always find ways to move towards.  This gets to my belief that with software we are ultimately looking to create the perfect servant: an uber-system which can do what we want and need before we even know it&#8230; and that&#8217;s an intro to a huge topic in and of itself!!!</p>
<p>Also, thanks for calling me on the arrogant comment.  You are right: that is arrogant.  I guess that lately I&#8217;ve been very focused on the idea of truthfulness and how incredibly foundational it is to being able to do valuable work.  Again, a long discussion, but I think that we have a long way to go in developing our ability to be truthful.  This isn&#8217;t something that can be enforced with a process, and yet it is at the very core of what I think of as &#8220;agile&#8221;.  Now to get back to my comment&#8230;  The problem with technical debt is that most organizations aren&#8217;t really aware of the conseqences of allowing it to build up.  We have a good understanding of financial debt: debt ratios, cash flow, assets vs. liabilities, etc.  But when it comes to technical debt, it is a lot harder to measure, it is often obsure or hidden, and it is often incurred without the _informed_ consent of those who are taking the risks, namely the owners of the business funding the software development.  This is where we get into a bit of trouble.  Software development is a black art, an esoteric discipline.  It is difficult to truly communicate the consequences of technical debt to the people who should be making the decisions about that debt.  In fact, I think that software developers often don&#8217;t know the consequences.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
