SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
CI Presentation




                              Richmond
Eric Pugh
                              January 14th, 2009
¿Who am I?



  Principal of OpenSource Connections
 Contributer to CruiseControl
 Member of Apache Software Foundation
 Presenter at many conferences
 including OSCON, ApacheCON, jTDS
 Fascinated by the art of software
 development




 Continuous Integration                  RICHMOND, January 14th, 2009
¿What are we talking about?



   ¿What is CI?
   ¿Why does it matter to me?
   ¿What do I need to use CI?
   Demonstration of Hudson
   ¡Questions!




                                                            3
   Continuous Integration        RICHMOND, January 14th, 2009
¿What is Continous Integracion?




         From Martin Fowler:


         “a fully automated and reproducible build,
         including testing, that runs many times a day”.




          http://martinfowler.com/articles/continuousIntegration.html




                                                                                         4
   Continuous Integration                                     RICHMOND, January 14th, 2009
Rapid Feedback




                            < 10 minutos




   Continuous Integration                  RICHMOND, January 14th, 2009
¿How is CI important to different members of a team?




                                                                                  6
   Continuous Integration                              RICHMOND, January 14th, 2009
Life of a programmer without CI...



   Unstable code, integration is difficult
  Many build errors reported
  Only one person on the team can build the entire
  project
  Demonstrations require extensive planning
  Feedback cycle is long




    Every day is a struggle to be productive


                                                                                 7
    Continuous Integration                            RICHMOND, January 14th, 2009
Life of a programmer with IC...



     The build process is simple and repeatable
    Elimination of Human Error
    Demo’s are quick and easy
    Feedback cycle is very rapid




    ¡Every day you know you can code!


                                                                              8
    Continuous Integration                         RICHMOND, January 14th, 2009
For a tester




      control
  


     ¿What is in the build?
    ¿What has changed between builds?
    ¿How do I verify functionality?




                                                                    9
    Continuous Integration               RICHMOND, January 14th, 2009
For a Project Manager




      Visibility
  




                                                       10
   Continuous Integration   RICHMOND, January 14th, 2009
For a Project Manager




                                                       11
   Continuous Integration   RICHMOND, January 14th, 2009
For a development team




      security
  




                                                       12
   Continuous Integration   RICHMOND, January 14th, 2009
For a development team




                                                       13
   Continuous Integration   RICHMOND, January 14th, 2009
For a development team




                                                       14
   Continuous Integration   RICHMOND, January 14th, 2009
For a development team




                                                       15
   Continuous Integration   RICHMOND, January 14th, 2009
¿What is needed to get started?



    A dedicated machine
   Source Control
   Automated Build Script
   Method of notification




                                                             16
   Continuous Integration         RICHMOND, January 14th, 2009
¿ What are the challenges to using CI?




                                                                    17
    Continuous Integration               RICHMOND, January 14th, 2009
Challenge One: Cultural Change



    CI needs a champion who acts as the ambassador to the leaders of the
   organization.
   Thoughtleaders in the organization who can help encourage
   developers to accept the process changes that CI brings

    A very successful test case
     ¿A greenfield project if possible?




                                                                                   18
   Continuous Integration                               RICHMOND, January 14th, 2009
Challenge Two: Environmental Difficulties




 All the tests should be true unit tests, not
integratin tests
 Few or no external dependencies
 A beefy build server...
 A strategy for deploying code into the CI
environment
Database changes are SIMPLE




                                                                            19
     Continuous Integration                      RICHMOND, January 14th, 2009
Challenge Three: Project Characteristics



    Fewer branches to the code makes life easier
   Many small code changes. Code is committed throughout the day.
   There are good unit test coverage.
   The code is ready for deployment, not in pieces.




                                                                                  20
   Continuous Integration                              RICHMOND, January 14th, 2009
Challenge Four: Stability of CI Tool




                                                      X
     The CI system must be as well maintained as
    the Source Control system.
    THe CI system can do builds very quickly.
    ¿Who has responsibility for CI? It’s very
    important to have a “throat to choke”.
    No false alarms. If there are false alarms
    then the developers lose confidence in the CI




                                                      ✓
    system.




                                                                               21
    Continuous Integration                          RICHMOND, January 14th, 2009
Demo of Hudson




                                                       22
   Continuous Integration   RICHMOND, January 14th, 2009
¿Where to next?



    Continuous Integration: Improving Software Quality
   and Reducing Risk
   CIGuys.com (??)
   CITConf is the conference for CI. This year April 24,
   25 in Minneapolis, MN.




                                                                                       23
   Continuous Integration                                   RICHMOND, January 14th, 2009
Matrix of 22 differences in CI systems

  http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix




                                                                                 24
    Continuous Integration                            RICHMOND, January 14th, 2009
