SlideShare a Scribd company logo
1 of 38
Download to read offline
An Introduction to Continuous Delivery




                                                                              rolf russell
                                                        continuous delivery practice lead

© 2011 All rights reserved.
getting it in front of users quickly




                                       http://code.flickr.com
small feature chunks
                                                time




constant flow of new features into production

incremental release of small changes
Why
build the right thing


                        every business idea is
                        a hypothesis until you
                        get user feedback
corollary: don’t waste money on the wrong thing

Standish Group: how often features are used

 Never 45%

 Rarely 19%

Sometimes 16%

   Often 13%

   Always 7%
constant user connection

by releasing everyday:

  your users can be delighted by new stuff all the time


  your users get the feeling you are reacting to what they want
ability to move quickly

react to the market

explore new revenue streams
better aligned people

development & operations close to the business

IT no longer perceived as
the bottleneck
reliability & stability




                          John Allspaw: “Ops Metametrics” http://slidesha.re/dsSZIr
TTR (time to recover)


                   time to figure        time to
                    out cause of    >>      fix
                                         problem
                      problem

                                                                 time

       uh oh                                   wheeew
 problem happens                            problem solved




                                                   adapted from John Allspaw
progress
How
fast, automated feedback on the
production readiness of your applications
every time there is a change
whether code, infrastructure, configuration or database


                                                  Jez Humble
continuous delivery

                     small feature chunks
                                                        time


software always production ready
  releases tied to business needs, not IT constraints


minimize the lead time from idea to live
  concept to cash
systems thinking is [a philosophy] based on the
belief that the component parts of a system can best
be understood in the context of relationships with
each other and with other systems, rather than in
isolation.
value stream mapping

process tool for improving the flow from a customer request
   to the fulfillment (concept to cash)

emphasis is on improving the whole not just the parts

uses quantitative data to identify waste and inefficiency

originally developed by toyota to assist in the improvement of
   manufacturing and supply-chain processes
value stream mapping


            requirement    requirement   coding   automated   integration   uat       release
            discovery      definition             testing     testing




lead-time         4 wks      4 wks        6 wks     1 wk        4 wks        1 wk      1wk

value-add-time    2 days      1 wk        4 wks    2 days        1 wk         1 day     4 hrs

complete
   &
accurate          30%         50%         25%       40%         80%           90%      80%
value stream mapping


            requirement   requirement   coding   automated   integration   uat       release
            discovery     definition             testing     testing




lead-time        4 wks      4 wks        6 wks     1 wk        4 wks        1 wk      1wk

value-add-time   2 days     1 wk         4 wks    2 days        1 wk         1 day     4 hrs

complete
   &
accurate          60%       50%          25%       40%         80%           90%      80%
while (true) {	
     	if (change checked into vcs) then build & test	
     	sleep 60
}
step 1 - continuous integration
n
                                                                               tio
                                                                             uc
                                                                           od
                                                                         Pr
                                                                             nt
                                                                          me               y
                                                                                       plo
                                                                                    De
                                                                               off        -
                                                                                       gn
                                                                                           Si
                                                                                              n
                                                                                         ru
                                                                                  y
                                                                               Dr
                                                                 g
                                                            stin
                                                         te
                                                     n
                                               sio                             se
                                             es                             lea ild
                                           gr
                                         Re                               Re bu
                                                                                                   faster feedback
                                                                                     nt
                                                                                  me n g
                                                                               ple lanni
                                                                         Im        p
                                                                ng
                                                        sti
full production pipeline




                                                      te
                                                   al
                                                anu                             d
                                               M
                                                                             ate sts
                                                                          tom Te
                                                                       Au ional
                                                                           t
                                                                         nc
                                                                      Fu
                                                                                           w
                                                                                        slo
                                                                                CI
                                                                                           t
                                                                                        fas
                                                                                CI
                                          -*                                           -      in
                                                                                 e  ck
                                                                              Ch


                              ,*-.$#/#*+/
                             !"#$%&'($
                                                                                           ld
                                                                                       bui
                                                                              e    r
                                                                          lop
                                                                       ve
                                                                     De
                                                                                        ff
                                                                                     -o
                                                                                   ck
                                                                              ki




                           +&%
                                                                        ion
full production pipeline

automated implementation of your system’s
 build, deploy, test, approval processes

!   visibility
!   traceability
!   compliance
treat everything like code

