<?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>You Want IT When? &#187; Reflection</title>
	<atom:link href="http://www.yuwantitwhen.com/blog/category/reflection/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yuwantitwhen.com/blog</link>
	<description>Practical methods for successful software management.</description>
	<lastBuildDate>Mon, 26 Oct 2009 00:54:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Three Stages of Truth</title>
		<link>http://www.yuwantitwhen.com/blog/2009/03/22/three-stages-of-truth/</link>
		<comments>http://www.yuwantitwhen.com/blog/2009/03/22/three-stages-of-truth/#comments</comments>
		<pubDate>Sun, 22 Mar 2009 23:28:57 +0000</pubDate>
		<dc:creator>Bill Miller</dc:creator>
				<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Critique]]></category>

		<guid isPermaLink="false">http://www.yuwantitwhen.com/blog/?p=436</guid>
		<description><![CDATA[Well, here we are with the aftermaths of a stock market bubble and a housing bubble.  Traditional truths that were formerly ridiculed are suddenly accepted as being self-evident.]]></description>
			<content:encoded><![CDATA[<p><strong>All truth passes through three stages.</strong></p>
<p><em>First, it is ridiculed,<br />
second, it is violently opposed,<br />
third, it is accepted as being self-evident.</em></p>
<p>- <a href="http://en.wikipedia.org/wiki/Arthur_Schopenhauer">Arthur Schopenhauer<span id="more-436"></span></a></p>
<p>Our society has passed through thirty years of tearing down established wisdom.  We&#8217;ve witnessed a housing bubble where the traditional thinkers were ridiculed.  We&#8217;ve witnessed a stock market bubble where the traditional thinkers were ridiculed.  We&#8217;ve witnessed many business practices embraced where the traditional thinkers were ridiculed.</p>
<p>We&#8217;ve witnessed long established truths replaced with popular theories.  They seemingly worked for a while, which reinforced their support and broadened the appeal, but as they were working, they were sowing the seeds of their own destruction.</p>
<p>Well, here we are with the aftermaths of a stock market bubble and a housing bubble.  Traditional truths that were formerly ridiculed are suddenly accepted as being self-evident.</p>
<p>Oh, the stages truth must pass through to become accepted, and oh, the damage wrought until then.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuwantitwhen.com/blog/2009/03/22/three-stages-of-truth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Focus on the Short Term is Dumb</title>
		<link>http://www.yuwantitwhen.com/blog/2009/03/12/focus-on-the-short-term-is-dumb/</link>
		<comments>http://www.yuwantitwhen.com/blog/2009/03/12/focus-on-the-short-term-is-dumb/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 02:27:03 +0000</pubDate>
		<dc:creator>Bill Miller</dc:creator>
				<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Stategy]]></category>

		<guid isPermaLink="false">http://www.yuwantitwhen.com/blog/?p=420</guid>
		<description><![CDATA[Corporate obsession with short-term profits has been a contributing force behind the adoption and advocacy of the Agile Software practices.  As I've argued repeatedly, customer satisfaction and product success isn't about process or delivering faster, it's about creating a great user experience.  Customer value is a result of building a great product; building a great product is the strategy; customer satisfication is the by-product.  In fact, short incremental releases often result in less customer satisfaction, not more.  ]]></description>
			<content:encoded><![CDATA[<blockquote><p>&#8220;Jack Welch, who is regarded as father of the &#8220;shareholder value&#8221; movement, has said the obsession with short-term profits and share price gains that has dominated the corporate world for over 20 years was &#8220;a dumb idea&#8221;. &#8221;<br />
&#8211; Jack Welch</p></blockquote>
<p>Jack goes on to say,</p>
<blockquote><p>&#8220;On the face of it, shareholder value is the dumbest idea in the world,&#8221; he said. &#8220;Shareholder value is a result, not a strategy&#8230;your main constituencies are your employees, your customers and your products.&#8221;<br />
&#8211; Jack Welch</p></blockquote>
<p><span id="more-420"></span></p>
<p>Read the Financial Times article <a href="http://us.ft.com/ftgateway/superpage.ft?news_id=fto031220091430053057">Welch rues short-term profit &#8216;obsession&#8217;</a></p>
<p>Corporate obsession with short-term profits has been a contributing force behind the adoption and advocacy of the Agile Software practices.  As I&#8217;ve argued repeatedly, customer satisfaction and product success isn&#8217;t about process or delivering faster, it&#8217;s about creating a great user experience. </p>
<p>Customer value is a result of building a great product; building a great product is the strategy; customer satisfication is the by-product.  In fact, short incremental releases often result in less customer satisfaction, not greater.  </p>
<p>Customers are not the software team&#8217;s QA department or product marketing team.  </p>
<p>If you need the customer to tell you exactly what to build, you aren&#8217;t the team to deliver on outstanding customer value.  If the customer needs to be a constantly contributing member of your team, you DEFINITELY ARE NOT building the next thing. </p>
<p>Great people committed to teamwork build great products.  Teamwork is the only time when it&#8217;s possible for 1 + 1 to equal 3.  Great teamwork is the only instance when the whole is greater than the sum of its parts.  While individuals are important, the team is most important.  Good process is a manifestation of GOOD TEAMWORK.  Agile&#8217;s emphasis on individuals is misplaced. </p>
<p>Our culture&#8217;s obsession with individual&#8217;s interest over society&#8217;s interest is what brought us to this inauspicious moment in history.  Perhaps we can once again embrace the principles and values that run throughout every modern religion and put the interest of mankind first. </p>
<p>We do this in business and software development by putting the interests of the company, the shareholders, the customers and the team first.  We lost those priorities along the way with our avarice and obsessive focus on stock options, the stock price, bonuses, and empty careerism.   Where&#8217;s the &#8220;I&#8221; in teamwork? It isn&#8217;t.</p>
<p>I&#8217;ve been away from <em>blogging</em> on software while I&#8217;m busy with another project that unfortunately is consuming all of my spare time.   I couldn&#8217;t resist commenting on this article because it rebuked the culture that brought us all here to this moment.  We get angry at Wall Street for taking huge bonuses while their companies are sinking and receiving bailouts from the taxpayer, but we&#8217;ve all been part of that culture of excess and greed.  It&#8217;s time to begin heeding the words in the Michale Jackson song:</p>
<blockquote>
<p style="TEXT-ALIGN: center">If You Wanna Make The World A Better Place<br />
(If You Wanna Make The World A Better Place)<br />
Take A Look At Yourself, And Then Make A Change<br />
&#8211; Michael Jackson, Man In The Mirror</p></blockquote>
<p>It&#8217;s nice to see that &#8220;Old School&#8221; Values are making a comeback.  Too bad, we have to pay such a painful price to learn what we should have known.   The Agile movement had one thing right: CHANGE IS GOOD. It&#8217;s time to CHANGE! This is our wake up call.   WAKE UP!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuwantitwhen.com/blog/2009/03/12/focus-on-the-short-term-is-dumb/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Reflection: Weighing the Future</title>
		<link>http://www.yuwantitwhen.com/blog/2008/04/30/reflection-weighing-the-future/</link>
		<comments>http://www.yuwantitwhen.com/blog/2008/04/30/reflection-weighing-the-future/#comments</comments>
		<pubDate>Wed, 30 Apr 2008 06:01:42 +0000</pubDate>
		<dc:creator>Bill Miller</dc:creator>
				<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Requirements]]></category>

		<guid isPermaLink="false">http://www.yuwantitwhen.com/blog/?p=49</guid>
		<description><![CDATA[In the business of product development striking the proper balance between present requirements and anticipating future needs is an art, requiring a mixture of experience, talent, knowledge, and vision.  It's essentially a function of leadership, leadership that seeks council and then decides.  Those leaders who strike the right balance win and secure longevity in the marketplace.  Those leaders who wrongly favor the present are doomed to a regrettable future since opportunity is realized when good decisions about the future are made in the present.
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.yuwantitwhen.com/blog/wp-content/images/reflection.jpg" alt="" width="245" height="173" /></p>
<p>When I review the articles published to this site over the last quarter, there is a dominate theme for the quarter.   The theme deals with the mistaken trade-offs of delivering products faster.  Our culture has become increasingly impetuous.  Many buy homes without saving for down payments.  Many lease to drive cars that would be, otherwise, too expensive to purchase outright.  The investment community has become increasingly speculative where promising high risk investments are outrageously favored over modestly priced companies with strong balance sheets, good earnings, and promising but modest growth rates.  Parents purchase new vehicles for their high school children instead of teaching the lessons of working and saving to get what they desire. Executives destroy the balance sheets of great companies to satisfy Wall Streets expectations for quarterly earnings.  Political candidates maliciously and falsely tarnish the character of their opponent rather than invest in the hard work to make the case for their policies and leadership.  In software, many start coding before completing sufficient analysis and design, and many accept requirements change without fully analyzing the impacts. Society increasingly mobilizes to satisfy its desires and needs quickly; however, satiating too quickly comes with grave consequences as we are seeing in our economy today.</p>
<p><span id="more-49"></span></p>
<p>I fear little-by-little we&#8217;re losing the culture that has made America the eminent economy of the world: the culture of preparing intelligently for the future.  We&#8217;re forgetting the lessons of <a href="http://www.bartleby.com/17/1/36.html">Aesop Fables, &#8220;The Ant and the Grasshopper:&#8221;</a> the lesson of sacrifice and preparation today for tomorrow&#8217;s needs.   The future is a current requirement.  It&#8217;s why we save in 401(k) plans for retirement.  It&#8217;s why we send our children to school.  It&#8217;s why we purchase insurance policies.  Without proper investment in the future, today, the future, that we arrive at tomorrow, is likely to be regrettable.</p>
<p>Of course, there is a balance that needs to be struck between today and tomorrow.  The proper mixture cannot be reduced to a formula or a set of rules. The right balance is unique to every situation.   Sometimes the balance favors the future as children spend most of their time in school preparing for the future.  Other times, the balance favors the present when health issues strike.</p>
<p>I recall an interesting study presented on 60 Minutes a number of years back.  The study concluded that those who are able to postpone present gratification for the promise of a larger future benefit are more likely to be successful.   Isn&#8217;t that the promise of a college education?  Doing the hard work, today, of earning a college degree holds the promise of a more prosperous future.</p>
<p>If you think about it, though, all product development is an exercise in satisfying future requirements as the typical software product release sells for one to two years before the next release hits the shelves, and development typically requires six to twelve months of effort to create the application and to prepare it for delivery to customers.  Consequently, the debate is less about making tradeoffs between the present and the future, and it&#8217;s more about assessing how far into the future that we should prepare.  Many of the problems that society is dealing with today are the consequences of bad decisions made in the past &#8211; and in many cases the future wasn&#8217;t even considered. </p>
<p>In the business of product development striking the proper balance between present requirements and anticipating future needs is an art, requiring a mixture of experience, talent, knowledge, and vision.  It&#8217;s essentially a function of leadership, leadership that seeks council and then decides.  Those leaders who strike the right balance win and secure longevity in the marketplace.  Those leaders who wrongly favor the present are doomed to a regrettable future since opportunity is realized when good decisions about the future are made in the present.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuwantitwhen.com/blog/2008/04/30/reflection-weighing-the-future/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reflection: What Does This Mean?</title>
		<link>http://www.yuwantitwhen.com/blog/2007/10/11/reflection-what-does-this-mean/</link>
		<comments>http://www.yuwantitwhen.com/blog/2007/10/11/reflection-what-does-this-mean/#comments</comments>
		<pubDate>Thu, 11 Oct 2007 06:01:57 +0000</pubDate>
		<dc:creator>Bill Miller</dc:creator>
				<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Quality]]></category>

		<guid isPermaLink="false">http://www.yuwantitwhen.com/blog/2007/10/11/reflection-what-does-this-mean/</guid>
		<description><![CDATA[You've probably heard someone say it, or you may even say it yourself:  "You design quality into a product; you don't test quality into a product."  The last time when I heard those words uttered, I had to restrain myself from reacting.  What did this person mean by that?   The product was in trouble.  It released late and with low quality.  Customers were rolled back to the former version, and now the product marketing team fears that if things aren't corrected soon they will lose market share.]]></description>
			<content:encoded><![CDATA[<p><img style="width: 245px; height: 173px;" src="http://www.yuwantitwhen.com/blog/wp-content/images/reflection.jpg" alt="" width="245" height="173" /> </p>
<p>You&#8217;ve probably heard someone say it, or you may even say it yourself:  <em>&#8220;You design quality into a product; you don&#8217;t test quality into a product.&#8221;</em>  The last time when I heard those words uttered, I had to restrain myself from reacting.  What did this person mean by that?   The product was in trouble.  It released late and with low quality.  Customers were rolled back to the former version, and now the product marketing team fears that if things aren&#8217;t corrected soon they will lose market share.</p>
<p><span id="more-21"></span></p>
<p>Did the person mean you can&#8217;t expect QA to find all the defects? Well of course they cannot.  Or perhaps it was meant that you cannot expect QA to certify that the release is ready for customer consumption?   I hope not.  In my opinion the primary purpose of the QA effort in any release is to certify that the release is ready for customers to begin using for their everyday purposes. </p>
<p>Customers should expect when they purchase a software product for it to perform the functions as advertised flawlessly.  Isn&#8217;t that what we expect from our automobiles, our televisions, our iPods, our radios, our phones, our refrigerators, our toasters, and the myriad of products we purchase for our everyday uses?  I&#8217;ve seen people nearly lose it when they discover a small scratch on their new vehicle that they missed when they picked it up from the dealer.  While I agree that you design quality into a product, I don&#8217;t believe that assertion changes anything about the QA mission.  Let&#8217;s take a look at what are some of the sources of defects.</p>
<ol>
<li><strong>Requirements are not defined correctly or are misunderstood.</strong></li>
<li><strong>Design has flaws.</strong></li>
<li><strong>Code has flaws.</strong></li>
</ol>
<p>Of the three points where defects can be introduced (requirements, design, and code), the best design would only prevent 33% of the defects from being introduced as the design phase is only one third of the sources of defect introduction, assuming defects are introduced evenly between the sources.  Even the best design team would still introduce some number of defects at the design phase.  Let&#8217;s assume for a moment that the team was excellent at reviewing the requirements, design, and code, we would still expect some number of defects to slip through.  Further, let&#8217;s assume that the developers were very good at unit testing their code; we could still expect some number of defects to slip through.  Plus, unit testing isn&#8217;t the same testing as system test.  The QA team traditionally executes system test.</p>
<p>If we do an excellent job at requirements, design, code, unit testing, and reviews, does that reduce the need for a thorough and comprehensive QA test suite?  I think not.  One, if we can agree perfection is impossible to achieve, there is no telling where the defects &#8212; however small in number &#8212; will be found in the application, and so you have to test as if there are potential defects anywhere in the application; otherwise, why have the test phase?</p>
<p>The QA role in the lifecycle of the release has many folds, but the function of the QA lifecycle is to make certain that the project has satisfied its objectives, which includes the product being ready for customer consumption.  These objectives are shared by the developers as well, but it&#8217;s the responsibility of the QA team to certify that they have been achieved.  Consequently, whether the work products delivered to QA for test are great or poor, it doesn&#8217;t change the workload or the expectations of the QA team.  These are the objectives of the QA team:</p>
<ol>
<li><strong>To make certain that all the requirements have been delivered to specification in the release.</strong>  The QA team has many customers, but the business team customers rely upon the QA team to certify to them that they are getting what they asked for.</li>
<li><strong>To make certain that changes to the product haven&#8217;t impaired any of the existing functionality.</strong>  Existing functionality works as before the changes were introduced.  This is normally covered in comprehensive regression test suites.</li>
<li><strong>To make certain the new and existing functionality meets quality objectives.</strong></li>
<li><strong>To make certain the application performs to performance specification.</strong></li>
</ol>
<p>My expectation is that once the product exits QA after having delivered on these objectives, the QA cycle has confirmed that the software will meet the customer&#8217;s high expectations for quality &#8211; expectations like we have for everyday products.  Whether quality was designed into the product or not, I don&#8217;t see how any of these objectives can rightfully be skipped.  If the software engineers introduced few defects or many defects, it&#8217;s the purpose of the QA team to find them and to at least know whether the release decision is prudent or improvident.  Actually, it&#8217;s their information that should be the basis for the release decision.   So what is meant by <em>&#8220;You design quality into a product&#8221; </em>juxtaposed with <em>&#8220;You don&#8217;t test quality into a product?&#8221;</em>  T o me it only says QA cannot fix a poor design.  They also cannot fix poor requirements and poor code, but they better have an opinion on it, and they better have detected poor requirements, design, and code when it&#8217;s present. It&#8217;s up to someone else to fix it, of course.  What are your thoughts?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuwantitwhen.com/blog/2007/10/11/reflection-what-does-this-mean/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reflection: Unrealistic Schedules</title>
		<link>http://www.yuwantitwhen.com/blog/2007/10/04/reflection-unrealistic-schedules/</link>
		<comments>http://www.yuwantitwhen.com/blog/2007/10/04/reflection-unrealistic-schedules/#comments</comments>
		<pubDate>Thu, 04 Oct 2007 06:01:04 +0000</pubDate>
		<dc:creator>Bill Miller</dc:creator>
				<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Estimating]]></category>
		<category><![CDATA[Metrics]]></category>

		<guid isPermaLink="false">http://www.yuwantitwhen.com/blog/2007/10/04/reflection-unrealistic-schedules/</guid>
		<description><![CDATA[I often wonder why software teams always seem to be committing to unrealistic schedules.  You know when the sales team signed a contract with a customer to deliver functionality on a date without ever asking the engineering team whether it were possible. Never mind the roadmaps identify an entirely different set of functionality than what was committed. And guess what?  The product roadmaps can't change either; the sales team has signed contracts on that functionality too.]]></description>
			<content:encoded><![CDATA[<p> <img style="width: 250px; height: 177px;" title="Reflection Series" src="http://www.yuwantitwhen.com/blog/wp-content/images/reflection.jpg" alt="water ripple" width="250" height="177" /></p>
<p align="left">I often wonder why software teams always seem to be committing to unrealistic schedules.  You know when the sales team signed a contract with a customer to deliver functionality on a date without ever asking the engineering team whether it were possible. Never mind the roadmaps identify an entirely different set of functionality than what was committed. And guess what?  The product roadmaps can&#8217;t change either; the sales team has signed contracts on that functionality too.</p>
<p align="left">It&#8217;s not just the sales organizations though; the software organizations are all too happy to over commit without any help from outsiders.  You probably have one of those programmers on your team that when you ask him for an estimate, he says a week and three months later he&#8217;s still working on it.  When you ask him what happened, his answer is well it was a bit more complicated than I thought.  Does he learn from it? No way. Ask for an estimate on the next project, and he&#8217;ll still quote a week.</p>
<p align="left"><span id="more-19"></span></p>
<p align="left">I often wonder if these same people would commit an organization to building the Empire State building in a month.  It sounds ludicrous, doesn&#8217;t it? But, software teams are asked regularly to deliver on similarly impossible feats &#8212; well maybe not on the scale of building an Empire State building in a month, but you get the point. Really, even these same salesmen wouldn&#8217;t make that kind of commitment for a building because even to them, it&#8217;s an impossible effort.</p>
<p align="left">What is it about software that makes it so likely that the sales teams and engineering teams will over commit?   I believe a large contribution &#8211; not the only &#8212; is that we haven&#8217;t been successful in using metrics to size our projects.  The entire construction industry doesn&#8217;t make a single commitment to a project without knowing the size of the project.   Before you&#8217;ll even get a ball park estimate from a contractor for time and money, they want to know how many square feet the project is.  Even a salesman, without even knowing the exact square footage of a similar proposal to constructing the Empire State Building, would know just by looking at the plans that a month is an impossible commitment.  While he doesn&#8217;t know exactly how big it is, he knows it&#8217;s huge, and a month won&#8217;t be enough time.  In software, they just have no clue, and it&#8217;s the fault of the software profession.</p>
<p align="left">It is my belief that we can begin correcting this problem if we can begin to size our software projects using a consistent unit for size.   The measure needs to be pushed all the way out to the team members who are making commitments for the organization.  Initially, the metrics won&#8217;t have much meaning to those people hearing and using it, but after they see the time and effort required to deliver projects in those units, they will develop a feel for what it takes to deliver functionality in those units, and they&#8217;ll be able to roughly size projects themselves after gaining experience.  They&#8217;ll at least have a feel for whether they are committing the organization to constructing the Empire State Building in a month or less.</p>
<p align="left">At a minimum, when sales teams over commit, they&#8217;ll know it as soon as the software organization returns the estimates, and possibly more productive conversations about how do we fix it can be had, instead of work harder when it&#8217;s obvious that working harder won&#8217;t solve the problem. If every project that was 500 units in size or greater took 6 months or greater to deliver,  it&#8217;s obvious to all but the dullest minds that something needs to change to deliver 500 units in 3 months as was committed.  Only then can we begin to have productive conversations.   What are your thoughts?</p>
<p align="left">Periodically, I plan to write a reflections essay on a peculiarity in the way we practice software development in industry &#8212; at least in my experience.  I hope to bring a new perspective on the topic, and I hope you comment with your thoughts and experiences.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuwantitwhen.com/blog/2007/10/04/reflection-unrealistic-schedules/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
