
I encourage you to consider going to Agile 2009 in Chicago this year even though I won't be able to go myself.
(I'm expecting my 2nd child to arrive that week!)
Random comments on interesting posts within the agile software development community...
There are two values to softwareThere is a theme here folks... quit asking for permission and own your work.
1) Business value delivered
2) Ease at which the next important feature can be delivered
Local build takes a while - run a stripped-down version?As one of the first to answer I said:
Like in a lot of teams, we update from the source repository, change code, run the build locally, and commit if it builds. So far, so good. But the build takes a while of course. Personally, I think that's just something to live with, but my teammembers want to use a stripped down version of the build (mainly not building the sandbox, because it doesn't change much).
What is your opinion on using a non-complete build before committing, while the build server still runs the full build?
I would agree with your team members... unless I already need to take a smoke break every hour or so, that does not enable higher productivity. ; )
In my last team, the local build included the tests... If your developers have to wait more than 2 minutes for the process to complete, they start seeing this time investment as an impediment and may try to work around it by coding larger chunks before committing and integrating. This is the reverse direction agile maturity typically should take a team (especially a team leveraging TDD).
The sooner someone can verify something in the integrated build server, the better off the team will be. The purpose of the local build is to smoke test the local and obviously connected things they are focused on.
A balance has to be created between the two. If you swing too far in the other direction, then the team is hurt because the integrated build is broken more often.
Good luck finding the happy medium.
"My definition [of agile] is that you accept input from reality, and you respond to it" - Kent BeckA burndown is one of many measurements of reality! Unfortunately I think the answer in this situation is that the group needs to improve the cultural issues instead of throwing out the burndown.
“This is really bad,” Cook told the group. “Someone should be in China driving this.” Thirty minutes into that meeting Cook looked at Sabih Khan, a key operations executive, and abruptly asked, without a trace of emotion, “Why are you still here?”- Courtesy of Mike Cohn's blog this morning
I agree that the end of a project can be more difficult. The team is best aided by shorter iterations and smaller stories. As you work on those outstanding things such as performance or questionable bugs, it is beneficial to shorten the feedback loop and keep re-measuring your progress to goal (and providing more opportunities for the customer to change their mind).Also, he entertains a tangent about the appropriate level of coaching. It's always easy in hindsight to know you didn't have enough, but I also left my thoughts regarding this topic:
As for coaching, the best experience I had was when the coach(s) worked with the team for about 2 months straight, and then they came for one week halftime every other week or so after that. It was just enough to keep nudging us back on track and to infuse new things to mature towards.
Open yourself to critics and take your capabilities to new heights
Don't fall in love with your product, someone will be there to change it, it's a promise