check in, automate, test in CI, promote in deployment pipeline
•  database: DDL & static data

•  deployment automation

•  infrastructure/configuration mgmt

•  monitoring configuration
treat servers like cattle, not pets
adhere to the test pyramid




                             Adapted from Mike Cohn (Automated Test Pyramid)
                             and Lisa Crispin & Janet Gregory (Agile Testing)
trunk based development
 Professor Plum P1                P2                   P3             P4    P4
            P1              P2                   P3          P4                       P5


                      P1                                    P3                   P4        P5
                                           P2                     B2       G3
             G1                  B1               G2
 Mainline
                           B1                                B2
                                        B1
                                                                 B2                         P4-5
                 G1                    P1-2           G2         P3        G3                        G4   G5    G6

            G1                        G2                    G3                             G4         G5       G6
        Reverend Green                                                G3                        G4
                                            G2




  branches discourage refactoring
  branches delay integration and hide risk
  merging wastes time and is tedious
trunk based development

feature toggles let you deploy incomplete features
turned off

branch-by-abstraction lets you make architectural
changes
consistency from development to production


      accidental          >>
                                 necessary
                                 inconsistency
   inconsistency

     deployment process
     environment configuration
     testing tools
pull itops onto the delivery team


sit together: biz, dev, qa & sysadmin

share KPIs for stability and change

same story wall and iterations
“in production”?     “live”?

what does “in production” mean today?

what does “live” mean? is it a binary state?

how can we take advantage of shades of grey in “live”?
concerns

reliability & stability
compliance & traceability
releasing 10 times/day
   •    don’t need to, just keep your code always production releasable

complexity of my systems
   •    its about continuous improvement. start with low hanging fruit

it will take investment
   •    yes it will, but it will also start paying dividends quickly
homework



 how long would it take to get a one line
 code change into production using the
           normal process?


                      Mary & Tom Poppendieck Implementing Lean Software Development
Q&A
Thank you!
extra credit: lean startup movement

approach to managing disruptive innovation

goal of startups is to learn
   •    true for everyone early in the innovation cycle


learning should not be adhoc
   •    be rigorous & use the scientific method
   •    hypothesis -> experiment -> analysis

More Related Content

Similar to Introduction to Continuous Delivery

Recruitment and Social Media | Singapore
Recruitment and Social Media | SingaporeRecruitment and Social Media | Singapore
Recruitment and Social Media | SingaporeMarCruiter
 
Newgen: Banks "bank" upon us
Newgen: Banks "bank" upon usNewgen: Banks "bank" upon us
Newgen: Banks "bank" upon usneerajkoli
 
Typical project planning for implementation of hospital Pharmacy software pac...
Typical project planning for implementation of hospital Pharmacy software pac...Typical project planning for implementation of hospital Pharmacy software pac...
Typical project planning for implementation of hospital Pharmacy software pac...Jacques Timmermans
 
Client Relationship Model - First Year
Client Relationship Model - First YearClient Relationship Model - First Year
Client Relationship Model - First YearChris Hammer-Huber
 
Buzz Numbers Actionable Business Intelligence From Online Conversations
Buzz Numbers   Actionable Business Intelligence From Online ConversationsBuzz Numbers   Actionable Business Intelligence From Online Conversations
Buzz Numbers Actionable Business Intelligence From Online ConversationsNick Court
 
Business Perspectives on Internationalization (i18n)
Business Perspectives on Internationalization (i18n)Business Perspectives on Internationalization (i18n)
Business Perspectives on Internationalization (i18n)Lingoport (www.lingoport.com)
 
Worth Article Featuring Altair
Worth Article Featuring AltairWorth Article Featuring Altair
Worth Article Featuring Altaircourtkiel429
 
Worth Article by Richard Black
Worth Article by Richard BlackWorth Article by Richard Black
Worth Article by Richard Blackcourtkiel429
 
Careerminds e-Outplacement Information Packet
Careerminds e-Outplacement Information PacketCareerminds e-Outplacement Information Packet
Careerminds e-Outplacement Information Packetneworleans72
 
Novell Data Synchronizer: Overview, Installation and Configuration
Novell Data Synchronizer: Overview, Installation and ConfigurationNovell Data Synchronizer: Overview, Installation and Configuration
Novell Data Synchronizer: Overview, Installation and ConfigurationNovell
 
