is a token of some sort, preferably loud and garish. In a typical XP project, it appears to be a single machine, called the "Build Machine". In our XP project, we had no specific build machine, so instead we had an IntegrationBall
, or big pink, fuzzy die. It signifies who has control of the "integration" sandbox. The pair that has the IntegrationBall
is the only people that can do anything (or at least, grant permission to do anything) on the integration sandbox.
In some ways and environments, this is the easiest way to do it.
My thought on how to do this at the next company involves a simple alias/script to change the ownership of the change log in the cvs repository so that you can "integrate" and "unintegrate". If you run "integrate", and somebody other than "test" owns the change log, it will tell you who that is. Otherwise, it changes the ownership on the change log, and away you go integrating merrily along.
A cron job can log who integrates when, and allow the team to monitor how much time is being spent on integration by doing a little data mining.
It is of the essence that the IntegrationBall
be an object that is easily thrown, of course.