SlideShare a Scribd company logo
Continuous Integration:
         Blueprint, Toolbox, Master Craft


                                                                                                                                                            Stephen D. Ritchie
         #DCAEC12                                                                                                                                              @RuthlessHelp
                                                                                                                                                                      Dec 7, 2012



Stephen D. Ritchie – Managing Consultant – Excella Consulting, Inc., 2300 Wilson Blvd, Suite 630, Arlington, VA 22201 – 703.840.8600 – http://excella.com
Live Tweet, Slides and Examples

• Twitter: @RuthlessHelp
           #DCAEC12

• Slides:
  http://www.slideshare.net/ruthlesshelp

• Code Samples:
  http://github.com/ruthlesshelp
Stephen D. Ritchie   #DCAEC12   2
The Problem
1      Scott makes changes
2      Susan makes changes
3      You can’t build
                                           Source
                                            Code

                                1                  3      2




                             Scott’s                    Susan’s
                                             You
                            Computer                   Computer


Stephen D. Ritchie   #DCAEC12          3
What Went Wrong?


         Conflicts
                           Missing Files
         Breaking Changes
Stephen D. Ritchie   #DCAEC12   4
How do you
                         find
                     integration
                       issues?
Stephen D. Ritchie    #DCAEC12   5
Manual Integration

       Build
       Run Some Unit Tests
       Perform Static Analysis
       Clean + Rebuild All
Stephen D. Ritchie   #DCAEC12   6
Continuous Integration Blueprint




Stephen D. Ritchie   #DCAEC12   7
CI Server


                                Source                    CI
                                 Code                   Server



            Scott’s                           Susan’s
                                  You
           Computer                          Computer


Stephen D. Ritchie   #DCAEC12            8
CI Server


Triggered by SCM
                                and




Stephen D. Ritchie   #DCAEC12         9
CI – Per Commit Steps


       1. Clean + Rebuild All
       2. Run All Unit Tests
       3. Analysis
                     Static Code Analysis
                     Coding Standards
Stephen D. Ritchie   #DCAEC12   10
Continuous Integration Toolbox




Stephen D. Ritchie   #DCAEC12   11
CI Server – Jenkins



                                     http://jenkins-ci.org/


       Free
       Open Source
Stephen D. Ritchie   #DCAEC12   12
CI Server – Cruise Control

                                http://cruisecontrol.sourceforge.net/


                                http://www.cruisecontrolnet.org/

       Free
       Open Source
Stephen D. Ritchie   #DCAEC12           13
CI Server – TeamCity



                                http://www.jetbrains.com/teamcity/



       Commercial
       Easy to Use
Stephen D. Ritchie   #DCAEC12          14
Perhaps an
    example would
      be helpful
Stephen D. Ritchie   #DCAEC12   15
Continuous Integration Master Craft




Stephen D. Ritchie   #DCAEC12   16
The Master Craft


                                Unit Testing
                                        Plus

                          Code Coverage

Stephen D. Ritchie   #DCAEC12      17
The Master Craft


                                 System Testing
                     Integration Testing
                     Acceptance Testing
Stephen D. Ritchie    #DCAEC12      18
The Master Craft


                                Code Quality
Visualizations                    Analysis
Checks
Metrics
Detections
Stephen D. Ritchie   #DCAEC12      19
The Master Craft


                                Reporting
                                       And

                                Visibility

Stephen D. Ritchie   #DCAEC12     20
The Master Craft


                                Packaging
                                        And

                                Deployment

Stephen D. Ritchie   #DCAEC12      21
Stephen’s Contact Info

• Email: stephen.ritchie@excella.com

• LinkedIn:
     http://www.linkedin.com/in/sritchie




Stephen D. Ritchie   #DCAEC12   22

More Related Content

PPTX
Continuous Integration DCAEC12
PPTX
Test Driven Development: Blueprint, Toolbox, and Master Craft
PDF
Agile Engineering and Software Craftsmanship
PPT
Het strand
PDF
INCONTRO TRA QUALITÀ E AMBIENTE NEL SETTORE DELL’ACCONCIATURA. UNA PROPOSTA ...
PDF
10 Amazing Growth Hacks To Get To 10K Users
PPTX
Destiny’s christmas speech
PPTX
чужинова нв, шляхтина он
Continuous Integration DCAEC12
Test Driven Development: Blueprint, Toolbox, and Master Craft
Agile Engineering and Software Craftsmanship
Het strand
INCONTRO TRA QUALITÀ E AMBIENTE NEL SETTORE DELL’ACCONCIATURA. UNA PROPOSTA ...
10 Amazing Growth Hacks To Get To 10K Users
Destiny’s christmas speech
чужинова нв, шляхтина он