2012 Apscu Cross Lanaghen Revised 6 5 2012
2012 Apscu Cross Lanaghen Revised 6 5 20122012 Apscu Cross Lanaghen Revised 6 5 2012
2012 Apscu Cross Lanaghen Revised 6 5 2012Ann Cross
 
Class Actions: The Latest Word – April 2012
Class Actions: The Latest Word – April 2012Class Actions: The Latest Word – April 2012
Class Actions: The Latest Word – April 2012Now Dentons
 
Trends & Momentum in Events - 2013
Trends & Momentum in Events - 2013Trends & Momentum in Events - 2013
Trends & Momentum in Events - 2013Randle Stonier
 
Lodestar InnovationOne Brief
Lodestar InnovationOne BriefLodestar InnovationOne Brief
Lodestar InnovationOne Briefharunasad
 
Lease Buyout Cost Reduction Six Sigma Case Study
Lease Buyout Cost Reduction Six Sigma Case StudyLease Buyout Cost Reduction Six Sigma Case Study
Lease Buyout Cost Reduction Six Sigma Case StudySteven Bonacorsi
 
Using voting pads and our learning platform to aid assessment
Using voting pads and our learning platform to aid assessmentUsing voting pads and our learning platform to aid assessment
Using voting pads and our learning platform to aid assessmentBecta
 
Introducing 'Clicker Technology'
Introducing 'Clicker Technology'Introducing 'Clicker Technology'
Introducing 'Clicker Technology'David Wilson
 
Hacker Lab Summary
Hacker Lab SummaryHacker Lab Summary
Hacker Lab SummaryEric Ullrich
 

Similar to Introduction to Continuous Delivery (20)

Recruitment and Social Media | Singapore
Recruitment and Social Media | SingaporeRecruitment and Social Media | Singapore
Recruitment and Social Media | Singapore
 
Newgen: Banks "bank" upon us
Newgen: Banks "bank" upon usNewgen: Banks "bank" upon us
Newgen: Banks "bank" upon us
 
Typical project planning for implementation of hospital Pharmacy software pac...
Typical project planning for implementation of hospital Pharmacy software pac...Typical project planning for implementation of hospital Pharmacy software pac...
Typical project planning for implementation of hospital Pharmacy software pac...
 
Client Relationship Model - First Year
Client Relationship Model - First YearClient Relationship Model - First Year
Client Relationship Model - First Year
 
Be Agile, Be Happy
Be Agile, Be HappyBe Agile, Be Happy
Be Agile, Be Happy
 
Buzz Numbers Actionable Business Intelligence From Online Conversations
Buzz Numbers   Actionable Business Intelligence From Online ConversationsBuzz Numbers   Actionable Business Intelligence From Online Conversations
Buzz Numbers Actionable Business Intelligence From Online Conversations
 
Business Perspectives on Internationalization (i18n)
Business Perspectives on Internationalization (i18n)Business Perspectives on Internationalization (i18n)
Business Perspectives on Internationalization (i18n)
 
Worth Article Featuring Altair
Worth Article Featuring AltairWorth Article Featuring Altair
Worth Article Featuring Altair
 
Worth Article by Richard Black
Worth Article by Richard BlackWorth Article by Richard Black
Worth Article by Richard Black
 
Careerminds e-Outplacement Information Packet
Careerminds e-Outplacement Information PacketCareerminds e-Outplacement Information Packet
Careerminds e-Outplacement Information Packet
 
Novell Data Synchronizer: Overview, Installation and Configuration
Novell Data Synchronizer: Overview, Installation and ConfigurationNovell Data Synchronizer: Overview, Installation and Configuration
Novell Data Synchronizer: Overview, Installation and Configuration
 
2012 Apscu Cross Lanaghen Revised 6 5 2012
2012 Apscu Cross Lanaghen Revised 6 5 20122012 Apscu Cross Lanaghen Revised 6 5 2012
2012 Apscu Cross Lanaghen Revised 6 5 2012
 
Class Actions: The Latest Word – April 2012
Class Actions: The Latest Word – April 2012Class Actions: The Latest Word – April 2012
Class Actions: The Latest Word – April 2012
 
Trends & Momentum in Events - 2013
Trends & Momentum in Events - 2013Trends & Momentum in Events - 2013
Trends & Momentum in Events - 2013
 
