<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2titles.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemtitles.css" type="text/css" media="screen"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Agile Advice - Working With Agile Methods (Scrum, XP, Lean)</title>
	
	<link>http://www.agileadvice.com</link>
	<description />
	<pubDate>Mon, 17 Nov 2008 02:27:52 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/AgileAdvice" type="application/rss+xml" /><feedburner:emailServiceId>192699</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><item>
		<title>The Decline and Fall of Agile and How Scrum Makes it Hurt More</title>
		<link>http://www.agileadvice.com/2008/11/16/scrumxplean/the-decline-and-fall-of-agile-and-how-scrum-makes-it-hurt-more/</link>
		<comments>http://www.agileadvice.com/2008/11/16/scrumxplean/the-decline-and-fall-of-agile-and-how-scrum-makes-it-hurt-more/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 02:27:52 +0000</pubDate>
		<dc:creator>Mishkin Berteig</dc:creator>
		
		<category><![CDATA[How-To Apply Agile]]></category>

		<category><![CDATA[Links to Agile Info]]></category>

		<category><![CDATA[Scrum, XP and Lean]]></category>

		<category><![CDATA[agile]]></category>

		<category><![CDATA[Coaching]]></category>

		<category><![CDATA[Consulting]]></category>

		<category><![CDATA[failure]]></category>

		<category><![CDATA[scrum]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=574</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/16/scrumxplean/the-decline-and-fall-of-agile-and-how-scrum-makes-it-hurt-more/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'The Decline and Fall of Agile and How Scrum Makes it Hurt More';
digg_bodytext = 'James...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
James Shore wrote a great post about the problems he is seeing with agile adoptions that start with Scrum called the Decline and Fall of Agile.  Please please please (pretty please) read it before you read what I am about to write here!  I agree with what James is saying 100%.
Now, let&#8217;s hear the truth:
Scrum [...]]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/16/scrumxplean/the-decline-and-fall-of-agile-and-how-scrum-makes-it-hurt-more/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'The Decline and Fall of Agile and How Scrum Makes it Hurt More';
digg_bodytext = 'James...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>James Shore wrote a great post about the problems he is seeing with agile adoptions that start with Scrum called the <a href="http://jamesshore.com/Blog/The-Decline-and-Fall-of-Agile.html">Decline and Fall of Agile</a>.  Please please please (pretty please) read it before you read what I am about to write here!  I agree with what James is saying 100%.</p>
<p>Now, let&#8217;s hear the truth:</p>
<p>Scrum is really really hard!  Doing Scrum well is like quitting a heavy, long addiction (I think).  Don&#8217;t ever make the mistake that because Scrum is simple (lack of complexity) that it is somehow therefore easy (lack of effort).</p>
<p>Doing Scrum properly takes:</p>
<p><strong>sacrifice</strong> - sacrifice of our ways of thinking, our habits, our comfort</p>
<p><strong>wisdom</strong> - wisdom to see the small improvements while struggling with the humongeous ones</p>
<p>and most importantly,</p>
<p><strong>truthfulness</strong> - honesty to see and say the truth, integrity to act on the truth, detachment to avoid believing in what you want instead of what is real, courage to continue even when things aren&#8217;t perfect or easy</p>
<p>Scrum depends heavily on commitment both at the small scale of an individual committing to a small piece of work, and at the large scale of an organization committing to real deep cultural change.  Without that entire spectrum of commitment, it is unlikely that adopting Scrum will be anything but the latest fad imposed by management or done stealthily by staff.</p>
<p>But Scrum isn&#8217;t the only &#8220;agile&#8221; method.  As James points out, the engineering practices of Extreme Programming such as pair programming, test driven development, continuous integration, evolutionary design and refactoring are all critical.  Do they have to be done and perfected first?  No.  But eventually, if you are using Scrum to build software (not everyone is), they do have to be done.</p>
<p>As a Certified Scrum Trainer, I have always emphasized how Scrum is hard, and how being a ScrumMaster is very very very hard.  This is why my training class is three days instead of two.  This is why I don&#8217;t encourage anyone to come to it, only people who will be ScrumMasters.  This is why after the first day of my course, most students are actually feeling quite discouraged!!!  It takes three days minimum for people to understand and process the incredible shift in mental model.  And of course, even after three days, it is oh so easy to revert back to our normal thinking habits.</p>
<p>So what should people do?  Do Scrum by the book.  Yes that means putting a whole team in a single room.  Yes it means that you have to really remove obstacles, and fast!  Yes that means that your teams actually have to be cross functional (and not just in the weak sense of multi-skilled developers).  Yes that means that it - will - take - a - long - time - to - get - it - right!!!!</p>
<p>And please, it is so worth getting help beyond just the training!  If you think that I&#8217;m just trying to promote my own coaching services, please go check out:</p>
<p><a href="http://www.ccpace.com">www.ccpace.com</a></p>
<p><a href="http://www.rallydev.com">www.rallydev.com</a></p>
<p><a href="http://www.outformations.com">www.outformations.com</a></p>
<p><a href="http://www.lithespeed.com">www.lithespeed.com</a></p>
<p><a href="http://www.mountaingoatsoftware.com">www.mountaingoatsoftware.com</a></p>
<p><a href="http://www.controlchaos.com">www.controlchaos.com</a></p>
<p><a href="http://www.bigvisible.com">www.bigvisible.com</a></p>
<p><a href="http://www.kittyhawkconsulting.com">www.kittyhawkconsulting.com</a></p>
<p>They all have great coaches and I would absolutely way rather see you succeed than believe that I am just trying to promote my own business.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/11/16/scrumxplean/the-decline-and-fall-of-agile-and-how-scrum-makes-it-hurt-more/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Agile in Ottawa - Meetup on the 24th</title>
		<link>http://www.agileadvice.com/2008/11/14/announcements/agile-in-ottawa-meetup-on-the-24th/</link>
		<comments>http://www.agileadvice.com/2008/11/14/announcements/agile-in-ottawa-meetup-on-the-24th/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 17:36:32 +0000</pubDate>
		<dc:creator>Mishkin Berteig</dc:creator>
		
		<category><![CDATA[Announcements]]></category>

		<category><![CDATA[Links to Agile Info]]></category>

		<category><![CDATA[agile]]></category>

		<category><![CDATA[Glenn Waters]]></category>

		<category><![CDATA[ottawa]]></category>

		<category><![CDATA[scrum]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=572</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/14/announcements/agile-in-ottawa-meetup-on-the-24th/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Agile in Ottawa - Meetup on the 24th';
digg_bodytext = 'Glenn...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
Glenn Waters whom I have worked with in the past, is getting the Agile community in Ottawa up and running again.  Check out the details on his blog: Agile Ottawa.
]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/14/announcements/agile-in-ottawa-meetup-on-the-24th/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Agile in Ottawa - Meetup on the 24th';
digg_bodytext = 'Glenn...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>Glenn Waters whom I have worked with in the past, is getting the Agile community in Ottawa up and running again.  Check out the details on his blog: <a href="http://agileottawa.wordpress.com/">Agile Ottawa</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/11/14/announcements/agile-in-ottawa-meetup-on-the-24th/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Scrum Case Studies</title>
		<link>http://www.agileadvice.com/2008/11/06/agile-case-studies/scrum-case-studies/</link>
		<comments>http://www.agileadvice.com/2008/11/06/agile-case-studies/scrum-case-studies/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 04:04:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Agile Case Studies]]></category>

		<category><![CDATA[agile]]></category>

		<category><![CDATA[case studies]]></category>

		<category><![CDATA[scrum]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=571</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/06/agile-case-studies/scrum-case-studies/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Scrum Case Studies';
digg_bodytext = 'Great...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
Great link from Mark Levison on agile / scrum case studies!!!
Here&#8217;s another one from this blog:
A Cautionary Tale.
]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/06/agile-case-studies/scrum-case-studies/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Scrum Case Studies';
digg_bodytext = 'Great...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>Great link from Mark Levison on <a href="http://www.notesfromatooluser.com/2008/11/scrum-case-studies.html">agile / scrum case studies</a>!!!</p>
<p>Here&#8217;s another one from this blog:</p>
<p><a href="http://www.agileadvice.com/2007/08/09/agile-case-studies/a-cautionary-tale-delaying-agile-adoption/">A Cautionary Tale</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/11/06/agile-case-studies/scrum-case-studies/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Yet another misunderstanding of TDD, testing, and code coverage</title>
		<link>http://www.agileadvice.com/2008/11/04/uncategorized/yet-another-misunderstanding-of-tdd-testing-and-code-coverage/</link>
		<comments>http://www.agileadvice.com/2008/11/04/uncategorized/yet-another-misunderstanding-of-tdd-testing-and-code-coverage/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 23:21:15 +0000</pubDate>
		<dc:creator>Christian Gruber</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[agile]]></category>

		<category><![CDATA[blog]]></category>

		<category><![CDATA[christian edward gruber]]></category>

		<category><![CDATA[design]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[extreme programming]]></category>

		<category><![CDATA[Israfil]]></category>

		<category><![CDATA[Metrics]]></category>

		<category><![CDATA[test driven development]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/2008/11/04/uncategorized/yet-another-misunderstanding-of-tdd-testing-and-code-coverage/</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/04/uncategorized/yet-another-misunderstanding-of-tdd-testing-and-code-coverage/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Yet another misunderstanding of TDD, testing, and code coverage';
digg_bodytext = 'I...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
I was vaguely annoyed to see this blog article featured in JavaLobby&#8217;s recent mailout. Not because Kevin Pang doesn&#8217;t make some good points about the limits of code coverage, but because his title is needlessly controversial. And, because JavaLobby is engaging in some agile-baiting by publishing it without some editorial restraint.
In asking the question, &#8220;Is [...]]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/11/04/uncategorized/yet-another-misunderstanding-of-tdd-testing-and-code-coverage/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Yet another misunderstanding of TDD, testing, and code coverage';
digg_bodytext = 'I...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>I was vaguely annoyed to see <a href="http://www.kevinwilliampang.com/post/Is-Code-Coverage-Really-All-That-Useful.aspx">this blog article</a> featured in JavaLobby&#8217;s recent mailout. Not because Kevin Pang doesn&#8217;t make some good points about the limits of code coverage, but because his title is needlessly controversial. And, because JavaLobby is engaging in some agile-baiting by publishing it without some editorial restraint.</p>
<p>In asking the question, &#8220;Is code coverage all that useful,&#8221; he asserts at the beginning of his article that <a href="http://en.wikipedia.org/wiki/Test-driven_development">Test Driven Development</a> (TDD) proponents &#8220;often tend to push code coverage as a useful metric for gauging how well tested an application is.&#8221; This statement is true, but the remainder of the blog post takes apart code coverage as a valid &#8220;one true metric,&#8221; a claim that TDD proponents don&#8217;t make, except in Kevin&#8217;s interpretation.</p>
<p>He further asserts that &#8220;100% code coverage has long been the ultimate goal of testing fanatics.&#8221; This isn&#8217;t true. High code coverage is a desired attribute of a well tested system, but the goal is to have a fully and sufficiently tested system. Code coverage is indicative, but not proof, of a well-tested system. How do I mean that? Any system whose authors have taken the time to sufficiently test it such that it gets &gt; 95% code coverage is likely (in my experience) thinking through how to test their system in order to fully express its happy paths, edge cases, etc. However, the code coverage here is a symptom, not a cause, of a well-tested system. And the metric can be gamed. Actually, when imposed as a management quality criterion, it usually is gamed. Good metrics should confirm a result obtained by other means, or provide leading indicators. Few numeric measurements are subtle enough to really drive system development.</p>
<p>Having said that, I have used code-coverage in this way, but in context, as I&#8217;ll mention later in this post.</p>
<p>Kevin provides example code similar to the following:</p>
<pre>
String foo(boolean condition) {
    if (condition)
        return "true";
    else
        return "false";
}
</pre>
<p>&#8230; and talks about how if the unit tests are only testing the true path, then this is only working on 50% coverage. Good so far. But then he goes on to express that &#8220;code coverage only tells us what was executed by our unit tests, not what executed correctly.&#8221; He is carefully telling us that a unit test executing a line doesn&#8217;t guarantee that the line is working as intended. Um&#8230; that&#8217;s obvious. And if the tests didn&#8217;t pass correctly, then the line should not be considered covered. It seems there are some unclear assumptions on how testing needs to work, so let me get some assertions out of the way&#8230;</p>
<blockquote>
<ol>
<li>Code coverage is only meaningful in the context of well-written tests. It doesn&#8217;t save you from crappy tests.</li>
<li>Code coverage should only be measured on a line/branch if the covering tests are passing.</li>
<li>Code coverage suggests insufficiency, but doesn&#8217;t guarantee sufficiency.</li>
<li>Test-driven code will likely have the symptom of nearly perfect coverage.</li>
<li>Test-driven code will be sufficiently tested, because the author wrote all the tests that form, in full, the requirements/spec of that code.</li>
<li>Perfectly covered code will not necessarily be sufficiently tested.</li>
</ol>
</blockquote>
<p>What I&#8217;m driving at is that Kevin is arguing against something entirely different than that which TDD proponents argue. He&#8217;s arguing against a common misunderstanding of how TDD works. On point 1 he and I are in agreement. Many of his commentators mention #3 (and he states it in various ways himself). His description of what code coverage doesn&#8217;t give you is absurd when you take #2 into account (we assume that a line of covered code is only covered if the covering test is passing). But most importantly - &#8220;TDD proponents&#8221; would, in my experience, find this whole line of explanation rather irrelevant, as it is an argument against code-coverage as a single metric for code quality, and they would attempt to achieve code quality through thoroughness of testing by driving the development through tests. TDD is a design methodology, not a testing methodology. You just get tests as side-effect artifacts of the approach. Useful in their own right? Sure, but it&#8217;s only sort of the point. It isn&#8217;t just writing the tests-first.</p>
<p>In other words - TDD implies high or perfect coverage. But the inverse is not necessarily true.</p>
<p>How do you achieve thoroughness by driving your development with tests? You imagine the functionality you need next (your next increment of useful change), and you write or modify your tests to &#8220;require&#8221; the new piece of functionality. They you write it, then you go green. Code coverage doesn&#8217;t enter into it, because you should have near perfect coverage at all times by implication, because every new piece of functionality you develop is preceded by tests which test its main paths and error states, upper and lower bounds, etc. Code coverage in this model is a great way to notice that you screwed up and missed something, but nothing else.</p>
<p>So, is code-coverage useful? Heck yeah! I&#8217;ve used coverage to discover lots of waste in my system. I&#8217;ve removed whole sets of APIs that were &#8220;just in case I need them&#8221; APIs, because they become rote (lots of accessors/mutators that are not called in normal operations). Is code coverage the only way I would find them? No. If I&#8217;m dealing with a system that wasn&#8217;t driven with tests, or was poorly tested in general, I may use coverage as a quick health meter, but probably not. Going from zero to 90% on legacy code is likely to be less valuable than just re-writing whole subsystems using TDD&#8230; and often more expensive.</p>
<p>Regardless, while Kevin is formally asking &#8220;is code coverage useful?&#8221; he&#8217;s really asking (rhetorically) is it reasonable to worship code coverage as the primary metric. But if no one&#8217;s asserting the positive, why is he questioning it? He may be dealing with a lot of people with misunderstandings of how TDD works. He could be dealing with metrics bigots. He could be dealing with management-imposed-metrics initiatives which often fail. It might be a pet peeve or he&#8217;s annoyed with TDD and this is a great way to do some agile-baiting of his own. I don&#8217;t know him, so I can&#8217;t say. His comments seem reasonable, so I assume no ill intent. But the answer to his rhetorical question is &#8220;yes, but in context.&#8221; Not surprising, since most rhetorically asked questions are answerable in this fashion. Hopefully it&#8217;s a bit clearer where it&#8217;s useful (and where/how) it&#8217;s not.</p>
<p>(This article is <a href="http://www.israfil.net/blog/geekinasuit/2008/11/code-coverage-test-driven-development.html">a cross-post from &#8220;Geek in a Suit&#8221;</a>)</p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/11/04/uncategorized/yet-another-misunderstanding-of-tdd-testing-and-code-coverage/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Importance of Questions</title>
		<link>http://www.agileadvice.com/2008/10/28/agilemanagement/the-importance-of-questions/</link>
		<comments>http://www.agileadvice.com/2008/10/28/agilemanagement/the-importance-of-questions/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 14:52:21 +0000</pubDate>
		<dc:creator>Travis Birch</dc:creator>
		
		<category><![CDATA[Agile Case Studies]]></category>

		<category><![CDATA[Agile Management]]></category>

		<category><![CDATA[How-To Apply Agile]]></category>

		<category><![CDATA[Theory of Agile]]></category>

		<category><![CDATA[capabilities]]></category>

		<category><![CDATA[colocation]]></category>

		<category><![CDATA[courage]]></category>

		<category><![CDATA[humility]]></category>

		<category><![CDATA[Learning]]></category>

		<category><![CDATA[management]]></category>

		<category><![CDATA[questions]]></category>

		<category><![CDATA[skills]]></category>

		<category><![CDATA[team]]></category>

		<category><![CDATA[truthfulness]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=568</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/28/agilemanagement/the-importance-of-questions/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'The Importance of Questions';
digg_bodytext = 'I’m...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
I’m currently doing some coaching work with Negar, a new project manager working with a small team of web developers at a community development organization in Toronto.  We had our first session last week.  Negar was having trouble getting started on a particular project and I shared with her some of the Agile methods of [...]]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/28/agilemanagement/the-importance-of-questions/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'The Importance of Questions';
digg_bodytext = 'I’m...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>I’m currently doing some coaching work with Negar, a new project manager working with a small team of web developers at a community development organization in Toronto.  We had our first session last week.  Negar was having trouble getting started on a particular project and I shared with her some of the Agile methods of creating a prioritized Cycle Plan, breaking it down into small tasks, etc.</p>
<p>Negar seems to be finding Agile methods helpful in general, but there was a special kind of interaction that we had around removing an obstacle that was particularly interesting for me.  It had to do with an email she received from Peter, a developer working on one of the websites she’s managing.  Negar shared a concern that she didn’t know some of the technical terms Peter was using.  So I had her read through the email and form questions around the points she wasn’t clear about - i.e., “what are buttons?” and I wrote them down as she was speaking.</p>
<p>I then suggested that she compose a reply email containing the same set of questions.  Negar’s eyes opened wide and she exclaimed, “Oh yeah - that’s so obvious!”  I went on to mention that another option would be to go and do some research on her own but that there were some valuable advantages in asking Peter directly, particularly in terms of team-building, that may not be as immediately apparent as asking the questions solely for the purpose of having them answered.  Here are a few:</p>
<p>First, it’s a way for Negar to remind Peter that she does not have a technical background and that he should not assume that she is familiar with web-lingo.  Second, it also reminds him that she is a different person from the last manager he was working with and subtly reinforces that it’s important that they get to know each other as two individual human beings and learn to work together effectively.  Third, and perhaps most importantly, it gives Peter an opportunity to help someone else on the team learn something new, and by doing so, contribute to the culture of learning on the team.  Fourth, and perhaps most obviously, it promotes open lines of clear communication on the team.</p>
<p>(Of course, if the team was colocated, which it is not, lack of communication would be much less of an obstacle!)</p>
<p>Asking questions in the interest of learning makes it visible to others that you don’t know everything.  For some people, this presents a dilemma.  What makes it a dilemma is that asking meaningful questions is something that many people aren’t able to do well.  The ability to ask meaningful questions is a learnable skill requiring the capabilities of truthfulness, humility and courage.  Such capabilities - let’s call them moral capabilities - can themselves be developed through conscious, focused effort.</p>
<p>Someone in the position of a newly hired manager, or a veteran manager with a new team, who lacks these capabilities may feel that it is important to present to a team a persona of all-knowingness.  But, of course, this is false and the truth of one’s degree of knowledge and capability, or lack thereof, soon becomes apparent anyway.  Clearly, this person needs to do some honest hard work to develop some humility, but truthfulness and courage are still often major factors.</p>
<p>Or maybe you’re the kind of person (like Negar) who just doesn’t want to bother anyone.  In this case, humility is not necessarily lacking, but truthfulness - and perhaps most of all courage - may need some attention.  Concepts around moral capabilities deserve much more elaboration, but for the sake of brevity, I’ll leave it at that.</p>
<p>To sum it up, if you are open and clear in the way you ask questions, people will tend to appreciate it and will trust you more in the end.  Moreover, it can have a transformative effect on the environment of the team.  When your team members realize that you are not afraid to ask questions and be truthful about your lack of knowledge in a certain area, it will encourage them to be more truthful about their own capabilities.  Not to mention that most people feel good when they are able to help others.  When your team members feel safe to ask for help and free to help each other, it is empowering for everyone.</p>
<p>Asking meaningful questions, therefore, is an essential aspect of learning <em>together</em>, and nothing is a more powerful contributor to the success of an organization than a team that learns as a team.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/10/28/agilemanagement/the-importance-of-questions/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Journal of Agile/Scrum Failures</title>
		<link>http://www.agileadvice.com/2008/10/27/linkstoagileinfo/journal-of-agilescrum-failures/</link>
		<comments>http://www.agileadvice.com/2008/10/27/linkstoagileinfo/journal-of-agilescrum-failures/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 18:07:11 +0000</pubDate>
		<dc:creator>Laila Heidema</dc:creator>
		
		<category><![CDATA[Links to Agile Info]]></category>

		<category><![CDATA[agile failure]]></category>

		<category><![CDATA[case studies]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=567</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/27/linkstoagileinfo/journal-of-agilescrum-failures/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Journal of Agile/Scrum Failures';
digg_bodytext = 'Here...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
Here is the link, check it out:
http://www.notesfromatooluser.com/2008/07/journal-of-agilescrum-failure.html
]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/27/linkstoagileinfo/journal-of-agilescrum-failures/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Journal of Agile/Scrum Failures';
digg_bodytext = 'Here...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>Here is the link, check it out:</p>
<p><a href="http://www.notesfromatooluser.com/2008/07/journal-of-agilescrum-failure.html">http://www.notesfromatooluser.com/2008/07/journal-of-agilescrum-failure.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/10/27/linkstoagileinfo/journal-of-agilescrum-failures/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Agile Teams Study Being Conducted</title>
		<link>http://www.agileadvice.com/2008/10/22/announcements/agile-teams-study-being-conducted/</link>
		<comments>http://www.agileadvice.com/2008/10/22/announcements/agile-teams-study-being-conducted/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 18:58:21 +0000</pubDate>
		<dc:creator>Mishkin Berteig</dc:creator>
		
		<category><![CDATA[Announcements]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=566</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/22/announcements/agile-teams-study-being-conducted/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Agile Teams Study Being Conducted';
digg_bodytext = 'If...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
If you are currently or have recently worked on an agile team that completed a project or a delivery of software, I encourage you to participate in a study being conducted.  Here is a link to the study information.  And here is a link to an online survey that is part of the study.
]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/22/announcements/agile-teams-study-being-conducted/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Agile Teams Study Being Conducted';
digg_bodytext = 'If...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>If you are currently or have recently worked on an agile team that completed a project or a delivery of software, I encourage you to participate in a study being conducted.  Here is a link to the <a href="http://www.assembla.com/wiki/show/agileStudy">study information</a>.  And here is a link to an <a href="http://www.unipark.de/uc/b_hu_inst_psych_orgsozpsy/449e">online survey that is part of the study</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/10/22/announcements/agile-teams-study-being-conducted/feed/</wfw:commentRss>
		</item>
		<item>
		<title>True Teams and Short Sprints</title>
		<link>http://www.agileadvice.com/2008/10/22/uncategorized/true-teams-and-short-sprints/</link>
		<comments>http://www.agileadvice.com/2008/10/22/uncategorized/true-teams-and-short-sprints/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 18:16:25 +0000</pubDate>
		<dc:creator>askablogr</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/2008/10/22/uncategorized/true-teams-and-short-sprints/</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/22/uncategorized/true-teams-and-short-sprints/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'True Teams and Short Sprints';
digg_bodytext = 'Q:...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>

Q: Hi Again,
Q: How does an agile team work together with a separate test organization and/or demanding test process (e.g. hardware tests, longer stress tests)?
Q: Do you believe that hardware dependent products could have their requirements formulated to fit within 2/4 weeks development cycles?
Regards,
Irfan
Asked by Taking Agile On Board

A: Irfan, your questions are good ones!&#160; [...]]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/22/uncategorized/true-teams-and-short-sprints/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'True Teams and Short Sprints';
digg_bodytext = 'Q:...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<div xmlns="http://www.w3.org/1999/xhtml">
<div style="font-size:1.2em;"><span style="font-size:1.5em;font-weight:bold;">Q: </span>Hi Again,</p>
<p>Q: How does an agile team work together with a separate test organization and/or demanding test process (e.g. hardware tests, longer stress tests)?</p>
<p>Q: Do you believe that hardware dependent products could have their requirements formulated to fit within 2/4 weeks development cycles?</p>
<p>Regards,<br />
Irfan</p></div>
<div style="font-size:.8em;">Asked by Taking Agile On Board</div>
<div style="font-size:1.0em;">
<p style="margin-top:.4em;"><span style="font-size:1.5em;font-weight:bold;">A: </span>Irfan, your questions are good ones!&nbsp; I actually wouldn&#39;t call it an agile team if the test people are not part of the team.&nbsp; Scrum specifically requires that the team produce &quot;potentially shippable&quot; software at the end of every sprint.&nbsp; To do this requires that testing be completed every sprint, and of course, to do this requires substantial investment in automation.&nbsp; This also addresses your question about development cycle&#8230; Sprints are _not_ development cycles.&nbsp; They are product delivery cycles.&nbsp; Therefore, an organization has to change how it does work in order to enable a team (or set of teams) to deliver product every Sprint.&nbsp; For what it&#39;s worth, I always strongly encourage teams and organizations to start with one week long sprints.&nbsp; Scrum doesn&#39;t tell you how to solve the problem of delivering something valuable in that short time, only that you must!&nbsp; Good luck <img src='http://www.agileadvice.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
</div>
<div style="font-size:.8em;margin-top:5px;">Ask <a href="http://www.askablogr.com/question/ask?blogger_id=80">Mishkin Berteig</a> a question.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/10/22/uncategorized/true-teams-and-short-sprints/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Virtual Teams and Dependencies</title>
		<link>http://www.agileadvice.com/2008/10/22/uncategorized/virtual-teams-and-dependencies/</link>
		<comments>http://www.agileadvice.com/2008/10/22/uncategorized/virtual-teams-and-dependencies/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 14:21:32 +0000</pubDate>
		<dc:creator>askablogr</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/2008/10/22/uncategorized/virtual-teams-and-dependencies/</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/22/uncategorized/virtual-teams-and-dependencies/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Virtual Teams and Dependencies';
digg_bodytext = 'Q:...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>

Q: Hi,
Having read posts I would like to ask you a few questions from Scrum POV, I appreciate your contribution to this:
Q: How does agile work with virtual teams that by default are not physically co-located, specifically with regards to daily stand up meetings and the like?
Q: In our product, we have a lot of [...]]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/22/uncategorized/virtual-teams-and-dependencies/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'Virtual Teams and Dependencies';
digg_bodytext = 'Q:...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<div xmlns="http://www.w3.org/1999/xhtml">
<div style="font-size:1.2em;"><span style="font-size:1.5em;font-weight:bold;">Q: </span>Hi,</p>
<p>Having read posts I would like to ask you a few questions from Scrum POV, I appreciate your contribution to this:</p>
<p>Q: How does agile work with virtual teams that by default are not physically co-located, specifically with regards to daily stand up meetings and the like?</p>
<p>Q: In our product, we have a lot of dependencies; one new feature requires extensive co-ordination between our hardware, controller, traffic card and communications teams. How would you solve this problem ?</p>
<p>Regards</p></div>
<div style="font-size:.8em;">Asked by Taking Agile On Board</div>
<div style="font-size:1.0em;">
<p style="margin-top:.4em;"><span style="font-size:1.5em;font-weight:bold;">A: </span><strong>Virtual teams</strong> are always less productive than co-located teams.&nbsp; It doesn&#39;t matter if you are using Scrum, chaos or the most ultra-disciplined waterfall approach.&nbsp; You can expect to double productivity by putting everyone in a room together.&nbsp; Seriously consider this when making plans.&nbsp; For example, if you have a team of eight people with four in one location and the rest at four other locations, then probably you would be better off firing the four who aren&#39;t in the one location and just doing the project with the four remaining.&nbsp; This has nothing to do with agile, scrum or anything except simple queueing theory.&nbsp; On the other hand, if you have a team of eight and they are in eight different locations, you are going to seriously struggle with:</p>
<p>- missing communication due to a failure to make the effort (picking up a phone is harder than turning to a person sitting next to you)</p>
<p>- poor communication due to the limitations of the communication medium (voice and email lack subtlety and mis-understandings are common when using these)</p>
<p>- delayed communication (any asynchronous communication means a delay in getting a response which can lead to either making assumptions and rework or task switching&#8230;)</p>
<p>- forced multitasking while waiting for asynchronous communication to complete (and everyone knows that multitasking is incredibly inefficient!)</p>
<p>So the real question is: what could possibly justify the cost of virtual teams?!!!</p>
<p><strong>Dependencies</strong> are one of the most mis-understood aspects of working with an agile approach.Far too often I have seen teams that are struggling with scheduling based on dependencies when in fact they should simply be working to break the dependencies.&nbsp; That said, your question was particular and makes an assumption about team organization.&nbsp; In Scrum, component teams like you have described, are generally considered to be the worst possible way to organize your staff.&nbsp; Please consider re-organizing your teams so that each team has the knowledge and experience and skills to be able to work on any component or layer in your system.&nbsp; This way, you always have the capacity in a single team to deliver valuable functionality. </p>
</div>
<div style="font-size:.8em;margin-top:5px;">Ask <a href="http://www.askablogr.com/question/ask?blogger_id=80">Mishkin Berteig</a> a question.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/10/22/uncategorized/virtual-teams-and-dependencies/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Agile Recession Challenge - De-Bureaucratize!!!</title>
		<link>http://www.agileadvice.com/2008/10/16/theoryofagile/the-agile-recession-challenge-de-bureaucratize/</link>
		<comments>http://www.agileadvice.com/2008/10/16/theoryofagile/the-agile-recession-challenge-de-bureaucratize/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 05:19:16 +0000</pubDate>
		<dc:creator>Mishkin Berteig</dc:creator>
		
		<category><![CDATA[Theory of Agile]]></category>

		<category><![CDATA[agile]]></category>

		<category><![CDATA[recession]]></category>

		<category><![CDATA[scrum]]></category>

		<guid isPermaLink="false">http://www.agileadvice.com/?p=563</guid>
		<description><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/16/theoryofagile/the-agile-recession-challenge-de-bureaucratize/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'The Agile Recession Challenge - De-Bureaucratize!!!';
digg_bodytext = 'Okay,...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
Okay, global markets are in turmoil.  Consumer spending is dropping.  Economists are forecasting recessions or extremely small growth.  Businesses are adjusting revenue and earnings forecasts.  Bad news all around.
Actually, no.  This is the perfect time to be in business.  This time of crisis can actually be the opportunity that your business desperately needed, you just [...]]]></description>
			<content:encoded><![CDATA[<div style="float: left; width: 42px; padding-right: 10px; margin: 0 10px 0 0;"><script type="text/javascript">
<!--
digg_url = 'http://www.agileadvice.com/2008/10/16/theoryofagile/the-agile-recession-challenge-de-bureaucratize/';
digg_bgcolor = '#FFFFFF';
digg_skin = '';
digg_window = '';
digg_title = 'The Agile Recession Challenge - De-Bureaucratize!!!';
digg_bodytext = 'Okay,...';
digg_media = 'news';
digg_topic = '';
//-->
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
</div>
<p>Okay, global markets are in turmoil.  Consumer spending is dropping.  Economists are forecasting recessions or extremely small growth.  Businesses are adjusting revenue and earnings forecasts.  Bad news all around.</p>
<p>Actually, no.  This is the perfect time to be in business.  This time of crisis can actually be the opportunity that your business desperately needed, you just didn&#8217;t know it.</p>
<p>The way to get through this is simple: <strong>focus on value, remove waste and obstacles</strong>.  The trouble is, simple though this sounds, it&#8217;s actually very hard for many businesses.  Why?  Because one of the first responses to financial crisis is to cut costs, and the easiest, most obvious cost in most businesses is staff.  Cutting staff is not the same as focusing on value and removing waste and obstacles.  In fact, cutting staff is almost the exact wrong thing to do.  Why?  Because you still leave in place all the old policies, procedures, checkpoints, systems, role definitions, chokepoints, logjams and wasteful activities that were hidden because we were riding through &#8220;good times&#8221;.</p>
<p>It&#8217;s true, of course, that staff are a substantial cost for most businesses.  However, we sometimes lose sight of the fact that in any business where staff is a substantial cost, it also probably means that staff are responsible for a large proportion of the value your business generates.  <strong>Cutting staff therefore means reducing value, and that just puts your business into a vicious cycle.</strong> Cut staff, deliver less value, customers and clients don&#8217;t get as much value, they start looking elsewhere, you get more revenue pressure, you cut more staff, etc.  Not only that, but if you cut staff, but leave the bureaucracy in place, then the ratio of bureaucratic overhead to staff is increased leading to even worse productivity!</p>
<p>Okay, so where does agile fit in?  Simple: agile methods such as Scrum for software work and OpenAgile for business management are designed to help you find waste, remove it, focus on value, learn from both successess and mistakes, and do better next time all in very short cycles which allow you and your business and your teams to adapt to changing (market, economic, competitive) conditions very quickly, <strong>always delivering the highest value fastest and at the best price</strong>.</p>
<p>Recent case studies in the Scrum community are showing revenue gains of 200 to 400 percent in less than a year for companies that are rigorously adopting Scrum, not as a &#8220;solution&#8221; or a &#8220;methodology&#8221; but as a <strong>powerful, principle-based, learning framework applied universally</strong>.  Scrum and other agile methods, when used properly, cause substantial, deep changes in an organization&#8217;s culture and habits.  These changes all center around the idea of delivering high value, high quality, quickly, and always getting better and better and better at doing this.</p>
<p>Teams using agile methods become super-teams.  Organizations using agile methods become super-organizations.</p>
<p>Feeling the fear of recession?  Feeling the need to cut costs?  Anxious if your job, your team or your business is going to survive this crisis?  Use agile - Scrum, OpenAgile, Extreme Programming, Lean Software Development, Crystal - to not just survive the crisis, but to thrive while your competition struggles and succumbs to the challenges.</p>
<p>Some Other Reasons Agile is Good in a Recession:</p>
<blockquote><p>&#8220;customers will start asking about iterative deliveries (to control spendings(<em>sic</em>))&#8221; - (<a href="http://agilerevolution.net/tag/global-recession/">agilerevolution.net</a>)</p></blockquote>
<blockquote><p>&#8220;Agile can drastically improve time to benefits, quality and efficiency, team morale, the relationship between IT and business staff, and responsiveness to change.&#8221; - (<a href="www.thoughtworks.com/pdfs/WP_RecessionNewsForCIOs.pdf">thoughtworks.com</a> - PDF)</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.agileadvice.com/2008/10/16/theoryofagile/the-agile-recession-challenge-de-bureaucratize/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
