Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Continuous integration


Published on

Published in: Technology
  • Be the first to comment

Continuous integration

  1. 1. eXtrem Programming& Continuous integration
  3. 3. Technical debtProductivity Productivity Current Current Time Time Non managed debt Managed debt
  4. 4. eXtrem Programming On-site Customer Coding Metaphor Standards RefactoringLe client L’équipe Le code L’équipe Le client Acceptance Unit Tests Pair Release Tests Programming Planning Continuous Collective Integration Simple Design Ownership Sustainable Pace Small Releases
  6. 6. If it’s harddo it more often
  7. 7. Feedback circles
  9. 9. CI patterns• Commit more often• Every commit builds• Keep build fast• Everyone sees what’s happening
  10. 10. Commit more often• At least once a day• Small unit of work• Update first to commit cleanly
  11. 11. Every commit builds• It’s all about fast feedback• Small changes• Less to merge and/or fix
  12. 12. Keep build fast• If it breaks, you find out about while it’s still fresh• Keep up with frequent check-ins• When build isn’t fast enough :
  13. 13. Everyone sees what’s happening• Reduce time to fix• No excuse to check in on broken build• It’s not about blame, it’s about feedback 
  14. 14. Now, what should we do ?• Write Unit tests • So we really get useful feedback• Update and commit frequently • So we don’t have to perform painful merges anymore• Act quickly upon feedback on Unit tests builds • So fixing is easy
  15. 15. Stop the line
  16. 16. Hudson / Jenkins dashboard
  17. 17. Hudson / Jenkins 2007 2010
  18. 18. The big picture of CI Test servers Binaries repository Continuous Developper Dashboard Integration Build tool SCM
  19. 19. Objectives!• Every project has a green (blue) build with compilation and unit tests.• Each broken build should be repaired in less than 15 minutes.
  20. 20. Ressources : nuous-integration-build-pipelines-and- continuous-deployment integration-for-the-world-keynote-finalMerci