Your SlideShare is downloading. ×
0
CI Presentation




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



  Principal of OpenSource Connections
 Contributer to CruiseControl
 Member of Apache Software Foundation...
¿What are we talking about?



   ¿What is CI?
   ¿Why does it matter to me?
   ¿What do I need to use CI?
   Demonstr...
¿What is Continous Integracion?




         From Martin Fowler:


         “a fully automated and reproducible build,
   ...
Rapid Feedback




                            < 10 minutos




   Continuous Integration                  RICHMOND, Janua...
¿How is CI important to different members of a team?




                                                                 ...
Life of a programmer without CI...



   Unstable code, integration is difficult
  Many build errors reported
  Only on...
Life of a programmer with IC...



     The build process is simple and repeatable
    Elimination of Human Error
    D...
For a tester




      control
  


     ¿What is in the build?
    ¿What has changed between builds?
    ¿How do I ve...
For a Project Manager




      Visibility
  




                                                       10
   Continuous...
For a Project Manager




                                                       11
   Continuous Integration   RICHMOND, ...
For a development team




      security
  




                                                       12
   Continuous ...
For a development team




                                                       13
   Continuous Integration   RICHMOND,...
For a development team




                                                       14
   Continuous Integration   RICHMOND,...
For a development team




                                                       15
   Continuous Integration   RICHMOND,...
¿What is needed to get started?



    A dedicated machine
   Source Control
   Automated Build Script
   Method of no...
¿ What are the challenges to using CI?




                                                                    17
    Cont...
Challenge One: Cultural Change



    CI needs a champion who acts as the ambassador to the leaders of the
   organizatio...
Challenge Two: Environmental Difficulties




 All the tests should be true unit tests, not
integratin tests
 Few or no ...
Challenge Three: Project Characteristics



    Fewer branches to the code makes life easier
   Many small code changes....
Challenge Four: Stability of CI Tool




                                                      X
     The CI system must ...
Demo of Hudson




                                                       22
   Continuous Integration   RICHMOND, January...
¿Where to next?



    Continuous Integration: Improving Software Quality
   and Reducing Risk
   CIGuys.com (??)
   CI...
Matrix of 22 differences in CI systems

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




    ...
¿Why CI?



   Eliminate human errors
   Tests that run frequently are more valuable
   A CI system is the foundation o...
RICHMOND
Eric Pugh epugh@opensourceconnections.com
                                            January 14th, 2009
Upcoming SlideShare
Loading in...5
×

Ci Presentacion

1,221

Published on

English version of a presentation on the benefits, and challenges, of using CI.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,221
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
39
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Ci Presentacion"

  1. 1. CI Presentation Richmond Eric Pugh January 14th, 2009
  2. 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. 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. 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. 5. Rapid Feedback < 10 minutos Continuous Integration RICHMOND, January 14th, 2009
  6. 6. ¿How is CI important to different members of a team? 6 Continuous Integration RICHMOND, January 14th, 2009
  7. 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. 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. 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. 10. For a Project Manager Visibility  10 Continuous Integration RICHMOND, January 14th, 2009
  11. 11. For a Project Manager 11 Continuous Integration RICHMOND, January 14th, 2009
  12. 12. For a development team security  12 Continuous Integration RICHMOND, January 14th, 2009
  13. 13. For a development team 13 Continuous Integration RICHMOND, January 14th, 2009
  14. 14. For a development team 14 Continuous Integration RICHMOND, January 14th, 2009
  15. 15. For a development team 15 Continuous Integration RICHMOND, January 14th, 2009
  16. 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. 17. ¿ What are the challenges to using CI? 17 Continuous Integration RICHMOND, January 14th, 2009
  18. 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. 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. 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. 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. 22. Demo of Hudson 22 Continuous Integration RICHMOND, January 14th, 2009
  23. 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. 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. 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
  26. 26. RICHMOND Eric Pugh epugh@opensourceconnections.com January 14th, 2009
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×