Continuous integration

Continuous integration (CI) is the practice of merging all the code written by team members into a central repository, particularly into the main line of code. The continuous portion comes from the fact that these code merges occur multiple times per day, or at least once a day.

The main purpose of CI is to identify and remedy integration issues early in the development process. Programmers write unit tests for their code to ensure it works as expected. They can also check their work against the tests of other developers. When all the code is merged together, a build server will run automated tests to ensure compatibility between all submitted code. If any errors occur, they are identified immediately, rather than later on when it can be difficult to identify and fix them.

Another aspect of the build servers is to perform continuous quality control, such as profiling the software for performance bottlenecks, automatically creating documentation, and applying a variety of additional tests to the code base.

Development/Operations (DevOps) utilizes CI as the backbone of software creation. DevOps relies heavily on automated testing and monitoring of all steps of software development, with an eye toward reducing the development cycle, improving time to deploy, and making the final product more dependable and robust.

The CI process is demonstrated in the following diagram:

Continuous integration process

Attribution: CC BY-SA 1.0 (Jez Humble – http://continuousdelivery.com/2010/02/continuous-delivery/)

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.191.134