Chapter 16

Overview of Build Automation

What's in this chapter?

Getting to know build automation

Scripting a build

Using build automation servers

Adopting build automation


After version control, automating the build is the second most important thing you can do to improve the quality of your software. This chapter defines build automation and examines why it benefits the overall software engineering process. This is followed by a look at the high-level capabilities and limitations of Team Foundation Server, and a comparison with other common build systems in use today. Finally, some general advice is provided to assist in adopting build automation in your environment today.

Subsequent chapters of this book dive deeper into Team Foundation Server's build capabilities, discuss how to customize the build process, and demonstrate this by working through a series of common build customizations used in real-world scenarios.

Let's Build Something

Imagine building a house. You visit the site every day and see nothing but a muddy field. The construction team tells you, “Yup, we're making excellent progress. The doors are all done and look great. Walls are 80 percent there. Plumbing is ready to go, and the kitchen is ready to drop in.” Every day you visit you see that same muddy field. The construction teams tell you how well progress is going. Sometimes they regale you with stories about how they decided the doors were not going to be up to the job, so they threw them on a bonfire and ...

Get Professional Team Foundation Server 2012 now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.