Lodestar InnovationOne Brief
Lodestar InnovationOne BriefLodestar InnovationOne Brief
Lodestar InnovationOne Brief
 
Lease Buyout Cost Reduction Six Sigma Case Study
Lease Buyout Cost Reduction Six Sigma Case StudyLease Buyout Cost Reduction Six Sigma Case Study
Lease Buyout Cost Reduction Six Sigma Case Study
 
Sse wumart group5b_2011
Sse wumart group5b_2011Sse wumart group5b_2011
Sse wumart group5b_2011
 
Using voting pads and our learning platform to aid assessment
Using voting pads and our learning platform to aid assessmentUsing voting pads and our learning platform to aid assessment
Using voting pads and our learning platform to aid assessment
 
Introducing 'Clicker Technology'
Introducing 'Clicker Technology'Introducing 'Clicker Technology'
Introducing 'Clicker Technology'
 
Hacker Lab Summary
Hacker Lab SummaryHacker Lab Summary
Hacker Lab Summary
 

More from Kmanthei

Distributed Agile
Distributed AgileDistributed Agile
Distributed AgileKmanthei
 
Design in Practice (V1)
Design in Practice (V1)Design in Practice (V1)
Design in Practice (V1)Kmanthei
 
Evolutionary architecture
Evolutionary architectureEvolutionary architecture
Evolutionary architectureKmanthei
 
We Can't Do That Here
We Can't Do That HereWe Can't Do That Here
We Can't Do That HereKmanthei
 
Agile Dependency Management
Agile Dependency ManagementAgile Dependency Management
Agile Dependency ManagementKmanthei
 
Technical Debt
Technical DebtTechnical Debt
Technical DebtKmanthei
 
Rails in the Large - Neal Ford
Rails in the Large - Neal FordRails in the Large - Neal Ford
Rails in the Large - Neal FordKmanthei
 
4 tales of enterprise agility
4 tales of enterprise agility4 tales of enterprise agility
4 tales of enterprise agilityKmanthei
 
Agile Design in Practice
Agile Design in PracticeAgile Design in Practice
Agile Design in PracticeKmanthei
 
Rebecca parsons agile east
Rebecca parsons   agile eastRebecca parsons   agile east
Rebecca parsons agile eastKmanthei
 

More from Kmanthei (10)

Distributed Agile
Distributed AgileDistributed Agile
Distributed Agile
 
Design in Practice (V1)
Design in Practice (V1)Design in Practice (V1)
Design in Practice (V1)
 
Evolutionary architecture
Evolutionary architectureEvolutionary architecture
Evolutionary architecture
 
We Can't Do That Here
We Can't Do That HereWe Can't Do That Here
We Can't Do That Here
 
Agile Dependency Management
Agile Dependency ManagementAgile Dependency Management
Agile Dependency Management
 
Technical Debt
Technical DebtTechnical Debt
Technical Debt
 
Rails in the Large - Neal Ford
Rails in the Large - Neal FordRails in the Large - Neal Ford
Rails in the Large - Neal Ford
 
4 tales of enterprise agility
4 tales of enterprise agility4 tales of enterprise agility
4 tales of enterprise agility
 
Agile Design in Practice
Agile Design in PracticeAgile Design in Practice
Agile Design in Practice
 
Rebecca parsons agile east
Rebecca parsons   agile eastRebecca parsons   agile east
Rebecca parsons agile east
 

Recently uploaded

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Recently uploaded (20)

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

