Concept: Continuous Integration |
This concept introduces the idea of creating regular (at least daily) integrations in order to reduce integration risks, find bugs earlier, and drive a collaborative work environment.
Relationships
Related Elements | Configuration & Change Management Build Implement the Solution Continuous Integration
Main Description
Continuous integration is an implementation practice where team members compile and test (integrate) their work frequently (at least daily). Integration errors should be detected as quickly as possible, either from compiler errors or errors reported by the test suite. Ideally the integration is done automatically when an updated version of source code is checked into the configuration management system. Benefits: Improved error detection. Continuous integration enables you to detect and address errors early, often minutes after they’ve been injected into the product. Note that you still need a good test suite. Improved system integration. By integrating continuously throughout your project you know that you can actually build it, thereby mitigating integration surprises at the end of the lifecycle. Reduced technical risk. You always have an up-to-date system against which to test. Reduced management risk. By continuously integrating your system you know exactly how much functionality that you’ve built to date, improving your ability to predict when and if you’re actually going to be able to deliver the necessary functionality. Improved collaboration. Continuous integration enables team members to work together safely. They know that they can make a change to their code, integrate the system, and determine very quickly whether or not their change worked.
More Information
Guidelines | Continuous Integration
This program and the accompanying materials are made available under the Eclipse Public License v1.0 which accompanies this distribution. View copyright information here: OpenUP Copyright