Iteration 1

jplindstrom on 2004-02-23T00:13:30

At work I currently function as a team leader/developer.

Last week we delivered iteration one of a large project. It was two days late, but I think we did pretty well; we knew from the iteration planning this would be a tough one. It required an exhausting sprint the last four days and nights, something I'd rather not do again.

What went wrong?

* C++ is fragile. Getting everything to work properly with everything else is difficult. It bit us several times, some things taking calendar days to get working. If it wasn't the compiler support in third party libraries, it was the memory allocation or version of STL that didn't want to play nicely.

This was a complete surprise to me, and in the future we will have to do a lot more spike solutions a lot earilier.

* Cooperation with a consultant developer broke down completely due to (I guess) diverging expectations and communication problems. In the future, people being part of the team must work on-site. People peripheral to the team must be given much clearer instructions and more frequent updates.

What went right?

* The team members complemented each other in an excellent way. Among us we had good C++ programmers, good database skills, intimate knowledge about the system, and good toolmakers. And lots of go.

* One team. Having all five of us within ear shot helped a lot to keep everyone in sync. Daily short meetings at 3-4PM kept us focused on the short term.

* Risk management worked. Except for one part of the system that we didn't know much about, I think we managed to keep track of the unknowns and adapt to them. Some things, mostly getting-things-to-work related, were up on the whiteboard a long time before we solved them, and since it took time it was good we started with them early.


Sounds like you did ok

jonasbn on 2004-02-23T09:08:16

Passing deadline with only two days, taking your problems into acount, sounds ok to me.

The sprint is what worries me, but sometimes sprints are necessary and as long as they do not last throughout the entire project or more that a few nights its ok. You should be carefull not to end in a sprint by the end of next iteration.

Your thoughts on team sizing seem to be in line with my ideas of some of the good things, 4-5 people teams seem to be the right size and 4-5 people can accomplish alot, they can communicate orally and very fast and knowledge and understanding can propagate very fast and decisions can be made very fast.

What was the primary reason that the cooperation with a consultant broke down:

of-site?

expectations?

agenda?


What did you do up front to set your delivery date for first iteration?

How did you cope with wearing two hats team-leader/developer?

Re:Sounds like you did ok

jplindstrom on 2004-02-23T19:41:18

Two days late is almost ok for a four week iteration with no slack. But it was a tough decision to delay the delivery. That's another lesson: see the truth and take the consequences, before rather than later. That way you have more time to deal with it.

Regarding the sprint, I'll revise the iteration plan with the delay in mind and with the intention of actually making it without overtime. It actually exhausted us in a few days. I can't imagine doing that for a week, let alone a year like some Marathon Marches of legend. The quality of work must be terrible in a position like that.

I think I wasn't clear enough about the intention we had with the library the consultant developed. And he had an emotional attachment to the code that we didn't realize until too late. In his eyes it was his code, and not something for us to fiddle with.