Coding practices generally are not something that Scrum pays attention to. Also, teams should probably have as few outside dependencies as possible. But there are certain support functions that can be centralized. Or at least we have.
We have one special team that takes care of our constant integration server. Automatic build scripts do the compilation and linking and run the unit tests. If the build or some of the tests fail after checking in new code, teams get a message automatically.
Each of the teams have their private playgrounds. In addition we have some integration builds that combine efforts of multiple teams. And some builds that generate data about code metrics: cyclomatic complexity, routine lengths, nesting level etc. These are extra services that save time for all the teams. And they can concentrate more fully on producing value for the customers.
This one special team handles also the packaging of the product. Putting together executable + manuals + creating installers. This knowledge is scarce so we have decided to do these activities by one team. Again, a compromise, but in a multi team environment saves lots of manhours.
If you are familiar with Scaled Agile Framework, this team would be called System Team.
No comments:
Post a Comment