Below is a collection of articles related to automated building and continuous integration.

  • Automated Releases

    by Jason Sankey

    In this article, we look into automating the release process. We begin by reviewing the benefits of automated releases. We then take a look at common steps involved in the automation process, and some of the challenges they may present.

  • Benefits of Continuous Integration

    by Jason Sankey

    "Barry winced slightly as he hit the enter key. Over time, he has learned that cvs update is not a command to be used lightly. With a deadline looming, however, he couldn't hold out any longer. Weeks of updates scrolled past as Barry nervously waited, unsure of his fate. The time of reckoning came, and Barry's worst fears were confirmed. 783 compilation errors. Barry cleared his calendar for the weekend, and headed straight for the fridge..."

  • Optimise Your Acceptance Tests

    by Jason Sankey

    Many developers have a love-hate relationship with automated acceptance tests. One major sticking point is the time acceptance tests take to execute, which can easily cause a blow out of project build times. In this article I'll review 7 successful techniques we've put to work in our own projects to optimise our acceptance testing.

  • Reducing the Impact of Broken Builds

    by Jason Sankey

    The "build" is the current status of any software project, and as such reflects the health, vitality and progress of the project. In this article we first review some of the impacts of a broken build. Those already familiar with the negative impacts of broken builds may wish to skip this lead in. There follows an analysis of various techniques to reduce the frequency and impact of broken builds. These techniques vary from the optimistic to the preventative, and from lightweight to quite intensive.

  • Testing Is ... A Developer's Perspective

    by Jason Sankey

    Arguments in favour of automated software testing are too often presented in a patronising fashion. Based on an earlier series of blog posts, this article takes a different angle: examination of the direct benefits such testing yields to a developer.

  • The Road To Build Enlightenment

    by Jason Sankey

    Each day, every developer on a software team interacts with the build system several times. Despite this, many teams underplay the importance of an effective build system. Is your build system working for you, or do you merely tolerate its existence? In this article, we will journey through build system requirements starting from the most basic through to those that make the whole development process more efficient.