Viewers also liked (19)

PDF
La crudelta
PDF
2012 limpieza muerto_r
PDF
Scatol8 UUDD livello A_2
PPTX
Unindented Code Cannot Possibly Work
PDF
Picture dictionary activivty_book1
PPTX
Gadżetowanie coachowisko 2016
PDF
Scatol8 UUDD livello A_3
PDF
[CLP] IT industry Day 2 - 3
PDF
[CLP] 앱 인벤터 우수사례
PDF
Data warehousing interview_questionsandanswers
PPT
Skin nova presentatsioon 2013
PDF
Scatol8® per la sostenibilità ambientale: l’esperienza dei laboratori didatti...
PDF
Scatol8 UUDD livello A_4
PDF
Scatol8® system for education on Sustainability. Design and implementation of...
DOCX
5 tawan
PPTX
Working with Legacy Code
PPTX
Coffee Shop Security Group Tool
La crudelta
2012 limpieza muerto_r
Scatol8 UUDD livello A_2
Unindented Code Cannot Possibly Work
Picture dictionary activivty_book1
Gadżetowanie coachowisko 2016
Scatol8 UUDD livello A_3
[CLP] IT industry Day 2 - 3
[CLP] 앱 인벤터 우수사례
Data warehousing interview_questionsandanswers
Skin nova presentatsioon 2013
Scatol8® per la sostenibilità ambientale: l’esperienza dei laboratori didatti...
Scatol8 UUDD livello A_4
Scatol8® system for education on Sustainability. Design and implementation of...
5 tawan
Working with Legacy Code
Coffee Shop Security Group Tool
Ad

Similar to Continuous Integration: Toolbox, Blueprint, Master Craft (20)

