The Importance of Software Builds: Building Earnestly


Other Issues
In this article we hoped to motivate the need for a build process that can easily get developers started. We’ll expand on these topics in future articles. Some of the issues that we still need to address are:

    • The requirements of different environments (development, QA, production)
    • Different types of workspaces
    • The role of  IDEs in the build process as compared to build scripts
    • The implications of shared libraries and components (e.g. DLLs on Windows)
    • The variety and role of build tools
    • The Use of virtual machines
    • The value of continuous integration and  the place for build servers for distributed builds
    • The relationship between building, testing and codeline policies

The Build is an essential link in the development process. Improving this link will make your life easier, whatever your role is. Take small steps towards making your process better and your work will be more enjoyable. Even if your build process seems to work, consider how you might improve it further, perhaps keeping in mind the words of Laurie Anderson: “Paradise is exactly like where you are right now, only much, much better.” [Anderson]

You can find more information on the patterns in Brad and Steve's book, Software Configuration Management Patterns: Effective Teamwork, Practical Integration published by Addison-Wesley. There is an overview, including a reference card that you can download, at You can find more information on Kirk Knoernschild's work at


About the author

About the author

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.