Having each developer (development team) configure their continuous integration tool’s build jobs is extra work for the team, leads to inconsistencies/mistakes, and the overall build system becomes a pain to manage. Martin Preston covers these issues in depth in his article, “Managing Build Jobs for Continuous Delivery.”
At UrbanCode, we’re big believers in setting up a form that once filled out, creates a new build project. In AnthillPro, we setup generic processes that would create a new project in source control, and automatically create a build project that pointed at it.
When it came time to build our next generation continuous integration server, uBuild, we organized the tool around this concept. Templates are defined in the nice point and click UI, and new projects are built from templates. Developers “fill in the blanks” on the project details and the new project is available immediately. Developers don’t need to put in much effort, central administration teams get standardization, and the whole system ends up nice and lean.