Adventures in Agile: The Scrum Board

8 Dec 2009 / The Programmer

For 3-1/2 months, we’ve been using a scrum board — not the one in the photo, but similar — to track tasks on a development project. Tasks start out on the left side of the board in a Not Started column, then move through In Progress, Code Complete and User Testing on the way to Done.

Today someone said, “We need a list of everything that still needs to be done — like the scrum board, but could you put it in a spreadsheet?”

Ummm, I could, but it wouldn’t contain any additional information than what’s on the board.

That was an eye-opener to me. I like the scrum board format because it keeps things visible. It’s easy to see what all the tasks are and it’s easy to see the status of each task.

It never occurred to me that if you record information on Post-Its and stick them on a wall, rather than recording the same information in an “official” format like Excel or Project, there will be people who assume that you’re just screwing around.

NB: It’s not their fault for not getting it; it’s a communication failure by me because I didn’t anticipate the situation.

Thus spoke The Programmer.


Why Would You Use Agile for Offshore Development?

24 Mar 2009 / PE

More of my customers have been asking me how to use agile processes, particularly Scrum, to help them manage offshore development. Since offshore development undercuts many of the practices that promote agile productivity, I ask them why they don’t just increase the productivity of their teams by thoroughly introducing agility? It seems that offshore development, with its potential for lower unit costs (dollars per programmer day), offers management hope that their losses can be reduced. Since the project is probably going to fail anyway, let’s minimize our losses by lowering our investment by using lower priced resources. A more optimistic, agile, way of looking at this problem is to fix the problem at home and increase the probability of success.


Essence of Lean

4 Jan 2009 / PE

From Alan Shalloway:

Essence of Lean for People Doing Scrum

  • Lots of concurrent tasks cause waste
  • Focusing on removing delays will remove waste
  • Adding value and getting feedback quickly is important
  • If you make a mistake and don’t attend to why you made the mistake, it will likely repeat itself
  • Minimizing work in process (WIP) is a way of improving efficiency and minimizing risk

Scrum Doesn’t Do Anything

26 May 2008 / PE

In the end it doesn’t matter what names you use for your processes, good people will do good work and continuously improve what they do. So much of the discussion around Lean versus Scrum (etc.) is about marketing hype, selling consulting and training services, and cornering the market with new name-brands. . . .

Scrum is not a methodology, it is not a process. It is a simple framework underpinned by some common sense principles. Scrum offers individuals and organizations the opportunity to continuously improve the way they work. It provides a space for people to behave like human beings, with trust, respect and passion. That’s about it. But that is huge.


Scrum Cheat Sheet

9 May 2008 / PE

Read this doc on Scribd: Scrum Cheat Sheet

Waterfall: The USSR of Software

3 Mar 2008 / PE

Think of waterfall as being similar in concept to the old USSR central planning of the economy. Think of Scrum as similar to a market economy.


The Customer is NOT Always Right

3 Mar 2008 / PE

Great sequence of posts on the scrumdevelopment Yahoo group . . .

Person A says the number one rule of business is that the customer is always right.

Person B says the customer is NOT always right, like his customer who wants an auction system like eBay on a budget of $1,500.

Person A says Person B needs to shut up and listen to the customer.

Person B says

I AM listening. They want something like Ebay for $1500. They want me to build a full Ebay clone this weekend and then tweak it until they’re happy over the next two weeks. I have listened carefully and diligently and have confirmed multiple times. This is definitely what they want. They’d also like time travel, but they don’t need that until April.

The point I’m making is that there are many reasons why just listening to your customer and giving them what they ask for is often not a good idea – for you or for the customer.


How Long Should it Take to Define a Project?

25 Jan 2007 / The Programmer

Project X hit a milestone called Vision/Scope seven months ago, 99 days late. It’s 312 days late on the current milestone, which is called Definition.

To date, the project has consumed 36,000 labor hours — 18 person-years — and $2.5 million.

At this morning’s enterprise-level status meeting, it was decided that Project X will be put on indefinite hold, as it is no longer a strategic priority.

This reminded me a lot of an article I read a few days ago:

What the waterfall does well is to keep useless projects from resulting in useless code that needs to be maintained. I’m not sure if that’s the real purpose, but it’s certainly a great side benefit. It may sound inefficient to pay a lot of engineers to get started on projects, do a bunch of analysis and design, and finally abandon the whole thing when something else becomes a higher priority, but every line of code they don’t write is another line that can’t break!

OK . . . you could make a case that waterfall “worked” here — clearly if, after 18 years of effort, people can’t even define the project, that sounds like a project that has no chance of success and shouldn’t be attempted — but it worked at a cost of $2.5 million.

That doesn’t seem very efficient.

What I find is that if you put the customer, the technical team and other appropriate representatives together for as little as four to eight hours, à la a Sprint Planning Meeting, it should be obvious whether or not anyone understands the problem well enough to go ahead and attempt a software solution.

Thus spoke The Programmer.