¿Why CI?



   Eliminate human errors
   Tests that run frequently are more valuable
   A CI system is the foundation of a project status dashboard
   ¡Eliminate integration problems!




                                                                                    25
   Continuous Integration                                RICHMOND, January 14th, 2009
RICHMOND
Eric Pugh epugh@opensourceconnections.com
                                            January 14th, 2009

Más contenido relacionado

Similar a Ci Presentacion

Lean manufacturing
Lean manufacturingLean manufacturing
Lean manufacturing
Hammaduddin
 
Ibm business partner connect 2015 long fong yee v1 (read-only)
Ibm business partner connect 2015   long fong yee v1 (read-only)Ibm business partner connect 2015   long fong yee v1 (read-only)
Ibm business partner connect 2015 long fong yee v1 (read-only)
Fong Yee Long
 

Similar a Ci Presentacion (20)

Continuous integration CloudParty 21 may 2014 - Milan
Continuous integration CloudParty 21 may 2014 - MilanContinuous integration CloudParty 21 may 2014 - Milan
Continuous integration CloudParty 21 may 2014 - Milan
 
What Is Visualization?
What Is Visualization?What Is Visualization?
What Is Visualization?
 
Flusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryFlusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous Delivery
 
Unicom Software Corporate Profile
Unicom Software Corporate ProfileUnicom Software Corporate Profile
Unicom Software Corporate Profile
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
 
Lean Thinking in IT by Marie-Pia Ignace, Lean IT Summit 2014
Lean Thinking in IT by Marie-Pia Ignace, Lean IT Summit 2014Lean Thinking in IT by Marie-Pia Ignace, Lean IT Summit 2014
Lean Thinking in IT by Marie-Pia Ignace, Lean IT Summit 2014
 
jenkins.pptx
jenkins.pptxjenkins.pptx
jenkins.pptx
 
20 Practical tips for a successful internationalisation project
20 Practical tips for a successful internationalisation project20 Practical tips for a successful internationalisation project
20 Practical tips for a successful internationalisation project
 
Videocon
VideoconVideocon
Videocon
 
From Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsFrom Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOps
 
How Automation Reveals Technical Debt
How Automation Reveals Technical DebtHow Automation Reveals Technical Debt
How Automation Reveals Technical Debt
 
LSU Nordic 2015 - Agile development on system z
LSU Nordic 2015 - Agile development on system zLSU Nordic 2015 - Agile development on system z
LSU Nordic 2015 - Agile development on system z
 
The state of Plone performance
The state of Plone performanceThe state of Plone performance
The state of Plone performance
 
Innovate at speed with Devops
Innovate at speed with DevopsInnovate at speed with Devops
Innovate at speed with Devops
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
Realizing Parallelism and Transparency in Applications through Idempotence
Realizing Parallelism and Transparency in Applications through IdempotenceRealizing Parallelism and Transparency in Applications through Idempotence
Realizing Parallelism and Transparency in Applications through Idempotence
 
Why Agile
Why AgileWhy Agile
Why Agile
 
Lean manufacturing
Lean manufacturingLean manufacturing
Lean manufacturing
 
Ibm business partner connect 2015 long fong yee v1 (read-only)
Ibm business partner connect 2015   long fong yee v1 (read-only)Ibm business partner connect 2015   long fong yee v1 (read-only)
Ibm business partner connect 2015 long fong yee v1 (read-only)
 
Presentacion eglc 2013 valencia_spain
Presentacion eglc 2013 valencia_spainPresentacion eglc 2013 valencia_spain
Presentacion eglc 2013 valencia_spain
 

Más de OpenSource Connections

Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey GraingerHaystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
OpenSource Connections
 
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
OpenSource Connections
 
Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...
OpenSource Connections
 

Más de OpenSource Connections (20)

Encores
EncoresEncores
Encores
 
Test driven relevancy
Test driven relevancyTest driven relevancy
Test driven relevancy
 
How To Structure Your Search Team for Success
How To Structure Your Search Team for SuccessHow To Structure Your Search Team for Success
How To Structure Your Search Team for Success
 
The right path to making search relevant - Taxonomy Bootcamp London 2019
The right path to making search relevant  - Taxonomy Bootcamp London 2019The right path to making search relevant  - Taxonomy Bootcamp London 2019
The right path to making search relevant - Taxonomy Bootcamp London 2019
 
Payloads and OCR with Solr
Payloads and OCR with SolrPayloads and OCR with Solr
Payloads and OCR with Solr
 
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullHaystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
 
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim AllisonHaystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
 
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
 
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj BharadwajHaystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
 
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
 
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan KohlHaystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
 
