||New Reviews| |Software Methodologies| |Popular Science| |AI/Machine Learning| |Programming| |Java| |Linux/Open Source| |XML| |Software Tools| |Other| |Web| |Tutorials| |All By Date| |All By Title| |Resources| |About||
Keywords: Software configuration management, automated builds, source control
Title: The Build Master
Author: Vincent Maraia
Publisher: Addison Wesley
Verdict: Interesting but most suited to big Microsoft development shops
Every development methodology worth its salt pays regard to build management, from the most nimble of agile processes to the tools-heavy methodologies that attach the tag of software configuration management (SCM) to the task of managing the build and the deployment of software. And yet… build management is one of those unsung tasks that makes or breaks a project. Just as a broken testing process delivers broken software, a broken build process delivers broken projects - with slipped schedules, chaotic development and buggy software as the end-results. In 'The Build Master', Microsoft's Vincent Maraia aims to drag the topic out from the back room and put it out front, as a central part of the development process with all of the respect and the kudos that it deserves.
While one can't fault the aim, whether Maraia succeeds is open to question. Firstly the affiliation to Microsoft should be noted up front. While the book makes a nod towards being agnostic about tools, it has to be said that there's very little mention of non-MS tools. Forget CVS, Subversion, Ant, Maven etc, they either get a cursory mention or no mention at all. On the other hand there's plenty of mention for Visual Source Safe (not all of it complimentary by any means) and the next generation toolsets, such as Visual Studio Team System.
On the other hand tools are just one aspect of build management, and it's the practices as much as the software that count. Here at least there's lots of solid advice on offer, from the problems of nightly builds (which break when there's no one around to fix the problems), to complexities of versioning and issues with security. Most of the advice is backed up with examples and plenty of war stories (including the story of the Klingon version of Windows NT…).
Much of the advice and the processes that Maraia offers are geared to bigger projects, with teams of developers, separate build teams, testers, architects, QA departments and so on. If you're development is on a much lower scale than this, then there's still some useful things to learn but the heavy weight SCM processes that are described might not be as good a fit as they are for the larger-scale projects.
To conclude, this is an interesting read, though large scale development teams using Microsoft tools and platforms are likely to get the most benefit from it.