PPTX
Continuous Integration: Blueprint, Toolbox, Master Craft
PPTX
Continuous Integration - NoVA CodeCamp 2014-10-11
PPTX
Advanced Code Analysis with .NET
PPTX
Advanced Code Analysis In .NET
PPTX
DevOps Requires Agility
PPTX
Continuous Integration: Blueprint, Toolbox, Master Craft
PPTX
[DSC Europe 24] Darija Strmecki & Lamia Cero - The waiting game: How CI/CD di...
PDF
Without Self-Service Operations, the Cloud is Just Expensive Hosting 2.0 - (a...
PDF
DevOps Training - Ho Chi Minh City
PDF
The Four Keys - Measuring DevOps Success
PPTX
Continuous Delivery and Automated Operations on k8s with keptn
PPTX
ContinuousDelivery-101
PDF
Petcube. How to build a hardware startup from scratch
PDF
Where Data Architecture and Data Governance Collide
PDF
Clean Software Design: The Practices to Make The Design Simple
PDF
CDI 2.0 is upon us Devoxx
PPTX
Microsoft, Linux, OSS, Cloud and DevOps
PDF
CDI 2.0 is coming
PPTX
🔥 Big Data Engineer Roadmap 2023 | How To Become A Big Data Engineer In 2023 ...
PPTX
Product quality in agile project
Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration - NoVA CodeCamp 2014-10-11
Advanced Code Analysis with .NET
Advanced Code Analysis In .NET
DevOps Requires Agility
Continuous Integration: Blueprint, Toolbox, Master Craft
[DSC Europe 24] Darija Strmecki & Lamia Cero - The waiting game: How CI/CD di...
Without Self-Service Operations, the Cloud is Just Expensive Hosting 2.0 - (a...
DevOps Training - Ho Chi Minh City
The Four Keys - Measuring DevOps Success
Continuous Delivery and Automated Operations on k8s with keptn
ContinuousDelivery-101
Petcube. How to build a hardware startup from scratch
Where Data Architecture and Data Governance Collide
Clean Software Design: The Practices to Make The Design Simple
CDI 2.0 is upon us Devoxx
Microsoft, Linux, OSS, Cloud and DevOps
CDI 2.0 is coming
🔥 Big Data Engineer Roadmap 2023 | How To Become A Big Data Engineer In 2023 ...
Product quality in agile project
Ad

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Approach and Philosophy of On baking technology
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Empathic Computing: Creating Shared Understanding
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
The AUB Centre for AI in Media Proposal.docx
Diabetes mellitus diagnosis method based random forest with bat algorithm
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Spectral efficient network and resource selection model in 5G networks
Understanding_Digital_Forensics_Presentation.pptx
Chapter 3 Spatial Domain Image Processing.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Approach and Philosophy of On baking technology
20250228 LYD VKU AI Blended-Learning.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Big Data Technologies - Introduction.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Empathic Computing: Creating Shared Understanding
Mobile App Security Testing_ A Comprehensive Guide.pdf
Unlocking AI with Model Context Protocol (MCP)
The Rise and Fall of 3GPP – Time for a Sabbatical?
Reach Out and Touch Someone: Haptics and Empathic Computing

Continuous Integration: Toolbox, Blueprint, Master Craft

  • 1. Continuous Integration: Blueprint, Toolbox, Master Craft Stephen D. Ritchie #DCAEC12 @RuthlessHelp Dec 7, 2012 Stephen D. Ritchie – Managing Consultant – Excella Consulting, Inc., 2300 Wilson Blvd, Suite 630, Arlington, VA 22201 – 703.840.8600 – http://excella.com
  • 2. Live Tweet, Slides and Examples • Twitter: @RuthlessHelp #DCAEC12 • Slides: http://www.slideshare.net/ruthlesshelp • Code Samples: http://github.com/ruthlesshelp Stephen D. Ritchie #DCAEC12 2
  • 3. The Problem 1 Scott makes changes 2 Susan makes changes 3 You can’t build Source Code 1 3 2 Scott’s Susan’s You Computer Computer Stephen D. Ritchie #DCAEC12 3
  • 4. What Went Wrong? Conflicts Missing Files Breaking Changes Stephen D. Ritchie #DCAEC12 4
  • 5. How do you find integration issues? Stephen D. Ritchie #DCAEC12 5
  • 6. Manual Integration Build Run Some Unit Tests Perform Static Analysis Clean + Rebuild All Stephen D. Ritchie #DCAEC12 6
  • 8. CI Server Source CI Code Server Scott’s Susan’s You Computer Computer Stephen D. Ritchie #DCAEC12 8
  • 9. CI Server Triggered by SCM and Stephen D. Ritchie #DCAEC12 9
  • 10. CI – Per Commit Steps 1. Clean + Rebuild All 2. Run All Unit Tests 3. Analysis Static Code Analysis Coding Standards Stephen D. Ritchie #DCAEC12 10
  • 11. Continuous Integration Toolbox Stephen D. Ritchie #DCAEC12 11
  • 12. CI Server – Jenkins http://jenkins-ci.org/ Free Open Source Stephen D. Ritchie #DCAEC12 12
  • 13. CI Server – Cruise Control http://cruisecontrol.sourceforge.net/ http://www.cruisecontrolnet.org/ Free Open Source Stephen D. Ritchie #DCAEC12 13
  • 14. CI Server – TeamCity http://www.jetbrains.com/teamcity/ Commercial Easy to Use Stephen D. Ritchie #DCAEC12 14
  • 15. Perhaps an example would be helpful Stephen D. Ritchie #DCAEC12 15
  • 16. Continuous Integration Master Craft Stephen D. Ritchie #DCAEC12 16
  • 17. The Master Craft Unit Testing Plus Code Coverage Stephen D. Ritchie #DCAEC12 17
  • 18. The Master Craft System Testing Integration Testing Acceptance Testing Stephen D. Ritchie #DCAEC12 18
  • 19. The Master Craft Code Quality Visualizations Analysis Checks Metrics Detections Stephen D. Ritchie #DCAEC12 19
  • 20. The Master Craft Reporting And Visibility Stephen D. Ritchie #DCAEC12 20
  • 21. The Master Craft Packaging And Deployment Stephen D. Ritchie #DCAEC12 21
  • 22. Stephen’s Contact Info • Email: stephen.ritchie@excella.com • LinkedIn: http://www.linkedin.com/in/sritchie Stephen D. Ritchie #DCAEC12 22