agile

Songbird path to Agility – Part I

Posted in agile on June 25th, 2008 by Georges – Comments Off

This is a repost of a series of article I originally published on Songbird’s blog.

This is the first post of a 3 part series presenting our experience moving Songbird development to an Agile process.

Drowning in the waterfall

Up until version 0.3, Songbird development had been following a fairly traditional waterfall model. Realizing the ambitious vision of building both a platform and a desktop media player has presented many challenges. A lot of plumbing infrastructure is needed before any features can be created. Faced with that challenge, the engineering team did what engineers do best, they designed a very comprehensive system, planned for it very carefully and started cranking code.

During the planning phase, the team estimated the work to the best of their abilities and a Gantt chart was created to reflect identified dependencies and track progress. Unfortunately, this approach led to lengthy release cycles (10-12 months) with lots of room for scope creep. When the release finally got completed, lots of good work was accomplished (over 1200 issues where addressed in 0.3 alone) but the lack of visibility was problematic and the slow pace of releases was too demoralizing.

We recognized that the schedule was build on assumption that we knew everything upfront. There was a sentiment that the whole Gantt thing was a little removed from the actual work and that overall “things were going ok, because we were kind of tracking it” was not an acceptable way to run our project. We had to accept that our planning and scheduling practices were broken.

read more »

Extreme Programming

Posted in agile on March 17th, 2005 by Georges – Comments Off

Last night I attended the BayXP monthly meeting for the first time. I have been running software development projects “XP style” (minus pair programming) since 2002 and have been wondering how other people approach it. The meeting was well attended and ran smoothly. The presentation was from a development team who worked on a greenfield project using XP from the start. You can learn more about their experience here.

It was very refreshing to see developers excited about the practice of collective code ownership, test first development and pair programming. Everyone was very participatory and willing to share openly.

My favorite quote from William Pietri, the XP coach on the project (quoted from memory):

When a developer pair program for the first time, it feels like the first time being in a locker room. You are around a bunch of naked people and it feels awkward the be naked too.

A good place to start learning about Extreme Programming. The Bay XP site provide information about upcoming meetings and link to mailing list.