August 20, 2013

The Agile Smells go on and on

Agile has gone mainstream. Companies do it, governments do it, consultants, and contractors. Everybody does it. Right? Maybe not. The metaphor that comes to mind is a group of young men discussing sex. It’s cool, new and everybody wants in. The majority say they are doing but the sad fact is that most of them are lying and those that are actually doing it, are doing it wrong.
After seen Agile done well, and badly I started to become aware of “smells”. These smells are signs that despite of an Agile veneer, it’s not agile at all. A side point is that the word Agile has lost its meaning. It became this silver-bullet-buzzwordy thing and now it’s close to worthless. See, the point is not Agile, the point is to get better at developing software. Hopefully these smells will give you ideas on how to get better at what you and your team do.

Smells no. 1, 23, 4, 5, 6, 7, 8, 9 and 10

Smell no. 11 - Points obsession

Points are a key Agile metric. They represent the relative size of a given story in relationship to the other stories. Over time the team will go over a series of cards and the points are all added up. Instinctively points represent how much a team can do and is often used as a measure of capacity. This is perfectly valid and harmless. The smell to watch out for is when points become the only thing people care and talk about or track as the idealized demonstration of success.

Looking up to the Agile Manifesto for guidance one will see that working software trumps comprehensive documentation and change trumps plan. Points aren't what a team delivers, working software is and velocity is a plan that most likely will change. Often when people are new to the game they tend to focus too much on the wrong things. People that experimented with intraday stock trading certainly can relate to what I'll describe. Obsessively checking the price of a stock over and over again like an addicted lab rat, curiously enough doesn't make you a better trader, nor gives insights nor teaches the fundamentals of the market. 

Set your project goals, trust your team and work on the fundamentals. The points will come.

A corollary smell is ever rising points. Unless something changes drastically, teams should expect points to go up only marginally, and that is OK. We aspire for sustainable pace and when points plateau that doesn't mean that your team is bad, it only means that that’s what they can realistically do you without comprising quality and sustainability.

Smell no. 12 - Cards pile in one lane and it's not the DONE column

Teams use card walls to make work visible and ensure optimal throughput. Think of it as being a highway. It certainly makes very little sense to say that a given road can hold a certain number of cars. What’s the point of that? It isn't a parking lot. What’s the numbers that cross from A to B every hour? That’s a question worthwhile answering.

Now image that for a car to move you need to do more to it than just press the gas pedal. Imagine that you need, every mile or so change the tyres. And every other mile stop for an inspection to make sure your car passes emission tests. Assuming that both tasks take the same amount of time to be completed what do you think will happen if the tyre job had ten people and the emissions check only two? Yeah emissions queue. 

With software it isn't too dissimilar. The main difference is that time is a variable factor, which means that work may or may queue. The smell here is a team that doesn't care whether cards are queuing and impairing the overall throughput. This smell is a side effect of another smell - Developers only develop, testers only test, analysts only analyse, and managers only manage

A simple solution for cards accumulation in one column is to limit WIP – Work in Progress. This forces a pull behaviour to happen and highlights bottlenecks. 

Smells no. 13, 14, 15, 16, 17, 18 and 19

No comments:

Post a Comment