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.

of

Continuous Integration Slide 1 Continuous Integration Slide 2 Continuous Integration Slide 3 Continuous Integration Slide 4 Continuous Integration Slide 5 Continuous Integration Slide 6 Continuous Integration Slide 7 Continuous Integration Slide 8 Continuous Integration Slide 9 Continuous Integration Slide 10 Continuous Integration Slide 11 Continuous Integration Slide 12 Continuous Integration Slide 13 Continuous Integration Slide 14 Continuous Integration Slide 15 Continuous Integration Slide 16 Continuous Integration Slide 17 Continuous Integration Slide 18 Continuous Integration Slide 19 Continuous Integration Slide 20 Continuous Integration Slide 21 Continuous Integration Slide 22 Continuous Integration Slide 23 Continuous Integration Slide 24 Continuous Integration Slide 25 Continuous Integration Slide 26 Continuous Integration Slide 27 Continuous Integration Slide 28 Continuous Integration Slide 29 Continuous Integration Slide 30 Continuous Integration Slide 31 Continuous Integration Slide 32 Continuous Integration Slide 33 Continuous Integration Slide 34 Continuous Integration Slide 35 Continuous Integration Slide 36 Continuous Integration Slide 37 Continuous Integration Slide 38 Continuous Integration Slide 39 Continuous Integration Slide 40 Continuous Integration Slide 41 Continuous Integration Slide 42 Continuous Integration Slide 43 Continuous Integration Slide 44 Continuous Integration Slide 45 Continuous Integration Slide 46 Continuous Integration Slide 47 Continuous Integration Slide 48 Continuous Integration Slide 49 Continuous Integration Slide 50 Continuous Integration Slide 51
Upcoming SlideShare
Continuous Integration 101
Next
Download to read offline and view in fullscreen.

73 Likes

Share

Download to read offline

Continuous Integration

Download to read offline

Get the skinny on Continuous Integration. What to do and what NOT to do.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Continuous Integration

  1. Continuous Integration Todd Papaioannou
  2. Or, how to build software better, faster, cheaper
  3. What??
  4. What is CI? a development methodology of daily developer integrations verified by automated builds
  5. What is it not? nightly builds developer branches scheduled Integration Points building via IDEs
  6. Continuous Compilation != Continuous Integration
  7. ‘Fraid Not!
  8. Why do it?
  9. Building software can be a risky business
  10. Risk 1: Fixing bugs late is costly Source: http://www.agitar.com/solutions/ why_unit_testing.html
  11. So why is most software built Requirements this way? Design Implementation Testing
  12. Risk 2: Lack of team cohesion “Your changes to Bar are incompatible with mine. How do we merge now?” “When did we decided to upgrade to version 2.0-alpha of the Super library??” “I thought you fixed that 2 months ago!”
  13. Risk 3: Poor quality code base “We have 3 classes doing the same thing??” “Everybody knows double checked locking is a Bad Idea!” “Why can’t I just include Foo and not require all of the other 13 libs?”
  14. Risk 4: Lack of project visibility “What do you mean the tests are failing?” “What’s in version 1.2.3 of the build?” “What’s our code coverage now?
  15. Risk 5: Lack of deployable software “It works on my machine!” “I need a new build to test with” “The [boss|customer|patron] is coming, we need to demo progress asap”
  16. Use Continuous Integration to reduce the risks
  17. Wait! Didn’t you say better, faster, cheaper?
  18. Better Build better quality software That is tested early and often That adheres to best practices and coding standards
  19. Faster Test in parallel, not at the end No integration points Builds become a non event
  20. Cheaper Identify defects earlier Fix when least costly Easily repeatable testing
  21. So what constitutes a build?
  22. Compilation != A Build
  23. Build Ingredients Compilation Test execution Database integration Code inspection Automated deployment Documentation generation
  24. Compilation Ensures code actually compiles On every target platform
  25. Test Execution Ensures product functions as expected Through repeatable testing
  26. DB Integration Ensures DB and code in sync Automates (re)creation of DB and test data
  27. Code Inspections Ensures a healthy code base Identifies problems early Enforces best practices
  28. Automated Deployment Products can be released anytime Continually demo-able state Eliminates “works on my machine”
  29. Documentation Generation Ensures documentation is current Removes burden from developers Produces build reports and metrics
  30. How do I get started?
  31. When do I build? At every check-in Every time a dependency changes
  32. Dependency Graphs Matter!
  33. How do I build? Use a single build script That can run from the cmdline Do not depend on an IDE
  34. Do it continuously Use a dedicated CI server, not cron Trigger on all daily check-ins Not [only] at midnight
  35. Pay attention to your builds Provide immediate feedback Make it easily accessible Require no developer effort
  36. Metrics Matter Identify key metrics and track them visually Act on them immediately
  37. The 7 step program
  38. Learn it, Use it!
  39. Step 1 Commit Early, Commit Often
  40. Step 2 Never commit broken code
  41. Step 3 Fix build failures immediately
  42. Step 4 Fail Fast
  43. Step 5 Act on metrics
  44. Step 6 Build in every target environment
  45. Step 7 Create artifacts from every build
  46. print me! 1. Commit Early, Commit Often 2. Never Commit Broken Code 3. Fix build failures immediately 4. Fail Fast 5. Act on metrics 6. Build in every target environment 7. Create artifacts from every build
  47. Summary
  48. Continuous Integration can help you build better quality software faster, with more confidence
  49. Start using it!
  50. The End
  51. Roll the Photo Credits http://www.flickr.com/photos/24263322@N05/2403969648/ http://www.flickr.com/photos/destinme/1267500829/ http://www.flickr.com/photos/legacyalive/891467616/ http://www.flickr.com/photos/tizianoj/1294103746/ http://www.flickr.com/photos/xeophin/2181342710/ http://www.flickr.com/photos/booddin/2190614236 http://www.flickr.com/photos/thomashawk/176219254 http://www.flickr.com/photos/7446536@N03/430561725 http://www.flickr.com/photos/gallerisager/471366272 http://www.flickr.com/photos/mccain007/2092664145
  • MichelleDaigle4

    Dec. 5, 2021
  • RichEsguerra

    Apr. 1, 2019
  • zahernourredine

    Dec. 12, 2018
  • NickCekic

    Dec. 11, 2018
  • YinXiangLi

    Nov. 14, 2018
  • GaryWoodbridge

    Feb. 18, 2018
  • omarf

    Oct. 29, 2017
  • interopgeek

    Jul. 22, 2017
  • ulmanthomas

    Jul. 10, 2017
  • JeeHyubKim

    Jun. 15, 2017
  • SaraTabor1

    May. 31, 2017
  • whilpert

    Mar. 28, 2017
  • BedaPrakashSahoo

    Mar. 10, 2017
  • PawanSingh60

    Feb. 21, 2017
  • NV87

    Dec. 10, 2016
  • nlsiitb

    Nov. 3, 2016
  • Reza-Rahimi

    Nov. 1, 2016
  • domingo.gallardo

    Oct. 25, 2016
  • pkofler

    Oct. 9, 2016
  • AmilaPradeep3

    Jul. 21, 2016

Get the skinny on Continuous Integration. What to do and what NOT to do.

Views

Total views

44,727

On Slideshare

0

From embeds

0

Number of embeds

860

Actions

Downloads

1,682

Shares

0

Comments

0

Likes

73

×