Haystack 2019 - Search with Vectors - Simon Hughes
Haystack 2019 - Search with Vectors - Simon HughesHaystack 2019 - Search with Vectors - Simon Hughes
Haystack 2019 - Search with Vectors - Simon Hughes
 
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey GraingerHaystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
 
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
 
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
 
Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...
 
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
 
Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...
 
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
 
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Ci Presentacion

  • 1. CI Presentation Richmond Eric Pugh January 14th, 2009
  • 2. ¿Who am I?  Principal of OpenSource Connections Contributer to CruiseControl Member of Apache Software Foundation Presenter at many conferences including OSCON, ApacheCON, jTDS Fascinated by the art of software development Continuous Integration RICHMOND, January 14th, 2009
  • 3. ¿What are we talking about? ¿What is CI? ¿Why does it matter to me? ¿What do I need to use CI? Demonstration of Hudson ¡Questions! 3 Continuous Integration RICHMOND, January 14th, 2009
  • 4. ¿What is Continous Integracion? From Martin Fowler: “a fully automated and reproducible build, including testing, that runs many times a day”. http://martinfowler.com/articles/continuousIntegration.html 4 Continuous Integration RICHMOND, January 14th, 2009
  • 5. Rapid Feedback < 10 minutos Continuous Integration RICHMOND, January 14th, 2009
  • 6. ¿How is CI important to different members of a team? 6 Continuous Integration RICHMOND, January 14th, 2009
  • 7. Life of a programmer without CI...  Unstable code, integration is difficult Many build errors reported Only one person on the team can build the entire project Demonstrations require extensive planning Feedback cycle is long Every day is a struggle to be productive 7 Continuous Integration RICHMOND, January 14th, 2009
  • 8. Life of a programmer with IC...  The build process is simple and repeatable Elimination of Human Error Demo’s are quick and easy Feedback cycle is very rapid ¡Every day you know you can code! 8 Continuous Integration RICHMOND, January 14th, 2009
  • 9. For a tester control   ¿What is in the build? ¿What has changed between builds? ¿How do I verify functionality? 9 Continuous Integration RICHMOND, January 14th, 2009
  • 10. For a Project Manager Visibility  10 Continuous Integration RICHMOND, January 14th, 2009
  • 11. For a Project Manager 11 Continuous Integration RICHMOND, January 14th, 2009
  • 12. For a development team security  12 Continuous Integration RICHMOND, January 14th, 2009
  • 13. For a development team 13 Continuous Integration RICHMOND, January 14th, 2009
  • 14. For a development team 14 Continuous Integration RICHMOND, January 14th, 2009
  • 15. For a development team 15 Continuous Integration RICHMOND, January 14th, 2009
  • 16. ¿What is needed to get started?  A dedicated machine Source Control Automated Build Script Method of notification 16 Continuous Integration RICHMOND, January 14th, 2009
  • 17. ¿ What are the challenges to using CI? 17 Continuous Integration RICHMOND, January 14th, 2009
  • 18. Challenge One: Cultural Change  CI needs a champion who acts as the ambassador to the leaders of the organization. Thoughtleaders in the organization who can help encourage developers to accept the process changes that CI brings  A very successful test case ¿A greenfield project if possible? 18 Continuous Integration RICHMOND, January 14th, 2009
  • 19. Challenge Two: Environmental Difficulties  All the tests should be true unit tests, not integratin tests  Few or no external dependencies  A beefy build server...  A strategy for deploying code into the CI environment Database changes are SIMPLE 19 Continuous Integration RICHMOND, January 14th, 2009
  • 20. Challenge Three: Project Characteristics  Fewer branches to the code makes life easier Many small code changes. Code is committed throughout the day. There are good unit test coverage. The code is ready for deployment, not in pieces. 20 Continuous Integration RICHMOND, January 14th, 2009
  • 21. Challenge Four: Stability of CI Tool X  The CI system must be as well maintained as the Source Control system. THe CI system can do builds very quickly. ¿Who has responsibility for CI? It’s very important to have a “throat to choke”. No false alarms. If there are false alarms then the developers lose confidence in the CI ✓ system. 21 Continuous Integration RICHMOND, January 14th, 2009
  • 22. Demo of Hudson 22 Continuous Integration RICHMOND, January 14th, 2009
  • 23. ¿Where to next?  Continuous Integration: Improving Software Quality and Reducing Risk CIGuys.com (??) CITConf is the conference for CI. This year April 24, 25 in Minneapolis, MN. 23 Continuous Integration RICHMOND, January 14th, 2009
  • 24. Matrix of 22 differences in CI systems http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix 24 Continuous Integration RICHMOND, January 14th, 2009
  • 25. ¿Why CI? Eliminate human errors Tests that run frequently are more valuable A CI system is the foundation of a project status dashboard ¡Eliminate integration problems! 25 Continuous Integration RICHMOND, January 14th, 2009