24 September 2008

Call it what it is!!

It's an oft-heard complaint: a team reports that they failed while using Extreme Programming, or Scrum, or another agile process. Some investigation reveals that they didn't use all of the practices. Some advocates of the process in question say, "You can't say you were using XP is you didn't use all of the practices!" A spirited debate ensues, with a decidedly religious slant.

What I have yet to see, though, is the opposite occur. Increasingly I read about teams that have implemented Scrum, for example, and it was a great success. Excellent! Wonderful! Then I read that those teams "added some technical practices" such as Test-driven Development, Refactoring, Continuous Integration, etc.

Uh, if it makes sense to some people to complain when practices are taken away, then shouldn't there be complaints when practices are added? Is Scrum really Scrum with TDD, Pair Programming, CI, 2-week Sprints, etc.? Isn't is just XP with different terminology?

As I mentioned in Scrum is Not Enough, Ken Schwaber admitted that teams should be using technical practices in addition to Scrum. He said,
In order to employ emergent architecture, every Sprint must leave behind clean, commented, refactored work.
Scrum deliberately avoids prescribing technical practices, which is fine. However, if you still require good technical practices in order to succeed with Scrum, are you still doing Scrum?

I may sound like I'm picking on Scrum here, but the same applies to XP. Industrial XP, for example, is very explicit about adding practices to handle enterprise issues. As such, it was rebranded to reflect the difference. Why is this not applied to other processes?

So, my main point is that we need to examine the actual process being used very carefully and call it what it is. If it's Scrum with extra practices, then call it that - don't state that it's just Scrum. If it's XP with practices to extend beyond a single team, great! Just say so!

For a team I'm coaching right now, I've incorporated aspects of Lean Software Development, XP, Industrial XP and Scrum. The difference is that I've told everyone that I've done it, and not just used a single name.

After all, open honest communication is a common value of all agile methods, is it not?

20 September 2008

Ho Hum

A team I've been coaching since June shipped their first release this week. They had the Release Demo on Friday morning, and it was just like all of the Iteration Demos that had preceded it. The demo took 30 minutes, there were a couple of questions and everyone broke for lunch. The only difference this time was that the demo was given from the production environment, and we all went out for a celebratory drink... er, Retrospective... later in the afternoon.

Essentially, the release itself was quite anti-climactic. There was no crunch, or people scurrying about in a panic trying to ensure that those last few bugs were fixed and all was ready. It was actually somewhat boring.

And that's exactly the way it should be!

The only thing that was concerning the folks on the team was that after another iteration's worth of work, there are some questions about the next bunch of functionality to be built. The primary concern is that the people on the team don't want to leave it - they don't want to go back to the "old way".

There are some other interesting aspects to this. First, the Customer had indicated that once the Stories that comprised this past iteration were in place, the system would provide enough value to the business to be useful. Second, the development team didn't even blink at the notion of shipping to production again after another 2-week iteration. Third, this was not an all-star team - they were quite representative of the people in the IT organization. The only person that was possibly hand-picked was one of the business analysts, but that was more because of her subject matter expertise.

So, give good people the right tools, environment and support from the organization, and they will kick butt compared to traditional development methods. Moreover, they will do it in such a way as to be, well, boring! And that's exactly the way it should be!