Introduction to Continuous Delivery

  • 1. An Introduction to Continuous Delivery rolf russell continuous delivery practice lead © 2011 All rights reserved.
  • 2.
  • 3.
  • 4. getting it in front of users quickly http://code.flickr.com
  • 5. small feature chunks time constant flow of new features into production incremental release of small changes
  • 6. Why
  • 7. build the right thing every business idea is a hypothesis until you get user feedback
  • 8. corollary: don’t waste money on the wrong thing Standish Group: how often features are used Never 45% Rarely 19% Sometimes 16% Often 13% Always 7%
  • 9. constant user connection by releasing everyday: your users can be delighted by new stuff all the time your users get the feeling you are reacting to what they want
  • 10. ability to move quickly react to the market explore new revenue streams
  • 11. better aligned people development & operations close to the business IT no longer perceived as the bottleneck
  • 12. reliability & stability John Allspaw: “Ops Metametrics” http://slidesha.re/dsSZIr
  • 13. TTR (time to recover) time to figure time to out cause of >> fix problem problem time uh oh wheeew problem happens problem solved adapted from John Allspaw
  • 15. How
  • 16. fast, automated feedback on the production readiness of your applications every time there is a change whether code, infrastructure, configuration or database Jez Humble
  • 17. continuous delivery small feature chunks time software always production ready releases tied to business needs, not IT constraints minimize the lead time from idea to live concept to cash
  • 18. systems thinking is [a philosophy] based on the belief that the component parts of a system can best be understood in the context of relationships with each other and with other systems, rather than in isolation.
  • 19. value stream mapping process tool for improving the flow from a customer request to the fulfillment (concept to cash) emphasis is on improving the whole not just the parts uses quantitative data to identify waste and inefficiency originally developed by toyota to assist in the improvement of manufacturing and supply-chain processes
  • 20. value stream mapping requirement requirement coding automated integration uat release discovery definition testing testing lead-time 4 wks 4 wks 6 wks 1 wk 4 wks 1 wk 1wk value-add-time 2 days 1 wk 4 wks 2 days 1 wk 1 day 4 hrs complete & accurate 30% 50% 25% 40% 80% 90% 80%
  • 21. value stream mapping requirement requirement coding automated integration uat release discovery definition testing testing lead-time 4 wks 4 wks 6 wks 1 wk 4 wks 1 wk 1wk value-add-time 2 days 1 wk 4 wks 2 days 1 wk 1 day 4 hrs complete & accurate 60% 50% 25% 40% 80% 90% 80%
  • 22. while (true) { if (change checked into vcs) then build & test sleep 60 }
  • 23. step 1 - continuous integration
  • 24. n tio uc od Pr nt me y plo De off - gn Si n ru y Dr g stin te n sio se es lea ild gr Re Re bu faster feedback nt me n g ple lanni Im p ng sti full production pipeline te al anu d M ate sts tom Te Au ional t nc Fu w slo CI t fas CI -* - in e ck Ch ,*-.$#/#*+/ !"#$%&'($ ld bui e r lop ve De ff -o ck ki +&% ion
  • 25. full production pipeline automated implementation of your system’s build, deploy, test, approval processes !   visibility !   traceability !   compliance
  • 26. treat everything like code check in, automate, test in CI, promote in deployment pipeline •  database: DDL & static data •  deployment automation •  infrastructure/configuration mgmt •  monitoring configuration
  • 27. treat servers like cattle, not pets
  • 28. adhere to the test pyramid Adapted from Mike Cohn (Automated Test Pyramid) and Lisa Crispin & Janet Gregory (Agile Testing)
  • 29. trunk based development Professor Plum P1 P2 P3 P4 P4 P1 P2 P3 P4 P5 P1 P3 P4 P5 P2 B2 G3 G1 B1 G2 Mainline B1 B2 B1 B2 P4-5 G1 P1-2 G2 P3 G3 G4 G5 G6 G1 G2 G3 G4 G5 G6 Reverend Green G3 G4 G2 branches discourage refactoring branches delay integration and hide risk merging wastes time and is tedious
  • 30. trunk based development feature toggles let you deploy incomplete features turned off branch-by-abstraction lets you make architectural changes
  • 31. consistency from development to production accidental >> necessary inconsistency inconsistency deployment process environment configuration testing tools
  • 32. pull itops onto the delivery team sit together: biz, dev, qa & sysadmin share KPIs for stability and change same story wall and iterations
  • 33. “in production”? “live”? what does “in production” mean today? what does “live” mean? is it a binary state? how can we take advantage of shades of grey in “live”?
  • 34. concerns reliability & stability compliance & traceability releasing 10 times/day •  don’t need to, just keep your code always production releasable complexity of my systems •  its about continuous improvement. start with low hanging fruit it will take investment •  yes it will, but it will also start paying dividends quickly
  • 35. homework how long would it take to get a one line code change into production using the normal process? Mary & Tom Poppendieck Implementing Lean Software Development
  • 36. Q&A
  • 38. extra credit: lean startup movement approach to managing disruptive innovation goal of startups is to learn •  true for everyone early in the innovation cycle learning should not be adhoc •  be rigorous & use the scientific method •  hypothesis -> experiment -> analysis