CONTINUOUS INTEGRATION
“Continuous Integration doesn’t get rid of bugs, but it does make
them dramatically easier to find and remove.”
- Martin Fowler, Chief Scientist, ThoughtWorks
Definition
"Continuous Integration (CI) is a development practice that
requires developers to integrate code into a shared repository
several times a day.Each check-in is then verified by an
automated build, allowing teams to detect problems early "
- Martin Fowler, Chief Scientist, ThoughtWorks
CI approach
Objectives
● minimize the duration and effort required by "each"
integration episode
● be able to deliver "at any moment" a product version
suitable for release
The Practices
● Maintain a single source repository
● Automate the build
● Make your build self-testing
● Every commit should build on an integration machine
● Keep the build fast
● Test in a clone of the production environment
● Make it easy for anyone to get the latest executable
● Everyone can see what’s happening
● Automate deployment
Benefits
● Say goodbye to long and tense integrations
● Increase visibility which enables greater communication
● Catch issues fast and nip them in the bud
● Spend less time debugging and more time adding features
● Proceed in the confidence you’re building on a solid
foundation
● Stop waiting to find out if your code’s going to work
● Reduce integration problems allowing you to deliver
software more rapidly
Benefits
● Say goodbye to long and tense integrations
● Increase visibility which enables greater communication
● Catch issues fast and nip them in the bud
● Spend less time debugging and more time adding features
● Proceed in the confidence you’re building on a solid
foundation
● Stop waiting to find out if your code’s going to work
● Reduce integration problems allowing you to deliver
software more rapidly

Continuous integration by Halyna Levko

  • 1.
    CONTINUOUS INTEGRATION “Continuous Integrationdoesn’t get rid of bugs, but it does make them dramatically easier to find and remove.” - Martin Fowler, Chief Scientist, ThoughtWorks
  • 2.
    Definition "Continuous Integration (CI)is a development practice that requires developers to integrate code into a shared repository several times a day.Each check-in is then verified by an automated build, allowing teams to detect problems early " - Martin Fowler, Chief Scientist, ThoughtWorks
  • 3.
  • 4.
    Objectives ● minimize theduration and effort required by "each" integration episode ● be able to deliver "at any moment" a product version suitable for release
  • 5.
    The Practices ● Maintaina single source repository ● Automate the build ● Make your build self-testing ● Every commit should build on an integration machine ● Keep the build fast ● Test in a clone of the production environment ● Make it easy for anyone to get the latest executable ● Everyone can see what’s happening ● Automate deployment
  • 6.
    Benefits ● Say goodbyeto long and tense integrations ● Increase visibility which enables greater communication ● Catch issues fast and nip them in the bud ● Spend less time debugging and more time adding features ● Proceed in the confidence you’re building on a solid foundation ● Stop waiting to find out if your code’s going to work ● Reduce integration problems allowing you to deliver software more rapidly
  • 7.
    Benefits ● Say goodbyeto long and tense integrations ● Increase visibility which enables greater communication ● Catch issues fast and nip them in the bud ● Spend less time debugging and more time adding features ● Proceed in the confidence you’re building on a solid foundation ● Stop waiting to find out if your code’s going to work ● Reduce integration problems allowing you to deliver software more rapidly