The 7 levels of continuous integration

Friday, May 20, 2011

I’ve noticed that when other developers talk about “continuous integration” they do not always mean the same thing.
The following is an outline of the seven stages of continuous integration based solely on my own experience:
  1. No Server, no automation - no problems
  2. Have nightly build that run each day – at least we know that the project compiles
  3. Started writing “unit” tests – now running as part of the nightly build
  4. Created a build that runs on each commits – who broke the build?!
  5. Added static code analysis and style checking to the build
  6. Server Build, deploy & run the tests on several environments also used to deploy on testing (and production) environments
  7. Everything is automated – Even Gui tests runs automatically on the latest code, you even got as far as testing the installer. Code is analyzed and results are sent by email. Nothing is done manually unless it is done only once…
These are my stages as I experienced them in several jobs – what are yours?

Happy coding…

4 comments

  1. We have adopted Continuous Integration a year ago. Now we are at stage 5.
    We
    have full automatied builds (trunk for every commit, nightly,
    integration tests etc. ) , unit tests, database integration tests (
    dbunit ),  static analysis ( quite easy that part with Sonar ) and now
    we are trying to automate some gui tests using Selenium.
     You can add maybe between stage two and stage three the adoption of a developers guidelines as described in a related blog here
     

    ReplyDelete
  2. Good for you - it sounds that you're on the right track...

    I would love to read your post - unfortunately I do not speak Greek.

    ReplyDelete
  3.  There is a translation button down in the toolbar you can use to read it your preferred language. :-)

    ReplyDelete
  4. Shouldn't there be an eight level which takes the continuous delivery aspect into a account. This isn't possible for all applications, but still relevant where you have so much trust in your automation that you actually ships it automatically if it completes all steps in the build.

    http://continuousdelivery.com/

    ReplyDelete

Newer Older
Related Posts Plugin for WordPress, Blogger...