Home > Articles > Programming

  • Print
  • + Share This
This chapter is from the book

The Evolution of Integration

Is CI the newest, latest, "whiz-bang" approach to software development? Hardly. CI is simply an advance in the evolution of integrating software. When software programs consisted of a few small files, integrating them into a system was not much of a problem. The practice of performing nightly builds has been described as a best practice for years. Similar practices have been discussed in other books and articles. In the book Microsoft Secrets, Michael A. Cusumano and Richard W. Selby discuss the practice of daily builds at Microsoft. Steve McConnell, in Software Project Survival Guide, discusses the practice of the "Daily Build and Smoke Test" as part of a software development project.

In Object Solutions: Managing the Object-Oriented Project, Grady Booch writes, "The macro process of object-oriented development is one of 'continuous integration'… At regular intervals, the process of 'continuous integration' yields executable releases that grow in functionality at every release... It is through these milestones that management can measure progress and quality, and hence anticipate, identify, and then actively attack risks on an ongoing basis." With the advent of XP and other Agile methodologies, and with the recommended practice of CI, people began to take notice of the concept of not just daily, but "continuous," builds.

The practice of CI continues to evolve. You'll find the practice in almost every XP book. Often, when people discuss the practice of CI, they refer to Martin Fowler's seminal "Continuous Integration" article.4

As hardware and software resources continue to increase, you'll find that more processes will become a part of what is considered to be CI.

  • + Share This
  • 🔖 Save To Your Account