<?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>DevBalls{}</title>
	<atom:link href="http://www.devballs.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devballs.com</link>
	<description></description>
	<lastBuildDate>Wed, 15 Sep 2010 08:07:17 +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>Handling live support in a Scrum team</title>
		<link>http://www.devballs.com/2010/09/handling-live-support-in-a-scrum-team/</link>
		<comments>http://www.devballs.com/2010/09/handling-live-support-in-a-scrum-team/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 08:07:17 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Joel Spolsky]]></category>
		<category><![CDATA[Support]]></category>
		<category><![CDATA[Teams]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=110</guid>
		<description><![CDATA[We&#8217;ve all been there. You just about think you&#8217;ve got your team in a nice rhythm and your burn-downs are starting to look a bit less painful to slide down but, objectively speaking, your team capacity is pants.
You look at drag and it&#8217;s bad and getting worse.
The first thing I&#8217;d take a look at for [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devballs.com/wp-content/uploads/2010/09/support.jpg"><img class="alignleft size-full wp-image-111" title="support" src="http://www.devballs.com/wp-content/uploads/2010/09/support.jpg" alt="support" width="160" height="105" /></a>We&#8217;ve all been there. You just about think you&#8217;ve got your team in a nice rhythm and your burn-downs are starting to look a bit less painful to slide down but, objectively speaking, your team capacity is pants.</p>
<p>You look at drag and it&#8217;s bad and getting worse.</p>
<p>The first thing I&#8217;d take a look at for a team in that scenario is, who&#8217;s doing live support? <span id="more-110"></span></p>
<p>It&#8217;s a tricky one, after all, <em>someone</em> has got to do live support but in an attempt to distribute a pretty unpopular job, you&#8217;re asking all of your scrum team, at one point or another, to look at live support issues on an ad-hoc basis during their sprint. Whilst you think you&#8217;re doing the right thing, you&#8217;re not, you&#8217;re doing this:</p>
<ul>
<li>Introducing <a href="http://www.joelonsoftware.com/articles/fog0000000022.html" target="_blank">context switching</a> for (probably) all of the members of your team (50%+ reduction in productivity)</li>
<li>Making live support doubly unpopular by now raising its status from &#8220;Boring&#8221; to &#8220;A Boring Distraction&#8221;</li>
<li>Reducing the quality of live support by asking developers to balance it with their scrum commitments</li>
<li>Providing less-committed team members the perfect excuse at scrum meetings (e.g. &#8220;I would have done what I committed to yesterday, but I had to fix that css on live and it was a bit more fiddly than I first thought&#8221;)</li>
<li>Breaking one of the principal rules of Scrum by not protecting the team from change during a sprint (they didn&#8217;t commit to do live support and factoring it into drag is just lazy management/resourcing)</li>
</ul>
<p>The best answer I&#8217;ve seen to this was when I worked for Sean Sullivan at BCA. He had two teams of developers/testers, all working on the same product. One, the larger team, were the guys and gals dealing with the current Sprint Backlog and the other, smaller, team was working on live support. Crucially, the members of the live support team were rotated very frequently at sprint boundaries.</p>
<p>We don&#8217;t all have the luxury of a large team of developers and testers whom we can switch around at will. In fact, in the startup community, we might only have 2 developers and a part time tester who also does customer support. The principles though, hold absolutely firm no matter how large/small the team.</p>
<p>If you&#8217;re two developers sat in some incubator who are constantly trying to balance the needs of live customers with continuous product development, split your team down the middle and fight as hard as you can to make sure that the guy who&#8217;s working on the Sprint Backlog is left alone and rotate every sprint.</p>
<p>Of course, in a startup, there are times when this isn&#8217;t practical but if you&#8217;re trying to increase productivity, even in micro-teams, dealing properly with live support is imperative.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/09/handling-live-support-in-a-scrum-team/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thomas &#8211; my new best mate&#8230;</title>
		<link>http://www.devballs.com/2010/09/thomas-my-new-best-mate/</link>
		<comments>http://www.devballs.com/2010/09/thomas-my-new-best-mate/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 06:35:05 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Psychometrics]]></category>
		<category><![CDATA[Recruitment]]></category>
		<category><![CDATA[Teams]]></category>
		<category><![CDATA[Thomas]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=102</guid>
		<description><![CDATA[So I&#8217;m now a licensed by Thomas International to deliver, read, interpret and generally use to my advantage their Personal Profile Analysis reports. I&#8217;ve finished the training, searched my soul and bared my flaws and frustrations in front of a &#8220;support group&#8221; (read:class) of like minded HR professionals&#8230;
Oh, hang on a minute, I&#8217;m not an [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devballs.com/wp-content/uploads/2010/09/shrink.gif"><img class="alignleft size-full wp-image-104" title="hrink" src="http://www.devballs.com/wp-content/uploads/2010/09/shrink.gif" alt="Shrink" width="160" height="120" /></a>So I&#8217;m now a licensed by <a href="http://www.thomasinternational.net" target="_blank">Thomas International</a> to deliver, read, interpret and generally use to my advantage their Personal Profile Analysis reports. I&#8217;ve finished the training, searched my soul and bared my flaws and frustrations in front of a &#8220;support group&#8221; (read:class) of like minded HR professionals&#8230;</p>
<p>Oh, hang on a minute, I&#8217;m not an HR professional, I don&#8217;t even <em>like</em> HR professionals so what was I doing there?</p>
<p>Simple really, learning about a great tool that&#8217;ll help with recruitment decisions in the future and has changed the way I think about job adverts entirely.</p>
<p>If you look at a selection of ads for technical staff on the likes of CWJobs, you&#8217;ll find they read very much like the spec for a PC:</p>
<blockquote>
<pre>1 x Intel Xeon Quad Core knowledge of the .Net Framework</pre>
<pre>8GB SQL</pre>
<pre>160GB ASP.NET (with an 800MB css/ajax cache)</pre>
<pre>Dual HD eyes</pre>
<pre>102 key driving licence (UK) and mouse must be included</pre>
</blockquote>
<p>I&#8217;m afraid that ads like this are completely missing the point. When was the last time you found yourself saying &#8220;Dave&#8217;s a brilliant team-worker, it&#8217;s down to his great C# I think&#8221; or &#8220;Andy&#8217;s a good motivatior, he can use the WITH PIVOT function in SQL Server 2005 without even looking on Google&#8221;. My guess is, you never have.<span id="more-102"></span></p>
<p>When you&#8217;re putting together a team, you&#8217;re not hiring a collection of skills, you&#8217;re hiring a collection of individuals. Each of the team has unique personalities, needs and desires that require fulfilment and unique skills and values that they can bring to the table. If you&#8217;re going to get the best out of your people, whatever working practices you adopt, you&#8217;re going to have to treat them as individuals and help them gel together as a team. There&#8217;s no point in hiring that top drawer architect if he&#8217;s going to completely turn the team on it&#8217;s head. This doesn&#8217;t just apply for new hires either, internally sourced project teams should be put together with the same care and attention. Cherry picking the best techies from your wider talent pool and expecting them to deliver rarely works.</p>
<p>There are some lessons here:</p>
<ol>
<li>Hire for attitudinal fit, train for skills gaps. I&#8217;m not saying hire a Luddite plumber as an architect for a .NET project, just don&#8217;t write someone off if they don&#8217;t tick <em>all </em>your technical boxes. It&#8217;s immeasurably more difficult to train to mitigate for ill-fitting personalities than it is to teach a time-served techie to cut some HTML5.</li>
<li>When interviewing, don&#8217;t allow technical matters to dominate the interview. Most candidates can talk the talk and there are a number of coding tests that will be able to establish whether your candidate can walk the walk (the best of which, as far as I&#8217;m concerned, is <a href="http://codility.com/" target="_blank">Codility</a>). A very good alternative, of course, is asking the candidate to write code with pen and paper during the interview, but that&#8217;s a bit mean.</li>
<li>Use a psychometric tool. Whatever your preference, be it the <a href="http://www.thomasinternational.net" target="_blank">Thomas PPA</a>,  <a href="http://en.wikipedia.org/wiki/Belbin_Team_Inventory" target="_blank">Belbin</a>, <a href="http://en.wikipedia.org/wiki/Myers-Briggs_Type_Indicator" target="_blank">Meyers-Briggs</a> or <a href="http://en.wikipedia.org/wiki/Psychometric_Test" target="_blank">something else</a>. At a recent seminar at Entrepreneur Country, an industry commentator made the case that talent recruitment/retention exercises were some 75% more likely to be successful by using a psychometric tool in combination with a CV and an interview than simply by the use of a CV an interview alone. His advice on the choice of tool &#8211; &#8220;you get what you pay for&#8221;.</li>
<li>Don&#8217;t rush recruitment. It doesn&#8217;t matter how pressing the need (after all, when we need staff, we always need them &#8220;asap<em>&#8220;), </em>taking your time will pay off in the long run. Google gives every candidate up to a dozen interviews in different forms. I&#8217;m not suggesting we&#8217;ve all got the time, patience or resource for that but finding the right balance between that and a quick chat on the mobile whilst you nip out of the office for a cigarette is desirable.</li>
<li>When you&#8217;re writing job advertisements, don&#8217;t just focus on skills. Figure out what you really need from a person first and try and attract the person <em>and </em> the skills. Many of the psychometric offerings will give you a method for doing this, I happen to think that the job profiling tools offered by Thomas are particularly good.</li>
</ol>
<p>The last lesson I took from the Entrepreneur Country event:</p>
<p>&#8220;If you think that hiring the right staff is time consuming and expensive, wait and see what hiring the wrong staff is like&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/09/thomas-my-new-best-mate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Who&#8217;s looking after your scrum team whilst you&#8217;re away?</title>
		<link>http://www.devballs.com/2010/08/whos-looking-after-your-scrum-team-whilst-youre-away/</link>
		<comments>http://www.devballs.com/2010/08/whos-looking-after-your-scrum-team-whilst-youre-away/#comments</comments>
		<pubDate>Fri, 06 Aug 2010 07:08:53 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=95</guid>
		<description><![CDATA[I&#8217;m off on leave for two weeks on Tuesday. I&#8217;ve done all the usual preparations, eaten most of my frogs and sent the usual &#8220;who&#8217;s doing what&#8221; email around to various people in the office so that everyone&#8217;s clear about my areas of responsibility whilst I&#8217;m off.
Probably the biggest responsibility I&#8217;ve got is for product development. We&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devballs.com/wp-content/uploads/2010/08/beach.gif"><img class="alignleft size-full wp-image-100" title="beach" src="http://www.devballs.com/wp-content/uploads/2010/08/beach.gif" alt="" width="166" height="167" /></a>I&#8217;m off on leave for two weeks on Tuesday. I&#8217;ve done all the usual preparations, <a href="http://www.amazon.co.uk/Eat-That-Frog-Important-Things/dp/0340835044" target="_blank">eaten most of my frogs</a> and sent the usual &#8220;who&#8217;s doing what&#8221; email around to various people in the office so that everyone&#8217;s clear about my areas of responsibility whilst I&#8217;m off.</p>
<p>Probably the biggest responsibility I&#8217;ve got is for product development. We&#8217;ve got a decent sized team and we&#8217;ve got a new starter joining that team whilst I&#8217;m off. They&#8217;re starting a new, very exciting project and we&#8217;ve got to deliver, fast. It&#8217;s more important that this team delivers right now than anything else. In previous lives I would have been picking up the phone several times during my break to a temporary project manager I&#8217;d have had to put in place and there&#8217;s every chance that I&#8217;d have had to dish out a fair few complaints to the team for under-performance on my return.</p>
<p>Not this time. We run scrum. I&#8217;ve asked one of the team to be scrum master whilst I&#8217;m away. I know she&#8217;ll do a good job and the team are so motivated and producing such a volume of good quality work, there is very little that can get in their way.</p>
<p>I guess I&#8217;ll have to find something else to worry about whilst I&#8217;m off&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/08/whos-looking-after-your-scrum-team-whilst-youre-away/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testers are not a &#8220;nice to have&#8221;</title>
		<link>http://www.devballs.com/2010/07/testers-are-not-a-nice-to-have/</link>
		<comments>http://www.devballs.com/2010/07/testers-are-not-a-nice-to-have/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 17:29:58 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Joel Spolsky]]></category>
		<category><![CDATA[Teams]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=88</guid>
		<description><![CDATA[One of the things I will always have with me on my first day in any job is a USB memory stick with Joel&#8217;s list on it. A colleague and friend brought it to my attention a while ago now and it&#8217;s a great point of reference for any software team. Sitting at number 10 on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devballs.com/wp-content/uploads/2010/07/tester.jpg"><img class="alignleft size-thumbnail wp-image-90" title="tester" src="http://www.devballs.com/wp-content/uploads/2010/07/tester-150x150.jpg" alt="" width="150" height="150" /></a>One of the things I will always have with me on my first day in any job is a USB memory stick with <a href="http://www.joelonsoftware.com/articles/fog0000000043.html" target="_blank">Joel&#8217;s list</a> on it. A colleague and friend brought it to my attention a while ago now and it&#8217;s a great point of reference for any software team. Sitting at number 10 on the list is &#8220;Do you have testers?&#8221;.</p>
<p>I&#8217;ve had at least a dozen discussions with people who don&#8217;t believe that dedicated testers are necessary. Many of them sit in the &#8220;the developers should be testing their own work&#8221; court. Spolsky says that teams should have dedicated testers so that you don&#8217;t have a $100/hour programmers doing work that could be done by $30/hour testers. I don&#8217;t agree entirely with either of these positions.<span id="more-88"></span></p>
<p>Of course developers should be testing their own work to a point, the first test of which is &#8220;does it build?&#8221;, but would I expect  a developer to want to build and run dozens of test cases every time they produce some new piece of functionality? No, for a number of reasons:</p>
<ol>
<li>There is a good reason by the QA function in any walk of life is very rarely performed by the person(s) who produced the work in the first place &#8211; people are very bad at finding fault in their own work.</li>
<li>Developers and testers are different beasts and have a very different focus in life. Devs are naturally impatient, I don&#8217;t think I&#8217;ve met one who isn&#8217;t itching to move on to the next module/product. Devs, once they&#8217;ve solved the problem in their mind, written the code and got it working, they&#8217;ve done most of the &#8220;fun bit&#8221; of development. Testers aren&#8217;t so restless and their challenge is different. All of the good testers I&#8217;ve met have a dogged determination to ensure that the software as a whole is the best it can be, no matter what it takes. These two sets of personality characteristics are not natural bedfellows and the result of this is that a great developer is unlikely to even be <em>able</em> to do the work of a tester, let alone willing.</li>
<li>Testers make developers more productive. The more time developers get to occupy that &#8220;solving mental problems&#8221; space (see 2 above), the more you&#8217;ll get out of them. The more confidence that they have that there is a good testing team (or single tester) behind them, the happier they&#8217;ll be in that space and the less anxious they&#8217;ll be about the code they&#8217;ve already produced.</li>
<li>Testers make product owners less busy. If anyone in your team needs a clear, full understanding of the big picture, it&#8217;s the tester. Invariably, in my experience, it&#8217;s the testers that &#8220;get it&#8221; where quite often the developers don&#8217;t (perhaps  because they tend to make the mental  jump straight from User Story (or equivalent) to implementation). The testing team are often the first point of reference for the developers when there&#8217;s a choice to make or an ambiguity to iron out.</li>
<li>Testers give you confidence come roll-out. Anyone who has ever been up at 3am on a Sunday hitting the &#8220;go&#8221; button on a deployment doesn&#8217;t need me to elaborate here.</li>
</ol>
<p>As for hiring testers on a purely financial basis (they&#8217;re cheaper than developers), again, I don&#8217;t agree. Testing is a highly skilled profession. Sure, anyone can &#8220;have a go&#8221; but great testers are just the same as great developers &#8211; worth their weight in gold and rewarded as such.</p>
<p>In our scrum team at <a href="http://www.kashflow.co.uk" target="_blank">KashFlow</a> the testing function isn&#8217;t just about test cases and their execution, it&#8217;s much more than that. Our testers are a proxy for the voice of our customers. Sure, the customers come up with the product backlog pretty much on their own, but when it comes to implementation it&#8217;s our testers who can balance the combined requirements of several thousand customers to achieve the right result for the vast majority.</p>
<p>I&#8217;m sure there are loads of other reasons why testers are a good idea, but these are the important ones for me and, sorry Joel, &#8220;cheap&#8221; isn&#8217;t anywhere on my list. Any I&#8217;ve missed?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/07/testers-are-not-a-nice-to-have/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Outsourcing doesn&#8217;t work unless you &#8220;sit on them&#8221; &#8211; Rubbish!</title>
		<link>http://www.devballs.com/2010/04/outsourcing-doesnt-work-unless-you-sit-on-them-rubbish/</link>
		<comments>http://www.devballs.com/2010/04/outsourcing-doesnt-work-unless-you-sit-on-them-rubbish/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 16:52:38 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Insourcing]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Offshoring]]></category>
		<category><![CDATA[Outsourcing]]></category>
		<category><![CDATA[Teams]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=69</guid>
		<description><![CDATA[By virtue of what can only have been a &#8220;few spare chairs&#8221;, I found myself at the inaugural IT Leaders Forum a couple of weeks ago at the Imperial War Museum and spent a part of my afternoon chewing the fat in the company of many of the C-level execs from the IT departments of a veritable [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-73" title="Whip" src="http://www.devballs.com/wp-content/uploads/2010/04/whip.jpg" alt="" width="128" height="81" />By virtue of what can only have been a &#8220;few spare chairs&#8221;, I found myself at the inaugural <a href="http://web.incisive-events.com/xmlpub/sites/live/btg/2010/03/it-leaders--forum/programme.html" target="_blank">IT Leaders Forum</a> a couple of weeks ago at the Imperial War Museum and spent a part of my afternoon chewing the fat in the company of many of the C-level execs from the IT departments of a veritable &#8220;who&#8217;s who&#8221; of  blue-chip globals. I enjoyed the event a great deal but at one point during the afternoon I got a little <em>irate</em>. <span id="more-69"></span></p>
<p>Just like a group of lads in the pub will invariably end up talking about football; get a bunch of CIO/CTOs in the room and they&#8217;ll, at some point, get around to talking about outsourcing. As it happened, it was during the first part of the programme, a panel debate. Somebody in the audience asked what members of the <a href="http://web.incisive-events.com/xmlpub/sites/live/btg/2010/03/it-leaders--forum/speakers.html" target="_blank">panel</a> thought of outsourcing and all of the members of the panel reeled off an interesting, sometimes insightful, list of anecdotes. I will share with you the two that, in my opinion, lacked insight.</p>
<p>The first was <a href="http://web.incisive-events.com/xmlpub/sites/live/btg/2010/03/it-leaders--forum/Darrell-Stein.html" target="_blank">Darrell Stein</a>, CIO of Marks &amp; Spencer. His experience was that he found he &#8220;had to send a really great project manager over there[sic] to sit on them&#8221; in order to achieve a positive outcome. The second was Catherine Doran, Director of Corporate Development at Network Rail. Catherine&#8217;s experience was that the cost benefit of outsourcing was substantially reduced by virtue of the fact that the work output of &#8220;one of them&#8221; is substantially less than you might get from someone &#8220;over here&#8221;. If you can&#8217;t see why this wound me up, stop reading.</p>
<p>Schein (1988) in his work on  Organisational Culture and Leadership, said that we can make an assessment of organisational culture based on a number of things, including the language used in an organisation. Here we have the Leaders of the IT Leaders Forum using language like &#8220;sit on them&#8221; and &#8220;one of them&#8221; and I don&#8217;t think it too unfair to assert that these &#8220;visible products&#8221; of culture (by Schein&#8217;s definition) infer that there is a generally negative perception of outsourcing in big business.</p>
<p>I can hear you saying &#8220;no s**t Sherlock&#8221;, and I agree. That there is a negative perception of outsourcing amongst many IT leader is not news. What I did realise is that, despite my question to the panel on the subject, these leaders couldn&#8217;t really explain <em>why</em> they think that&#8217;s the case. I can.</p>
<p>Whether you have a team of 2 or 200, it doesn&#8217;t matter where they are, Birmingham or Bangalore, if you don&#8217;t manage them, they will fail. Whatever their location, cultural background, native language or any other variable, the team need to be respected and treated as professionals. As IT managers, we must invest substantially in bringing the team on board and getting up to speed with the processes, products and expectations of the company they are working with/for. This applies equally to an in-sourced or outsourced team. Without doubt, it takes much more management effort to instill the values and beliefs of an organisation in an outsourced team than it does if they are in-sourced but that&#8217;s because they are not there to see and feel the artifacts of culture like an in-sourced team are (Schein ibid.).</p>
<p>The mistake that many IT organisations that outsource make is to fall into the trap of believing that an outsourced team doesn&#8217;t require as much mangement as a domestic team. One of the great business benefits of outsourcing is that it reduces your people management headaches, surely? In fact the opposite is true. Furthermore, managing an outsourced team when your Leader espouses the cultural values of the purchasing organisation by using language like &#8220;sit on them&#8221; and &#8220;over there&#8221;, is going to be a challenge.</p>
<p>When you outsource, it puts your skills as a manager to the test. If you can&#8217;t manage a team in your own office, you sure as hell can&#8217;t manage a team 5000 miles away who may not even be employed by you. Any decent manager could manage an outsourced team but we&#8217;ve go to be aware that it will involve a considerable investment of time, just as much, if not more, than would be involved in on-boarding a team in the domestic office. Approach an outsourced project with that in mind and you won&#8217;t go far wrong. Approach an outsourced project expecting that the team will just &#8220;get on with it&#8221; at your, and your project&#8217;s, peril.</p>
<p>P.S. As for another argument I heard at the IT Leaders Forum that went something like &#8220;you can&#8217;t outsource the &#8216;clever stuff&#8217; (architecture)&#8221; &#8211; what drivel. India invented Chess, Dentistry, Fibre Optics, the USB&#8230;.oh and the <a href="http://en.wikipedia.org/wiki/Binary_numeral_system" target="_blank">binary</a> and <a href="http://en.wikipedia.org/wiki/Decimal_Number_System" target="_blank">decimal </a>number systems (amongst <a href="http://en.wikipedia.org/wiki/List_of_Indian_inventions_and_discoveries" target="_blank">hundreds</a> of other inventions/discoveries). Last time I checked they had clever people in India too, and if you&#8217;re a decent manager, you&#8217;ll find them.</p>
<p>P.P.S. I enjoyed the IT leaders forum a great deal and, for the most part, was particularly impressed by Darrell Stein. I enjoyed his general approach, inisight and the levity (with a serious subtext) that he brought to the gathering. Not sure they&#8217;ll invite me back though&#8230;</p>
<p><strong>References:</strong></p>
<p>Schein, E. H. 1988.Organizational Culture and Leadership. San Francisco: Jossey-Bass.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/04/outsourcing-doesnt-work-unless-you-sit-on-them-rubbish/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Why does Scrum REALLY work?</title>
		<link>http://www.devballs.com/2010/04/why-does-scrum-really-work/</link>
		<comments>http://www.devballs.com/2010/04/why-does-scrum-really-work/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 16:49:01 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Motivation]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Teams]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=57</guid>
		<description><![CDATA[Type &#8220;Scrum&#8221; into Google and you&#8217;ll get a plethora of articles about Artefacts, Roles and Ceremonies and all that good stuff. You&#8217;ll also get plenty of information about &#8220;Business Value&#8221;, &#8220;Adapting to a changing environment&#8221;, &#8220;Work tracking&#8221;, &#8220;Process improvement&#8221; etc, etc, etc. All that stuff is great. The former makes users of Scrum feel like [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devballs.com/wp-content/uploads/2010/04/HackmanAndOldham1.jpg"></a><a href="http://www.devballs.com/wp-content/uploads/2010/04/HackmanAndOldham1.jpg"></a>Type &#8220;Scrum&#8221; into Google and you&#8217;ll get a plethora of articles about Artefacts, Roles and Ceremonies and all that good stuff. You&#8217;ll also get plenty of information about &#8220;Business Value&#8221;, &#8220;Adapting to a changing environment&#8221;, &#8220;Work tracking&#8221;, &#8220;Process improvement&#8221; etc, etc, etc. All that stuff is great. The former makes users of Scrum feel like it&#8217;s a &#8220;proper&#8221; methodology/process (whatever the hell you want to call it &#8211; interesting, if slightly pedantic article about this discussion can be found <a title="here" href="http://www.rational-scrum.com/2010/03/scrum-is-not-an-agile-methodology/" target="_blank">here</a>), the latter helps execs who should know better buy in to something they don&#8217;t really &#8220;get&#8221;. It&#8217;s all got some value but it&#8217;s not what this article is about. This is about how adopting Scrum <em>can</em> turn an unproductive, stalling, unmotivated, disjointed team into a killer software development team with a real product focus in a matter of days.<br />
<span id="more-57"></span></p>
<p>Guess what? Like most things in business and, for that matter, in life&#8230;it&#8217;s all about the PEOPLE. Put very creative, very intelligent but poorly motivated people into a room with the best tools and materials available and they won&#8217;t be able to come up with a prototype for a matchstick together. Put some &#8220;average&#8221; but well motivated people in a room with no materials and tools, point them in the right direction and they&#8217;ll improvise, pull together, accept their environmental limitations and work magic.</p>
<p>I interviewed a &#8220;Senior Developer&#8221; a couple of months ago who had 3 years .Net web development experience with Citibank or some such similar organisation. Her 3 years of experience had been rebranding a single web form for various co-branded credit card partners. She had a Masters in Software from somewhere or other and had basically used all of her OO design skills to manipulate the same chunk of HTML for 3 years! This isn&#8217;t going to inspire motivation in anyone&#8230;but why?</p>
<p>Hackman and Oldham (1976) said that the failure of the developer described above to be motivated is directly attributable to the core characteristics of the job . Hackman and Oldham (ibid.) described, in their work on motivation theory, the Job Characteristics model which saw motivation as an outcome of job design with a number of heirarchichal dependencies. They said that in order to achieve motivation at work, the design of your job must help you achieve three Critical Psychological States (Meaningfulness, Responsibility, Knowledge of Results) and in order to do that, your job must have certain core characteristics (Skill Variety, Task Identity, Task Significance, Autonomy, Feedback from Job). It looked a bit like this:</p>
<p style="text-align: center;"><a href="http://www.devballs.com/wp-content/uploads/2010/04/ScrumJobCharacteristics.gif"></a><img class="aligncenter" title="Job Characteristics Model - Hackman &amp; Oldham (1976)" src="http://www.devballs.com/wp-content/uploads/2010/04/HackmanAndOldham1.jpg" alt="" width="321" height="225" /></p>
<p>Without too much of a leap in faith, we can map the attributes of the Scrum process to Hackman and Oldham&#8217;s (1976) core characteristics. What I&#8217;ve presented below is just a starting point, there&#8217;s plenty &#8220;missing&#8221;:</p>
<p style="text-align: center;"><img class="aligncenter" title="Scrum Job Characteristics" src="http://www.devballs.com/wp-content/uploads/2010/04/ScrumJobCharacteristics.gif" alt="" width="474" height="224" /></p>
<p>I&#8217;m sure you&#8217;ll agree, the fit is pretty straight forward.</p>
<p>Scrum works, QED.</p>
<p><strong>References</strong></p>
<p>Hackman, J. R. &amp; Oldham, G. R. (1976). Motivation through the design of work: Test of a theory. <span style="text-decoration: underline;">Organizational Behavior and Human Performance, 16</span>, 250-279.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/04/why-does-scrum-really-work/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Guess what? Scrum developers should be cutting code, period!</title>
		<link>http://www.devballs.com/2010/03/guess-what-scrum-developers-should-be-cutting-code-period/</link>
		<comments>http://www.devballs.com/2010/03/guess-what-scrum-developers-should-be-cutting-code-period/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 07:47:13 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Management]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=42</guid>
		<description><![CDATA[I got into a mini debate on Twitter last week and it got me thinking about my views on a few things Scrum. I&#8217;m not going to chew over the specifics of the to and fro as it&#8217;s very difficult to have a reasoned debate with only 140 characters per point but I thought I&#8217;d explore some of the issues arising [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-48" title="SquarePegRoundHole" src="http://www.devballs.com/wp-content/uploads/2010/03/sprhsml.jpg" alt="A square peg in a round hole" width="125" height="136" />I got into a mini debate on Twitter last week and it got me thinking about my views on a few things Scrum. I&#8217;m not going to chew over the specifics of the to and fro as it&#8217;s very difficult to have a reasoned debate with only 140 characters per point but I thought I&#8217;d explore some of the issues arising from it.</p>
<p>The thrust of the argument was &#8220;We don&#8217;t need you, managers. We&#8217;re developers using scrum and can do anything you can do&#8221;. The answer to that is, of course, &#8220;Yes, you can&#8221;.</p>
<p>According to the Scrum Guides you can get from <a href="http://www.scrum.org/scrumguides/">http://www.scrum.org/scrumguides/</a> your Product Owner and your Scrum Master can both be members of the team (but <em>never</em> the same person). So, leave &#8220;the Team&#8221; alone and they&#8217;ll produce top-drawer results, end of discussion, right? &#8216;Fraid not.</p>
<p><span id="more-42"></span>It all goes back to what Scrum is all about &#8211; hyperproductivity/maximising ROI (choose your phrase). I&#8217;ve got another article under my hat about how Scrum actually creates that hyperproductivity but, from the perspective of any business, for the sake of efficiency, it&#8217;s imperative that the right people are doing the right jobs &#8211; jobs that they&#8217;re fully equipped for. If you&#8217;ve got someone in a role that they don&#8217;t possess the right skills/experience for (e.g. a developer filling the BA role as a sideline) then, by definition, you&#8217;re spending money training them on the job and they&#8217;re making their novice mistakes on your watch. That&#8217;s fine, if you&#8217;re making a conscious decision to do this*, but don&#8217;t be fooled that a productive, self-organising team can rule the world and turn their hand to anything. Developers are good at cutting code, make sure they have the head-space to do so.</p>
<p>Skill matching is not the only thing to consider, there are also some very basic operations management principles at work in a Scrum team too. One of the many ways in which Scrum achieves hyperproductivity is by reducing the time-costs associated with task switching. Developers who are also BAs, the voice of the customer, support guys (&amp; gals) etc on top of their Developer role will waste <em>buckets</em> of time jumping between one thing and another. Besides the wasted time, the developer won&#8217;t be able to get so much &#8220;done&#8221;, thereby reducing his/her sense of achievement/motivation and, it&#8217;s a fact, <a href="http://www.ahealthyme.com/topic/multitasking" target="_blank">multi-tasking makes you stressed</a>.</p>
<p>There&#8217;s another facet to this debate, too. Even though &#8220;The Rules&#8221; say you can have a Product Owner as part of the Scrum team, I&#8217;d strongly advise against it. Why? Imagine the conflict of interest a Product Owner would experience if they were put under pressure (external/commercial) to change the contents of the Sprint Backlog half way through a sprint. Imagine how uncomfortable the Scrum Master would be if the team-based Product Owner started making &#8220;I know we shouldn&#8217;t really do this&#8230;but&#8221; sort of noises. The Product Owner in this scenario is probably the business owner too and, in terms of the food chain, almost certainly sits above him. This is exactly the sort of situation you shouldn&#8217;t design in to your team if you can possibly avoid it.</p>
<p>A relevant, recent example in my own experience could have played out like this but, for exactly the reasons outlined above, we went with a far-too-techie Product Owner sitting outside the team, picking off Product Backlog items at his leisure, outside the Sprint Capacity timebox. It works pretty well.</p>
<p>The bottom line is, whilst you can stick a square peg in a round hole, it requires some effort and you&#8217;ll find there are gaps around the edges.</p>
<h6>* I believe strongly that investing in your team in respect of their training is imperative, but only when you can afford it. </h6>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/03/guess-what-scrum-developers-should-be-cutting-code-period/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Scrum training &#8211; getting the balance right.</title>
		<link>http://www.devballs.com/2010/02/scrum-training-getting-the-balance-right/</link>
		<comments>http://www.devballs.com/2010/02/scrum-training-getting-the-balance-right/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 18:01:48 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Training]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=15</guid>
		<description><![CDATA[Earlier in the week I had to deliver a training session to one of our most recent additions to the technical team. He&#8217;s been there 3 months and, arguably, I should have provided this training already but I wanted to try something different.   
A &#8220;good&#8221; employer tends to pride themselves on the fact that they deliver [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier in the week I had to deliver a training session to one of our most recent additions to the technical team. He&#8217;s been there 3 months and, arguably, I should have provided this training already but I wanted to try something different.   </p>
<p>A &#8220;good&#8221; employer tends to pride themselves on the fact that they deliver hours, sometimes days, of training before a new pin can actually get on with some work. Invariably the Health and Safety Stasi and someone with a week long &#8221;Post-Educational Higher National Secondary Certificated Diploma in HR&#8221; get in on the act and the bright, enthusiastic new team member has the will to live sucked out of him/her over a matter of a few days whilst they answer pop-quizzes about correct lifting techniques and the location of fire exits.  </p>
<p><span id="more-15"></span>I&#8217;m lucky. I work in an entrepreneurial environment and can try things out without the aforementioned Stasi breathing down my neck asking why I was submitting the appraisal forms of my grade 14 staff 3 working days late. I&#8217;m also lucky in that I only have to deliver scrum training, which is one of the most straight forward things in the world to do. What makes it particularly easy is that, unless you&#8217;re some kind of Scrum fundamentalist, the scrum community does not present Scrum as the panacea for all the ills of waterfall (or chaos &#8211; depending on your alternative). Scrum training is not a matter of indoctrination, it&#8217;s more of a &#8220;well, this is how we choose to do it around here, and it&#8217;s not perfect but it suits us&#8221; type conversation.  </p>
<p>The manner in which Scrum training is delivered should reflect the themes or the principles of Scrum/Agile itself so I always try to apply the Agile manifesto to the training environment.  </p>
<div id="attachment_16" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.devballs.com/wp-content/uploads/2010/02/agilemanifesto.gif"><img class="size-medium wp-image-16 " title="Extract from the Agile Manifesto" src="http://www.devballs.com/wp-content/uploads/2010/02/agilemanifesto-300x196.gif" alt="" width="300" height="196" /></a><p class="wp-caption-text">Agile Manifesto</p></div>
<p>One or two of these we can take verbatim and apply them to the training context very easily but others need a bit of metaphorical treatment:  </p>
<ul>
<li>&#8220;Individuals and Interactions over Process and tools&#8221; can be quite easily applied. Scrum training sessions chez moi are informal affairs and for each one the style of delivery is tailored to the group.</li>
<li>The principle of &#8220;Working software over Comprehensive documentation&#8221; too applies well to the training environment. When software works, it does so because the requirements have been correctly reflected in code and the developer&#8217;s understanding crystallised. In a training context, if you see someone taking exhaustive notes about what you&#8217;re saying, they don&#8217;t &#8220;get it&#8221;. Scrum is not something you can learn by remembering, it sits firmly in the &#8220;learning by understanding&#8221; camp. If you see somebody you&#8217;ve trained at their first scrum referring to notes to see what they should be doing, you&#8217;ve done a bad job!</li>
<li>&#8220;Customer collaboration over Contract negotiation&#8221; in a training scenario is a curious one. Its application in an employee training scenario is, though, quite simple. As I said earlier in the piece, I never present Scrum as a panacea, merely, &#8220;how we do things around here&#8221;. Furthermore, I don&#8217;t present it as a rigid framework. The trainee(s) must, rightfully, feel that their input in the team does not extend only to the work output, but the method of working itself. So, the new team member can, in his first retrospective, completely change the manner of working if he can achieve the agreement of his team members. Scrum will never be a rigid framework, at least in application.</li>
<li>&#8220;Responding to change over Following a plan&#8221; should apply to any training environment, not just for Scrum training. Sure, there&#8217;s some knowledge to impart but any decent trainer knows that the best way to impart that knowledge to a group will depend on many factors. If the trainer doesn&#8217;t adapt to that, (s)he is lost.</li>
</ul>
<p>I&#8217;ve attached the slide deck that I use to train Scrum. It has come from a mixture of sources, including <a href="http://www.mountaingoatsoftware.com">www.mountaingoatsoftware.com</a> (from which the basic framework was sourced) and a friend and mentor (and exceptional Scrum trainer to boot) Sean Sullivan. The Mountain Goat framework has been significantly enriched by Sean, placing Scrum in a theoretical/academic/evidence-based context. I hope some of you find it of use. I don&#8217;t ask for a mention but it&#8217;s important, at least to Mountain Goat, that you retain their references.  </p>
<p style="text-align: center;"><object width="425" height="348"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=unbrandedredistributableintrotoscrum-100226083059-phpapp02"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=unbrandedredistributableintrotoscrum-100226083059-phpapp02"  type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="348"></embed></object><!-- ysttest:Array
(
    [id] => 3285439&amp;doc=unbrandedredistributableintrotoscrum-100226083059-phpapp02
)
--></p>
<p><a href="http://www.devballs.com/wp-content/uploads/2010/02/IntroToScrumSlides1.zip">Click here to download the slides</a> (Powerpoint 2007 format)</p>
<p><a href="http://www.devballs.com/wp-content/uploads/2010/02/IntroToScrumSlidesPpt.zip">Click here to download the slides</a> (Powerpoint 2003 format) </p>
<p>I&#8217;ll let you all know in another post whether the late training worked, or not but, a parting message:</p>
<p><strong><span style="color: #0000ff;">Train early or train late, make sure you train and if you&#8217;re training about agile, train agile!</span></strong></p>
<p>A side note -   </p>
<p>I don&#8217;t like the word &#8220;training&#8221; as applied to the general knowledge enhancement of humans. We train animals, we educate humans. However, who&#8217;s going to Google for &#8220;Scrum Education&#8221;?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/02/scrum-training-getting-the-balance-right/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Sprintboard &#8211; a Google Wave gadget for distributed scrum teams</title>
		<link>http://www.devballs.com/2010/02/sprintboard-a-google-wave-gadget-for-distributed-scrum-teams/</link>
		<comments>http://www.devballs.com/2010/02/sprintboard-a-google-wave-gadget-for-distributed-scrum-teams/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 18:20:18 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Google Wave]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://www.devballs.com/?p=7</guid>
		<description><![CDATA[A few years ago, I worked in a large software team where all of the tie-wearing developers were in the office for 9am. We had bags of office space and whiteboards EVERYWHERE. One of the things I saw done particularly well in that company was the way in which they used whiteboards to track the [...]]]></description>
			<content:encoded><![CDATA[<p>A few years ago, I worked in a large software team where all of the tie-wearing developers were in the office for 9am. We had bags of office space and whiteboards EVERYWHERE. One of the things I saw done particularly well in that company was the way in which they used whiteboards to track the progress of the sprint against the sprint tasks (sprint backlog) and draw up the burn-down.</p>
<p>At a glance, these &#8220;information radiators&#8221; as the Head of Web used to call them, anyone in the office could see how each sprint was going and, scratching the surface a little, they could see which tasks were proving problematic.</p>
<p>This works beautifully in an office based team where everyone could attend scrum on a daily basis and update their hours against each task on the sprint backlog. Where it doesn&#8217;t work quite so well is in a distributed team where the team members may be in different offices, homes or even countries. In my current company we&#8217;re putting together just such a distributed team and I want to try and make sure we don&#8217;t lose the effect that these whiteboards have on the visibility of the progress of the team.</p>
<p><span id="more-7"></span>TFS offers a solution and allows developers to update their hours spent/hours remaining against sprint backlog tasks, but it&#8217;s all a bit &#8220;hidden&#8221; for my liking and in order to keep scrum quick, the team need to be able to see the state of the sprint at the end of each scrum without running reports.</p>
<p>When I first saw Google Wave I thought it might offer a solution. Real time application collaboration with data stored in and retrieved from the cloud asynchronously &#8211; fantastic. What&#8217;s more, Torben Weis had already written Plany, a neat little project management gadget that provided a good framework to get going with.</p>
<p>After a fair bit of tinkering and a lot of learning, out popped Sprintboard, which emulates almost everything that we used to do with whiteboards in my former role. There&#8217;s plenty I want to do with it (Product Backlog tba) and I wasn&#8217;t going to put it public until it was much further down the line than it is, but that wouldn&#8217;t have been very agile of me now, would it.</p>
<p>Take a look, leave your feedback in comments and I&#8217;ll get requests put on the backlog. I&#8217;m also going to put this in some kind of shared source control (possibly google project hosting) which should help things no end.</p>
<p>You can add the gadget, for the moment, from <a href="http://www.devballs.com/wave/table.xml">http://www.devballs.com/wave/table.xml</a></p>
<p> <a href="http://www.devballs.com/wp-content/uploads/2010/02/Sprintboard.jpg"><img class="aligncenter size-medium wp-image-10" title="Sprintboard" src="http://www.devballs.com/wp-content/uploads/2010/02/Sprintboard-300x164.jpg" alt="" width="300" height="164" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/02/sprintboard-a-google-wave-gadget-for-distributed-scrum-teams/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://www.devballs.com/2010/02/hello-world/</link>
		<comments>http://www.devballs.com/2010/02/hello-world/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 17:58:24 +0000</pubDate>
		<dc:creator>Tim McOwan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Geeky]]></category>

		<guid isPermaLink="false">http://www.devballs.com.php5-7.dfw1-2.websitetestlink.com/?p=1</guid>
		<description><![CDATA[The obilgatory welcome]]></description>
			<content:encoded><![CDATA[<p>Ok, so it&#8217;s cliche but, in the world of the developer, it&#8217;s obligatory, we&#8217;ve all done it. Just so you have an idea, I&#8217;ve done it with VB5, VB6, VBA, VBScript, VB.Net and now C# (I&#8217;ve also done it in tcl but who the hell&#8217;s heard of that!). And I&#8217;ve used it in Macros, Win Forms apps, ASP 3.0, ASP.NET, Silverlight, Web Services. I&#8217;ve done it a LOT in SQL (various flavours) and even in SSIS and SSRS (2000 &amp; 2005). I even did it once in php (but I don&#8217;t tell many people about that!), notice the theme here? Pretty much all of it&#8217;s built on the Microsoft stack and I&#8217;m not ashamed to say it.</p>
<p>And now&#8230;I&#8217;ve done it in Wordpress!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devballs.com/2010/02/hello-world/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

