<?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>Gojko Adzic &#187; agiletd</title>
	<atom:link href="http://gojko.net/tag/agiletd/feed/" rel="self" type="application/rss+xml" />
	<link>http://gojko.net</link>
	<description>Building software that matters</description>
	<lastBuildDate>Tue, 31 Jan 2012 09:07:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Agile certification and quantification is a myth</title>
		<link>http://gojko.net/2010/10/13/agile-certification-and-quantification-is-a-myth/</link>
		<comments>http://gojko.net/2010/10/13/agile-certification-and-quantification-is-a-myth/#comments</comments>
		<pubDate>Wed, 13 Oct 2010 16:19:11 +0000</pubDate>
		<dc:creator>gojko</dc:creator>
				<category><![CDATA[articles]]></category>
		<category><![CDATA[agiletd]]></category>
		<category><![CDATA[certification]]></category>

		<guid isPermaLink="false">http://gojko.net/?p=2028</guid>
		<description><![CDATA[At the Agile Testing Days conference last week in Berlin Rob Lambert presented on how excessive structure kills creativity and what that means for agile software development. One of his main arguments was that making agile development palatable to larger companies pretty much defeats the key points of the Agile...]]></description>
			<content:encoded><![CDATA[<p>At the <a href="/tag/agiletd">Agile Testing Days</a> conference last week in Berlin <a href='http://thesocialtester.posterous.com/'>Rob Lambert</a> presented on how excessive structure kills creativity and what that means for agile software development. One of his main arguments was that making agile development palatable to larger companies pretty much defeats the key points of the Agile Manifesto.<span id="more-2028"></span></p>
<p>Lambert said that creativity is crucial for software development problem-solving and a key factor for exploration, adapting and iterating, which are some of the core values shared by successful agile software delivery teams. Some structure is required to facilitate creativity, but excessive structure kills it, said Lambert. “We need enough structure”, said he, presenting several case studies of very creative companies. According to Lambert, the features of teams with “enough structure” are:</p>
<ul>
<li>people and their talents are a sole measure of competency</li>
<li>they do not use generic best practices but apply relative judgement</li>
<li>they spread skills and merge roles</li>
<li>they create cross-functional teams</li>
<li>they empower teams</li>
</ul>
<p>This leads to short feedback loops, responding to change fast and craftsmanship. People in such teams are treated as humans, not as resources, according to Lambert. With excessive structure, people are treated as resources and the environment creates long feedback loops and slow responsiveness to change. He gave several examples of excessive structure:</p>
<ul>
<li>formal education and certificates as measures of competency</li>
<li>enforcing generic best practices for everything</li>
<li>creating silos of skills</li>
<li>putting barriers between teams</li>
<li>enforcing layers of approval</li>
</ul>
<p>Lambert then said that Agile Manifesto is an example of “enough structure”, and that it supports creativity in teams. Opposing the trend to adopt agile development because “of its coolness”, Lambert said:</p>
<blockquote><p>
Moving to agile won&#8217;t make you creative. <br />
It doesn&#8217;t mean that you can only be creative if you are agile.<br />
But if you remove excessive structure, and have just enough of it, creative open minded people will naturally gravitate to you.
</p></blockquote>
<p>He warned against making agile “more palatable to companies who would not adopt them in the first place”, saying that the calls for quantification and certification of agile skills and teams create a risk of putting in too much structure. There is no such thing as “A scrum team is able to produce this&#8230; and if your team doesn&#8217;t, you can do this &#8230;”, said Lambert. Introducing metrics and check lists for what makes a team agile might make it easier to larger companies to adopt something, but that has nothing to do with original ideas of agile development. “It&#8217;s just a complete myth”, said Lambert, adding that “agile has been working fine”.</p>
<p>I&#8217;m not so sure about talent being a sole measure of competency, because lots of talent can lead to no effect without effort and utilisation, but I do agree with most of the other points. Certification and checklists do make it easier for large organisations to adopt the agile cargo cult, but I do not see how this can give anyone any benefits apart from the organisations that sell certificates. (Which was nicely picked up by Tobias Mayer recently in his <a href="http://agileanarchy.wordpress.com/2010/10/12/the-scrum-compliance/">blog post where he tries to wash his hands from certification like a modern day Pontius Pilate</a>).   </p>
<p>See the presentation slides <a href='http://thesocialtester.posterous.com/agile-testing-days-my-presentation-on-creativ'>on Rob&#8217;s blog</a>. </p>
<p>Also see <a href="/tag/agiletd">other articles from Agile Testing Days</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://gojko.net/2010/10/13/agile-certification-and-quantification-is-a-myth/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Short video: Top 10 reasons why teams fail with agile acceptance testing</title>
		<link>http://gojko.net/2010/10/11/short-video-top-10-reasons-why-teams-fail-with-agile-acceptance-testing/</link>
		<comments>http://gojko.net/2010/10/11/short-video-top-10-reasons-why-teams-fail-with-agile-acceptance-testing/#comments</comments>
		<pubDate>Mon, 11 Oct 2010 19:37:54 +0000</pubDate>
		<dc:creator>gojko</dc:creator>
				<category><![CDATA[presentations]]></category>
		<category><![CDATA[agiletd]]></category>

		<guid isPermaLink="false">http://gojko.net/?p=2033</guid>
		<description><![CDATA[For those of you confused by the slides in my previous post, here is what you missed if you weren&#8217;t at agile testing days:]]></description>
			<content:encoded><![CDATA[<p>For those of you confused by the slides in my previous post, here is what you missed if you weren&#8217;t at <a href="/tag/agiletd">agile testing days</a>:</p>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/3F-RvT-ozuc?fs=1&amp;hl=en_US"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/3F-RvT-ozuc?fs=1&amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://gojko.net/2010/10/11/short-video-top-10-reasons-why-teams-fail-with-agile-acceptance-testing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Top 10 reasons why teams fail with ATDD</title>
		<link>http://gojko.net/2010/10/06/top-10-reasons-why-teams-fail-with-atdd/</link>
		<comments>http://gojko.net/2010/10/06/top-10-reasons-why-teams-fail-with-atdd/#comments</comments>
		<pubDate>Wed, 06 Oct 2010 10:01:47 +0000</pubDate>
		<dc:creator>gojko</dc:creator>
				<category><![CDATA[presentations]]></category>
		<category><![CDATA[agiletd]]></category>
		<category><![CDATA[atdd]]></category>

		<guid isPermaLink="false">http://gojko.net/?p=2012</guid>
		<description><![CDATA[Here is my presentation from today&#8217;s talk on top 10 reasons why teams fail with ATDD from Agile Testing Days 2010. The interviews are from my upcoming book on Specification by Example, to be published soon by Manning. I also mentioned our opensource book on Cucumber called The Secret Ninja...]]></description>
			<content:encoded><![CDATA[<p>Here is my presentation from today&#8217;s talk on top 10 reasons why teams fail with ATDD from <a href="/tag/agiletd">Agile Testing Days 2010</a>. The interviews are from my upcoming book on <a href="http://manning.com/adzic/">Specification by Example</a>, to be published soon by Manning. I also mentioned our opensource book on Cucumber called <a href="http://cuke4ninja.com">The Secret Ninja Cucumber Scrolls</a>. </p>
<div class="prezi-player">
<style type="text/css" media="screen">.prezi-player { width: 550px; } .prezi-player-links { text-align: center; }</style>
<p><object id="prezi_9tepuuruumw-" name="prezi_9tepuuruumw-" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="550" height="400"><param name="movie" value="http://prezi.com/bin/preziloader.swf"/><param name="allowfullscreen" value="true"/><param name="allowscriptaccess" value="always"/><param name="bgcolor" value="#ffffff"/><param name="flashvars" value="prezi_id=9tepuuruumw-&amp;lock_to_path=0&amp;color=ffffff&amp;autoplay=no&amp;autohide_ctrls=0"/><embed id="preziEmbed_9tepuuruumw-" name="preziEmbed_9tepuuruumw-" src="http://prezi.com/bin/preziloader.swf" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="550" height="400" bgcolor="#ffffff" flashvars="prezi_id=9tepuuruumw-&amp;lock_to_path=0&amp;color=ffffff&amp;autoplay=no&amp;autohide_ctrls=0"></embed></object>
<div class="prezi-player-links">
<p><a title="" href="http://prezi.com/9tepuuruumw-/top-10-reasons-teams-fail-with-acceptance-testing/">Top 10 Reasons teams fail with acceptance testing</a> on <a href="http://prezi.com">Prezi</a></p>
</div>
</div>
<p> <a href="/tag/agiletd">See more ports from Agile Testing days 2010</a></p>
]]></content:encoded>
			<wfw:commentRss>http://gojko.net/2010/10/06/top-10-reasons-why-teams-fail-with-atdd/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Rethinking user interface test automation</title>
		<link>http://gojko.net/2010/10/05/rethinking-user-interface-test-automation/</link>
		<comments>http://gojko.net/2010/10/05/rethinking-user-interface-test-automation/#comments</comments>
		<pubDate>Tue, 05 Oct 2010 10:37:45 +0000</pubDate>
		<dc:creator>gojko</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[agiletd]]></category>
		<category><![CDATA[automated testing]]></category>
		<category><![CDATA[pyusecase]]></category>
		<category><![CDATA[texttest]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[use case recorders]]></category>

		<guid isPermaLink="false">http://gojko.net/?p=2013</guid>
		<description><![CDATA[Geoff Bache presented on &#8220;Making GUI testing productive and Agile&#8221; today at Agile Testing Days 2010. Bache started by saying that there is an assumption in the community at the moment that GUI testing is hard to pull off correctly, much harder than data-driven testing, and that many teams have...]]></description>
			<content:encoded><![CDATA[<p>Geoff Bache presented on &ldquo;Making GUI testing productive and Agile&rdquo; today at <a href="/tag/agiletd">Agile Testing Days 2010</a>. Bache started by saying that there is an assumption in the community at the moment that GUI testing is hard to pull off correctly, much harder than data-driven testing, and that many teams have given up on that approach. But instead of bypassing the user interface, he advised teams to re-think the entire user interface testing approach and make it productive.<span id="more-2013"></span></p>
<p>Record/playback implementations are tightly coupled with user interface layouts which makes them brittle and hard to maintain. That is the reason why teams gave up on user interface tests. According to Bache, the problems with data-driven approach (how he called API-level testing with tools such as FitNesse, Concordion or Cucumber) are that it doesn’t give non-programmers confidence in the whole system working and it deals with abstractions, and abstract tests require writers who can think in abstractions. </p>
<p>To get the confidence in the system and also easy maintenance, Bache advised combining domain-language descriptions of use cases with recorded user interface actions. The <a href="http://sourceforge.net/projects/pyusecase/">pyUseCase recorder tool</a> he built allows teams to record actions and assign domain names to such recorded actions, which can later be combined into scripts. This provides a level of abstraction to make the test system more reusable and easier to maintain, but also makes recorded test cases easier to understand. There are similar tools for <a href="http://jusecase.sourceforge.net/">Java</a> and <a href="http://sourceforge.net/projects/nusecase/">.NET</a>. (Bache said that Java Use Case recorder is no longer maintained, though).</p>
<p>Bache also advised teams to re-think the traditional approach of assertions as a way to validate actions in scripts. &ldquo;Assertions mean variables, and variables mean programming. This breaks nice domain language use cases and starts mixing them with programming concepts&rdquo; said Bache. This reduces readability. Instead of that, he advised verification by logging – inspecting textual log outputs of the system to validate that a function was performed correctly. “Tests are much more about behaviour change management than assertions”, said Bache, “It’s more about here is what my test does today, and I can manage a change of that tomorrow”. He uses <a href="http://texttest.org">TextTest</a> to compare textual outputs of the system.</p>
<p>This approach allows teams to record domain activities, combine them into readable scripts and, save detect behaviour changes by comparing log outputs. Teams can focus on behaviour changes and domain language use cases. “Often the devil is in the detail and you want to manage changes in detail when your system behaviour changes”, said Bache. Instead of defining assertions, teams can inspect changes and decide whether the changes were expected or unexpected.  </p>
<p>As additional advantages of this approach, Bache said  it allows teams to create new tests required little or no programming. Resulting tests are robust and readable and cheap to maintain when user interface layout changes.</p>
<p>From my experience, aligning tests with the business domain model (which Bache called “thinking in abstractions”) works well for user interface tests as well and it allows teams to avoid the <a href="http://gojko.net/2010/07/29/the-sine-of-death-by-ui-test-automation/">sine of death of UI test automation</a>. More importantly, it allows teams to drive their business model using tests. But this is not at odds with the Use Case recording model. I see how Use Case Recorders can be very useful when recorded user interface testing is the only thing you can do, such as in implementing functional test automation on legacy system, especially when the state of the system depends on a large number of factors.</p>
]]></content:encoded>
			<wfw:commentRss>http://gojko.net/2010/10/05/rethinking-user-interface-test-automation/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bug tracking for agile teams</title>
		<link>http://gojko.net/2010/10/05/bug-tracking-for-agile-teams/</link>
		<comments>http://gojko.net/2010/10/05/bug-tracking-for-agile-teams/#comments</comments>
		<pubDate>Tue, 05 Oct 2010 08:31:29 +0000</pubDate>
		<dc:creator>gojko</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[agiletd]]></category>
		<category><![CDATA[lisa crispin]]></category>

		<guid isPermaLink="false">http://gojko.net/?p=2003</guid>
		<description><![CDATA[Lisa Crispin presented a keynote titled “Limbo lower now: An agile approach to defect management” today at the Agile Testing Days 2010 in Berlin today. She compared defect management to Limbo dancing where the bar is progressively lowered. “We want to lower the bar and reduce defects”, said Crispin. The...]]></description>
			<content:encoded><![CDATA[<p><a href="http://lisacrispin.com/">Lisa Crispin</a> presented a keynote titled “Limbo lower now: An agile approach to defect management” today at the <a href="/tag/agiletd">Agile Testing Days 2010</a> in Berlin today. She compared defect management to <a href="http://en.wikipedia.org/wiki/Limbo_%28dance%29">Limbo dancing</a> where the bar is progressively lowered. “We want to lower the bar and reduce defects”, said Crispin. <span id="more-2003"></span></p>
<p>The traditional view for defects is that teams want to track and keep a record of them to perform analysis such as defect rates and root cause analysis. Many of the traditional advantages of defect tracking systems do not apply to agile development, said Crispin. Metrics, traceability, knowledge base of past defects and prioritisation are handled better with other tools in agile teams, such as unit tests, continuous integration and task cards. This makes the use of defect tracking tools on agile projects a bit controversial. </p>
<p>In the lean and agile view on software development, defect queues are queues of rework, and waste (Poppendieck). The lean approach is to write a test to confirm a defect, fix it and the test will prevent it from re-occurring. Teams using these processes treat bugs as technical debt. </p>
<p>As some potential uses for traditional defect tracking systems in agile teams, Crispin mentioned coordinating distributed/large teams and giving customers access and visibility over system issues. “If you’re using post-its or cards on the wall, people in other location can’t see that”, said she.</p>
<p>Offering an alternative perspective to bugs, she quoted <a href="http://antonymarcano.com/blog/">Antony Marcano</a> saying that defect reports are missed features and misbehaviour of the system. Bugs can point to missing features, so a defect tracking system can help identify them, but defect tracking systems are not necessarily the best tools for the job.</p>
<p>Instead of logging bugs, she advised writing tests to confirm the bugs. This is a good opportunity for the team to practice writing good tests, which they can apply later for test-first development. (This is the idea behind Defect Driving Development approach to teaching TDD). “Tests that reproduce bugs can be used as a good communication tool between developers and testers”, said Crispin.</p>
<p>Crispin said that choosing the right way to track or solve defects should be a team problem, that each team should understand their real needs and choose a solution by team consensus. Crispin advised teams to experiment. Some good ideas to experiment with are:</p>
<ul>
<li>Try starting out without a defect tracking system</li>
<li>Try to turn bugs into stories</li>
<li>Set rules such as &#8220;no more than 10 bugs at once&#8221;</li>
<li>Try to fix all bugs immediately</li>
<li>Make bug cards visible</li>
<li>Prevent bugs in the first place</li>
</ul>
<p>Crispin’s team uses a defect tracking system for production bugs. For problems caught in development they just communicate the issues and not track them. “A problem caught in development is not a bug” said she, as the team is still working on it. When they find such a bug it is usually fixed straight away. If the team decides not to fix it immediately, it is put on a task card.</p>
<p>Not all bugs need to be tracked, though. Crispin gave an example of when her team spent an iteration fixing low priority bugs, and the business users were surprised by that – they preferred to have new functionality built in and did not care that much about low priority bugs. Tracking bugs that nobody cares about is waste in the process. On the other hand, she said that sometimes they push back and explain to customers that some lower priority bugs should be fixed because the team will be able to move faster later.</p>
<p>Related to metrics, Crispin said that her team values trends and goals more than actual metrics. She gave an example as of a goal: “no more than 6 bugs in production over the next six months”. They use the goals to measure how they are doing and decide whether to change the process.</p>
]]></content:encoded>
			<wfw:commentRss>http://gojko.net/2010/10/05/bug-tracking-for-agile-teams/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

