<?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>Managing Agile &#187; Working Software</title>
	<atom:link href="http://www.managingagile.com/category/working-software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.managingagile.com</link>
	<description>practical &#124; agile &#124; management</description>
	<lastBuildDate>Sun, 28 Feb 2010 17:22:04 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The Curse of Technical Competence</title>
		<link>http://www.managingagile.com/working-software/technical-competence/</link>
		<comments>http://www.managingagile.com/working-software/technical-competence/#comments</comments>
		<pubDate>Tue, 11 Aug 2009 07:22:16 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Working Software]]></category>
		<category><![CDATA[remarkable]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[team]]></category>
		<category><![CDATA[vision]]></category>

		<guid isPermaLink="false">http://www.managingagile.com/?p=613</guid>
		<description><![CDATA[You must be familiar with this scene: You're meeting with the Team explaining your vision for a new product or feature, and as you're talking you glance across at the <em>major brain</em> in the room. His eyes are glassy; he has that distant look about him. Yes, he's started to make decisions, design the architecture, code the system, right there, in his head.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop_cap">I</span>t cuts both ways: Technical competence. Having highly competent people on your Team can make or break your project.</p>
<p>Genius, geek, propeller-head &#8211; just some of the labels we place on people who are gifted in technical insight and skills. And it&#8217;s great when they come through for the project, solving a difficult problem that&#8217;s been holding the Team back.</p>
<p>Yet you must also be familiar with this scene: You&#8217;re meeting with the Team explaining your vision for a new product or feature, and as you&#8217;re talking you glance across at the <em>major brain</em> in the room. His eyes are glassy; he has that distant look about him.<span id="more-613"></span></p>
<p><strong>An impact, either way</strong><br />
Yes, he&#8217;s started to make decisions, design the architecture, code the system, right there, in his head.</p>
<p>And while this hyper-productivity may be admirable, it&#8217;s questionable whether it is functionally effective towards meeting your project&#8217;s objectives. After all, you haven&#8217;t finished imparting the vision.</p>
<p>The code that&#8217;s written at that moment, in his head, may have a significant impact on your project&#8217;s success. Has he heard everything of significance? Has he factored it all in? How strongly is he able to exert his will over others? Are other team members included or squeezed out from that point? If he&#8217;s made a wrong call, does he have the emotional intelligence to back down?</p>
<p>Technical competence can be a powerful ally to market place success, but it can just as easily confine your product to the ranks of the also-rans.</p>
<p class="alert">Reaping rewards comes after mitigating risk. Bringing the Team&#8217;s technical competence to bear at the right time and in the right way will give your product a shot at greatness.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/technical-competence/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Great Supporting Act</title>
		<link>http://www.managingagile.com/working-software/great-supporting-act/</link>
		<comments>http://www.managingagile.com/working-software/great-supporting-act/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 06:43:22 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Roles]]></category>
		<category><![CDATA[Working Software]]></category>
		<category><![CDATA[customer]]></category>
		<category><![CDATA[market]]></category>
		<category><![CDATA[strategy]]></category>
		<category><![CDATA[tactics]]></category>
		<category><![CDATA[user]]></category>

		<guid isPermaLink="false">http://www.managingagile.com/?p=626</guid>
		<description><![CDATA[I like to spend time with customer care people, trainers, sales people, and those who support our products in the market place. Why? Because as a manager I must always be aware of how our products are being portrayed to customers and users: Over the 'phone, in emails, in Help and FAQs, in training, in sales demo's, everywhere.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop_cap">W</span>henever I can I like to spend time with customer care people, trainers, sales people, and those who support our products in the market place. Why? Because as a manager I must always be aware of how our products are being portrayed to customers and users: Over the &#8216;phone, in emails, in Help and FAQs, in training, in sales demo&#8217;s, everywhere.</p>
<p>In his book <em>On War</em>, published posthumously by his wife in 1832, von Clausewitz wrote, &#8220;We fall into error if we attribute to strategy a power independent of tactical results.&#8221;</p>
<p class="alert">Is your strategy being made impotent by rudeness over the &#8216;phone, poor grammar in emails, incomplete or inaccurate Help, dour trainers, or over-promising and under-delivering sales people? You need to find out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/great-supporting-act/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Release The Animal In You</title>
		<link>http://www.managingagile.com/working-software/release-the-animal-in-you/</link>
		<comments>http://www.managingagile.com/working-software/release-the-animal-in-you/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 10:13:07 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Working Software]]></category>
		<category><![CDATA[continuous integration]]></category>
		<category><![CDATA[customer]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[user]]></category>

		<guid isPermaLink="false">http://www.managingagile.com/?p=1131</guid>
		<description><![CDATA[The truth is sometimes spoken in jest: "Our software wasn't released; it escaped." Customers and users feel the brunt of poor, error-ridden software. It's an imposition to treat them as your testers. It's not what they pay you money for and they don't deserve to be treated that way. Resist the urge to unleash the animal in you.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop_cap">O</span>n second thoughts, don&#8217;t. Whilst the truth is sometimes spoken in jest: &#8220;Our software wasn&#8217;t released; it escaped,&#8221; customers and users feel the brunt of poor, error-ridden software.</p>
<p>It&#8217;s an imposition to treat them as your testers. It&#8217;s not what they pay you money for and they don&#8217;t deserve to be treated that way.</p>
<p>Your strategy of continuous integration doesn&#8217;t mean you abandon quality. Resist the urge to unleash the animal in you.</p>
<p><a title="Buggy patch from McAfee" href="http://news.softpedia.com/news/McAfee-Releases-Buggy-Patch-for-VirusScan-Enterprise-113749.shtml" target="_self">McAfee Releases Buggy Patch for VirusScan Enterprise</a></p>
<p><a title="Buggy firmware from Blackberry" href="http://tech.blorge.com/Structure:%20/2009/05/31/blackberry-release-new-firmware-to-fix-buggy-storm-software/" target="_self">Blackberry releases new firmware to fix buggy Storm software</a></p>
<p><a title="Buggy Chrome from Google" href="http://www.macworld.co.uk/macsoftware/news/index.cfm?newsid=26207&#038;pagtype=samechandate" target="_self">Google releases buggy Chrome for Mac OS X and Linux</a></p>
<p><a title="Buggy release from WordPress" href="http://www.techmynd.com/wordpress-28-buggy-release-is-out-for-download/" target="_self">WordPress 2.8 Buggy Release is Out for Download</a></p>
<p><a title="Buggy GTA IV release" href="http://games.slashdot.org/article.pl?sid=08%2F12%2F05%2F0840238&#038;from=rss" target="_self">Players Furious Over Buggy Grand Theft Auto IV PC Release </a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/release-the-animal-in-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ideal Software Design</title>
		<link>http://www.managingagile.com/working-software/ideal-software-design/</link>
		<comments>http://www.managingagile.com/working-software/ideal-software-design/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 09:01:21 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Working Software]]></category>
		<category><![CDATA[effectiveness]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.managingagile.com/?p=662</guid>
		<description><![CDATA[The picture of the software designer deriving his design in a rational, error-free way from a statement of requirements is quite unrealistic. No system has ever been developed in that way, and probably none ever will. Even the small program developments shown in textbooks and papers are unreal. They have been revised and polished until the author has shown us what he wishes he had done, not what actually did happen.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop_cap">W</span>hy will a software design process always be an idealisation? <a title="David Lorge Parnas on Wikipedia" href="http://en.wikipedia.org/wiki/David_Parnas" target="_blank">David Lorge Parnas</a>, a Canadian early pioneer of software engineering, gives us his reasons:<span id="more-662"></span></p>
<p class="note">(1) In most cases the people who commission the building of a software system do not know exactly what they want and are unable to tell us all that they know.<br />
(2) Even if we knew the requirements, there are many other facts that we need to know to design the software. Many of the details only become known to us as we progress in the implementation. Some of the things that we learn invalidate our design and we must backtrack. Because we try to minimize lost work, the resulting design may be one that would not result from a rational design process.<br />
(3) Even if we knew all of the relevant facts before we started, experience shows that human beings are unable to comprehend fully the plethora of details that must be taken into account in order to design and build a correct system. The process of designing the software is one in which we attempt to separate concerns so that we are working with a manageable amount of information. However, until we have separated the concerns, we are bound to make errors.<br />
(4) Even if we could master all of the detail needed, all but the most trivial projects are subject to change for external reasons. Some of those changes may invalidate previous design decisions. The resulting design is not one that would have been produced by a rational design process.<br />
(5) Human errors can only be avoided if one can avoid the use of humans. Even after the concerns are separated, errors will be made.<br />
(6) We are often burdened by preconceived design ideas, ideas that we invented, acquired on related projects, or heard about in a class. Sometimes we undertake a project in order to try out or use a favourite idea. Such ideas may not be derived from our requirements by a rational process.<br />
(7) Often we are encouraged, for economic reasons, to use software that was developed for some other project. In other situations, we may be encouraged to share our software with another ongoing project. The resulting software may not be the ideal software for either project, i.e., not the software that we would develop based on its requirements alone, but it is good enough and will save effort.</p>
<p>&#8220;For all of these reasons,&#8221; Parnas says, &#8220;the picture of the software designer deriving his design in a rational, error-free way from a statement of requirements is quite unrealistic. No system has ever been developed in that way, and probably none ever will. Even the small program developments shown in textbooks and papers are unreal. They have been revised and polished until the author has shown us what he wishes he had done, not what actually did happen.&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/ideal-software-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reduce variation</title>
		<link>http://www.managingagile.com/working-software/reduce-variation/</link>
		<comments>http://www.managingagile.com/working-software/reduce-variation/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 11:02:08 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Working Software]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[benefit]]></category>
		<category><![CDATA[management]]></category>

		<guid isPermaLink="false">http://www.managingagile.com/?p=489</guid>
		<description><![CDATA[Management is responsible for 85% of variation that hampers workers producing quality products. When managing agile projects, increase quality by reducing variation during a sprint. This is the essence of agile.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop-cap">I</span> was interested to read an article in the latest edition of <a title="The Economist" href="http://www.economist.com" target="_blank">The Economist</a> about <a title="W. Edwards Deming, article in The Economist" href="http://www.economist.com/daily/news/displaystory.cfm?story_id=13805735&amp;fsrc=nwl" target="_blank">W.Edwards Deming</a> (1900-1993). Deming, who was awarded the Order of the Sacred Treasure, second class, the highest Japanese award ever given to foreigners, for his efforts in helping improve product quality in Japanese companies, is once quoted as saying: &#8220;If I had to reduce my message for management to a few words, I’d say it all had to do with reducing variation.&#8221;</p>
<p class="alert">Management, Deming argued, is responsible for 85% of variation. Reduce the variation, increase the quality; this was the foundation of his advice.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/reduce-variation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Working Software over Comprehensive Documentation</title>
		<link>http://www.managingagile.com/working-software/comprehensive-documentation/</link>
		<comments>http://www.managingagile.com/working-software/comprehensive-documentation/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 14:40:21 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Documents]]></category>
		<category><![CDATA[Working Software]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[agile manifesto]]></category>
		<category><![CDATA[cio]]></category>
		<category><![CDATA[cto]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[product owner]]></category>

		<guid isPermaLink="false">http://www.managingagile.com/?p=348</guid>
		<description><![CDATA[The Agile Manifesto values working software over comprehensive documentation. In agile projects working software is the ultimate quantification of your project's status. This may take some getting used to. The agile leader though, may be more interested in artifacts describing the project's functional effectiveness: The 'why' of the business. This is because you are responsible for the software beyond its manufacture: Why you invested in it, and why it complements your broader business plan.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop_cap">T</span>he <a title="The Agile Manifesto" href="http://www.agilemanifesto.org" target="_blank">Agile Manifesto</a> values working software over comprehensive documentation. In agile projects working software <em>is</em> the ultimate quantification of your project&#8217;s status. This may take some getting used to.</p>
<p>The <a title="Signatories to the Agile Manifesto" href="http://www.agilemanifesto.org/authors.html" target="_blank">signatories</a> to the Agile Manifesto are not saying that technical documentation doesn&#8217;t have any value. Not at all; they&#8217;re simply emphasising the value of working software over comprehensive documentation. They&#8217;re saying that as working software should be the team&#8217;s goal, if producing detailed documentation for tradition&#8217;s sake is getting in its way, then it is time to adjust how much paperwork is produced.</p>
<p class="note"><em>&#8220;That is, whilst there is value in comprehensive documentation, we value working software more.&#8221;</em><br />
<strong>-Signatories to the Manifesto for Agile Software Development</strong></p>
<p>In addition, a number of the <a title="12 Principles of Agile Software Development" href="http://www.agilemanifesto.org/principles.html" target="_blank">principles behind the Manifesto</a> elaborate on this value:<br />
- Working software is the primary measure of progress.<br />
- [The team's] highest priority is to satisfy the customer through early and &#8211; continuous delivery of valuable software.<br />
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.<br />
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.</p>
<p><strong>How versus why</strong><br />
Finding the right balance between documenting and doing is an art that still causes much frustration in the lives of developers. And clearly not all documentation is bad. For example, sometimes end-user documentation is used as a criterion for &#8216;Done&#8217;. Sometimes it&#8217;s used to document decisions for team continuity. And documentation may even be needed for regulatory compliance. I&#8217;ve found it&#8217;s OK to leave the team to answer two simple questions: Is the documentation valuable? Is the team better off for writing it?</p>
<p>In my view this Manifesto value really addresses the project&#8217;s efficiency: The &#8216;how&#8217; of the technicalities. The agile leader though, may be more interested in artifacts describing the project&#8217;s functional effectiveness: The &#8216;why&#8217; of the business. This is because you are responsible for the software beyond its manufacture: Why you invested in it, and why it complements your broader business plan.</p>
<p>I&#8217;ve had great success using these documents to capture the business essence of an agile project. They convey stakeholder expectations of the project, the user needs the product will meet, and how the product will evolve once in the market. In my experience the benefit these artifacts bring to the team far outweighs the cost of producing them.</p>
<p class="alert">I strongly encourage Product Owners to produce these documents because they connect very deeply with the project through this process. Then, when the hard product calls need to be made, they&#8217;ll find the answers within them. And their confident, consistent decisions will earn Product Owners the respect of the other team members. Stakeholders will feel safe in their hands, too.</p>
<p><strong>Business case</strong><br />
The purpose of the product business case is to set out: Stakeholder expectations; a mapping of the user needs to features to benefits; the proposed financial model; market opportunities identified; and, a product positioning statement. The product strategy outlined in this document should be consistent with the organisation&#8217;s business plan. (3 pages)</p>
<p><strong>Vision</strong><br />
This is the chance to describe what the perfect product would look like—the outer bounds of market and functionality. The vision is derived from the business case and illustrates the problems that must be solved to reach the product&#8217;s goals, yet it should not be constrained by what is technically possible for the team. (3 pages)</p>
<p><strong>Data sheet</strong><br />
This document distills out of the vision the <em>principal</em> features of the product, and their related benefits, in user language. If software was still sold off-the-shelf, this would be the promotional material printed on the outside of the box.(2 pages)</p>
<p><strong>Overview</strong><br />
This artifact contains as many of the product&#8217;s features and related benefits that have been conceived at this point, in more detail than the data sheet, but still in user language. The overview, like the data sheet, still honours the product vision. Because it communicates how the Product Owner has interpreted the vision, when reading the overview team members often say, &#8220;Oh, I didn&#8217;t know you meant that. We&#8217;ll have to talk it through.&#8221; Then if proposed features and benefits need to be discounted for any reason, everyone is aware of the base off of which this is being done. (10+ pages)</p>
<p><strong>Product backlog</strong><br />
With the previous documents in place the product backlog, which is a prioritised list of tasks described as user stories, becomes a doddle to produce.</p>
<p><strong>Road map</strong><br />
So too with the road map: The release plan of future functionality is often a quarterly snapshot of the product backlog in a form that could be presented to internal and external stakeholders. Although some executives shy away from publishing the road map externally for fear of raising the market&#8217;s expectation of future functionality, I&#8217;ve found the benefits to outweigh the risks. The market appreciates that you have shared your plan for the product, and in turn it can participate more meaningfully in setting priorities.</p>
<p class="alert">I will elaborate on each of these documents in future posts, as well as provide templates of these documents for download. Be sure to look out for them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/comprehensive-documentation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where Has Time Gone?</title>
		<link>http://www.managingagile.com/working-software/where-has-time-gone/</link>
		<comments>http://www.managingagile.com/working-software/where-has-time-gone/#comments</comments>
		<pubDate>Sat, 16 May 2009 13:23:20 +0000</pubDate>
		<dc:creator>Charl Dreyer</dc:creator>
				<category><![CDATA[Working Software]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[effectiveness]]></category>
		<category><![CDATA[efficiency]]></category>
		<category><![CDATA[functional]]></category>
		<category><![CDATA[management]]></category>

		<guid isPermaLink="false">http://managingagile.com/wordpress/?p=9</guid>
		<description><![CDATA[Choosing to be effective before efficient may produce short term gains but it is disastrous in the long term. And as managers, ensuring long term sustainability for the businesses entrusted to our care is what we get paid to do. The agile manager needs to first master efficiency, then functional effectiveness, to add value.]]></description>
			<content:encoded><![CDATA[<p></p><p><span class="drop_cap">D</span>espite using many efficiency tools scarcity of time is still a fundamental problem for most of us. Technology is supposed to restore time to us, but often we’re left wondering, “Where has all my time gone?” It’s wasted by being ineffective, even efficiently ineffective! This is why we often feel that we’ve been busy yet nothing has been achieved.</p>
<p>Which is more important to first get right: Effectiveness or efficiency? Intuitively many choose first to be effective: Just get it done, worry about doing it properly later. This approach may produce short term gain but it is disastrous in the long run. Even though some things may get done, doing them inefficiently takes away from the enjoyment of our work, depletes our energy and momentum, and causes ineffectiveness; this is true for individuals as well as teams.</p>
<p><strong>Efficiency and effectiveness</strong><br />
Yet our role as managers—shareholder proxies—is to ensure the long term sustainability of the businesses entrusted to our care. We give ourselves every chance of success when we focus on efficiency first, and then effectiveness. Form before function. Quality before quantity. How before what. Efficiency, or the ratio of output to input, results from following the correct form. Effectiveness is the power to produce an intended result.</p>
<p>This introduces the other dilemma many of us face: What is the intended result—the function or purpose—of our efforts? It’s not enough to be effective; we must be functional, or purposeful, in what we do. In applying our efforts efficiently we need to strive for the vision we are intended to serve. Self-service may be effective but it is rarely functional to the organisation.</p>
<p>In getting to grips with your purpose you should analyse your answer to this question, “For whom or for what am I here?” It may be interesting to hear your team respond to this as a gauge of how plugged in they are to the corporate and product vision. And keeping this vision front of mind in turn helps guide you and your team towards the correct form.</p>
<p>Why is it important to master these fundamentals? Because you can waste a lot of time by being effective but not efficient—getting there at any cost; by being efficient but not effective—efficiently doing the wrong thing; and, by being effective but not functional—a bad attitude that affects everyone around you.</p>
<p>Adding value is about being efficient <em>and</em> functionally effective. As an agile manager you need to drive from vision to form to function to fulfilment, both for you and the people you oversee. You’ll save a lot of time and regain the enjoyment and satisfaction you get from working as hard as you do.</p>
<p class="alert">What tasks are you doing efficiently but which are functionally ineffective?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.managingagile.com/working-software/where-has-time-gone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
