Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily—leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly. This article is a quick overview of Continuous Integration summarizing the technique and its current usage.
Martin Fowler (b. 1963) is a software engineer, Chief Scientist at ThoughtWorks, and an outspoken advocate for best practices in enterprise software design, particularly in regard to agile software development methodologies, including extreme programming.
This lengthy online article, referenced in , is an excellent nutshell introduction to the concepts more fully detailed in . As an early summary, it does strike me as a bit dated now, but having been entirely unfamiliar with these aspects of "Extreme Programming" it brought me up to speed enough to better understand the sort of environment wherein Test Driven Development generally takes place, adding the necessary context to make books on that topic useful.