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.

[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang

920 views

Published on

[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang

Published in: Software
  • Be the first to comment

[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang

  1. 1. Continuous Integration @XPDay Da Nang 2015 Quang Nguyen
  2. 2. Write my very first program in Scheme language Start with Java2002 2004 Get introd- uced to XP First reading about Agile/ Scrum 2008 2010 Jump to Agile World ...still a long journey
  3. 3. Stop me for questions http://anthonyfrasier.com
  4. 4. When you have Jenkin (or Hudsons), you have CI. Is it corected?
  5. 5. WHAT?
  6. 6. Continuous Integration Coined by Kent Beck as a part of eXtreme Programming (1996-1999). Integrate work frequently into mainline. Multiple integrations per day. Integration verified by automated tests. Detect integration errors early. http://martinfowler.com/articles/continuousIntegration.html
  7. 7. Definitions & Mindset • Develop (code & tests) • Compile • Test • Integrate • Test more • Integrate more • ...
  8. 8. Definitions & Mindset CI is a Software Development Practice Involving a change of mindset Think CI as a part of the development effort, not as a separate item Think CI as a prerequisite for Agile software development practices • Develop (code & tests) • Compile • Test • Integrate • Test more • Integrate more • ...
  9. 9. What CI is NOT • IT IS NOT A SOFTWARE TOOL • IT IS NOT A BUILD ENVIRONMENT • IT IS NOT ABOUT HAVING NIGHTLY BUILDS • IT IS NOT A CHECKBOX ON A TODO LIST
  10. 10. When you have Jenkin (or Hudsons), you have CI. Is it corected?
  11. 11. WHY?
  12. 12. Feedback in SW Development Develop Test Inspect/Learn Adapt/ Improve
  13. 13. Feedback in SW Development Develop Test Inspect/Learn Adapt/ Improve Customer Inspect/Learn
  14. 14. Agile  with  CI Time Feedback Waterfall Agile  without  CI
  15. 15. Why not go for it? - Increased overhead in maintaining the CI system - Too much feedback to act upon - Additional hardware/software cost - Developers should be performing these activities - We have too complex a product - Processes are preventing us from committing Frequently - We don’t have time to do this - Merging is too laborious - We cannot do all the tests before commit/delivery - Good quality is a prerequisite for CI - The tasks have too many dependencies - We have never seen a system tester - Branching fo features were
  16. 16. So… How can it fail? Embracing the excuses Not caring about it Excuse #238: We don’t have time to do this
  17. 17. HOW?
  18. 18. CI Framework & Interactions Build  System Test   Automation Framework SUTs System  Under   Test CI  Server Bug  Tracking   System Test  Management   System Version  Control   System (Subversion,  GIT)
  19. 19. Maximize SEPARATION Maximize INTEGRATION Branching strategies
  20. 20. Some CI System
  21. 21. Best Practices - Level 1 Maintain a single source repository Commit often Always  integrate Always  green  light  (100%  tests  passed) Fix  immediately  when  broken Always  improve
  22. 22. Best Practices - Level 2 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 /en.wikipedia.org/wiki/Continuous_integration
  23. 23. PLUS
  24. 24. CI to CD to DevOps plan code build test release deploy operate Agile  Development Continuous  Integration Continuous  Delivery DevOps
  25. 25. Extreme Feedback System enkins-ci.org/content/extreme-feedback-lamp-switch-gear-style
  26. 26. Extreme Feedback System Raspberry PI 5V Relay Module With Optocoupler Led lights
  27. 27. Extreme Feedback System
  28. 28. Extreme Feedback System
  29. 29. Feedback Concerns Questions Conclusio ns more… Sharings
  30. 30. Quang Nguyen quang.d.nguyen@dektech.com.au quangnguyen111@gmail.com

×