Software development is inherently a complex process. Consistently building and releasing the results of its labors are often given little thought or are done too late in the development life cycle. This shouldn't be the case. By discussing the challenges that organizations face in building and releasing software and the subsequent consequences, I hope I have given you a perspective on the benefits of bringing forward and improving your software build and release automation efforts. As I have discussed, automation is the keyand this theme continues throughout the book. No matter how well you define a manual process, it potentially can be error-prone and ultimately unproductive.
Now that I have defined the terminology this book uses and have outlined what this book is intended to achieve, we can move on to the next chapter. It looks at the tools that are used to automate the software build and release process.