End-to-end Deployment Pipelines:
  Avoiding Pipeline Fragmentation
          Matthew Skelton :: 13 June 2012
End-to-end Deployment Pipelines
       Introduction




                                                                                      AGENDA
       Context: Continuous Delivery

       Value stream mapping

       What are deployment pipelines?

       Pipeline fragmentation

       Deriving value from end-to-end pipelines

       Q&A
                                 End-to-end Deployment Pipelines :: Matthew Skelton
    2
End-to-end Deployment Pipelines
       Introduction




                                                                                      AGENDA
       Context: Continuous Delivery

       Value stream mapping

       What are deployment pipelines?

       Pipeline fragmentation

       Deriving value from end-to-end pipelines

       Q&A
                                 End-to-end Deployment Pipelines :: Matthew Skelton
    3
Continuous Delivery

       Empowering product owners & the business to
        choose when to deploy

       Software always ready to go live

       „One-click‟ deployments

       Visibility of work-in-progress


                              End-to-end Deployment Pipelines :: Matthew Skelton
    4
Continuous Delivery
       Context
           http://continuousdelivery.com/
           Jez Humble & David Farley
           (ex-)ThoughtWorks

       Chapter 5, Anatomy of the
        Deployment Pipeline, is free to
        download:
           http://www.informit.com/articles/article.as
            px?p=1621865

       Read the book!
           + screen casts on InfoQ

                                     End-to-end Deployment Pipelines :: Matthew Skelton
    5
End-to-end Deployment Pipelines
       Introduction




                                                                                      AGENDA
       Context: Continuous Delivery

       Value stream mapping

       What are deployment pipelines?

       Pipeline fragmentation

       Deriving value from end-to-end pipelines

       Q&A
                                 End-to-end Deployment Pipelines :: Matthew Skelton
    6
Value Stream Maps
       Identify stages in the release cycle

       „Value-added‟ time

       Elapsed time

       Remove bottlenecks, eliminate waste

       Further reading:
           Lean Software Development, Mary & Tom Poppendieck
           “How long would it take your organization to deploy a change
            that involves just one single line of code?”

                                   End-to-end Deployment Pipelines :: Matthew Skelton
    7
Value Stream Maps
       Example (from Continuous Delivery)




       Where is this visible within the organisation?
       Is the information up-to-date?

                             End-to-end Deployment Pipelines :: Matthew Skelton
    8
End-to-end Deployment Pipelines
       Introduction




                                                                                      AGENDA
       Context: Continuous Delivery

       Value stream mapping

       What are deployment pipelines?

       Pipeline fragmentation

       Deriving value from end-to-end pipelines

       Q&A
                                 End-to-end Deployment Pipelines :: Matthew Skelton
    9
What are deployment pipelines?
    Automated manifestations of value stream maps




                        End-to-end Deployment Pipelines :: Matthew Skelton
    10
The Deployment Pipeline tells us...
    At what stage is version X of the software?

    Which version is in environment Y?

    Which versions made it to Production?

    What version should I test next?

    ...and so on.


                          End-to-end Deployment Pipelines :: Matthew Skelton
    11
The Deployment Pipeline tells us...
    At what stage is version X of the software?
    Which version is in environment Y?
    Which versions made it to Production?
    What version should I test next?




                                       End-to-end Deployment Pipelines :: Matthew Skelton
    12
The Deployment Pipeline
    GO from ThoughtWorks Studios:




               http://www.thoughtworks-studios.com/go-agile-release-management/features-benefits

                                End-to-end Deployment Pipelines :: Matthew Skelton
13
The Deployment Pipeline
    At a glance:




                http://www.thoughtworks-studios.com/go-agile-release-management/features-benefits

                                 End-to-end Deployment Pipelines :: Matthew Skelton
14
End-to-end Deployment Pipelines
    Introduction




                                                                                   AGENDA
    Context: Continuous Delivery

    Value stream mapping

    What are deployment pipelines?

    Pipeline fragmentation

    Deriving value from end-to-end pipelines

    Q&A
                              End-to-end Deployment Pipelines :: Matthew Skelton
    15
Pipeline Fragmentation
    Deployment pipeline is broken into small chunks

    End-to-end view is missing




                                                                                   ?
                     http://blog.mikeobrien.net/2010/09/setting-up-thoughtworks-go-build-on.html

                              End-to-end Deployment Pipelines :: Matthew Skelton
    16
Pipeline Fragmentation

End-to-end Pipeline                             Fragmented Pipeline




      From Dev to Production                           Multiple separate isolated steps




                               End-to-end Deployment Pipelines :: Matthew Skelton
 17
Pipeline Fragmentation
    Questions (again):
        At what stage is version X of the software?
        Which version is in environment Y?
     
     
         Which versions made it to Production?
         What version should I test next?
                                                                                             ?

                                        End-to-end Deployment Pipelines :: Matthew Skelton
    18
Problems with Pipeline Fragmentation
    Difficult to get the overall picture
        Multiple places to look
        Limited traceability


    Difficult to answer the common questions:
        At what stage is version X of the software?
        Which version is in environment Y?
        Which versions made it to Production?
        What version should I test next?



    What should be automated becomes manual


                                        End-to-end Deployment Pipelines :: Matthew Skelton
    19
Causes of Pipeline Fragmentation
    Teams and Roles
        Each team responsible for a single GO server
        GO servers organised around responsibilities


    Location
        Teams in different locations
        Tricky to achieve inter-site view



    Performance
        Slow-downs when > 200 pipelines
        „Misuse‟ of pipelines




                                        End-to-end Deployment Pipelines :: Matthew Skelton
    20
End-to-end Deployment Pipelines
    Introduction




                                                                                   AGENDA
    Context: Continuous Delivery

    Value stream mapping

    What are deployment pipelines?

    Pipeline fragmentation

    Deriving value from end-to-end pipelines

    Q&A
                              End-to-end Deployment Pipelines :: Matthew Skelton
    21
Deriving value from end-to-end pipelines
    Challenges:

        Versioning and dependency management

        Separating subsystems can be tricky

        A product- or service-centric view makes this easier
            Goal is one pipeline per product or subsystem

        Design of deployment pipelines
            Triggers, build dependencies, re-using components as test harnesses

        Multiple test environments complicate pipelines
            One environment per product better than one per team?
            New „diamond dependencies‟ in GO 12.2 might help here

        Optimising the automated test suites is essential
                                       End-to-end Deployment Pipelines :: Matthew Skelton
    22
Deriving value from end-to-end pipelines
    Choose small, simple products to begin with
        Limited or no dependency on other components
        Involve the business sponsor

    Aim for a “walking skeleton”, end-to-end
        Forces some tricky problems to be solved

    For example:
        Change the text on a button
        Commit, test, deploy to Production within a day

    More complex scenarios can follow later
                              End-to-end Deployment Pipelines :: Matthew Skelton
    23
Deriving value from end-to-end pipelines
    Answer questions from:
        Product owners
        The Business
        QA team
        Developers

    Visible progress

    Take more informed decisions, more rapidly

    Reduce cycle time

                          End-to-end Deployment Pipelines :: Matthew Skelton
    24
End-to-end Deployment Pipelines
    Introduction




                                                                                   AGENDA
    Context: Continuous Delivery

    Value stream mapping

    What are deployment pipelines?

    Pipeline fragmentation

    Deriving value from end-to-end pipelines

    Q&A
                              End-to-end Deployment Pipelines :: Matthew Skelton
    25
Any questions?

http://matthewskelton.net/

More Related Content

PDF
Agile Bodensee - Testautomation & Continuous Delivery Workshop
PPTX
[Hitesh mandloi] DevOpsDays Tokyo 2021 presentation
PPTX
Continuous Delivery Applied (Agile Richmond)
PPTX
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
PDF
Balance Change and Control of Continuous Delivery at Scale
PPTX
Antithesis of dev ops
PPTX
Anand Ahire - Electric Cloud - Visibility, Coordination, Control. Getting st...
PDF
Kubernetes + Jenkins X: a Cloud Native Approach
Agile Bodensee - Testautomation & Continuous Delivery Workshop
[Hitesh mandloi] DevOpsDays Tokyo 2021 presentation
Continuous Delivery Applied (Agile Richmond)
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Balance Change and Control of Continuous Delivery at Scale
Antithesis of dev ops
Anand Ahire - Electric Cloud - Visibility, Coordination, Control. Getting st...
Kubernetes + Jenkins X: a Cloud Native Approach

Similar to End-to-end deployment pipelines - avoiding pipeline fragmentation (20)

PDF
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
PDF
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
PDF
Arquitectura en detalle de una anatomia devops
PPTX
Design and Implementation of a Load Balancing Algorithm for a Clustered SDN C...
PDF
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
PDF
Keynote VST2020 (Workshop on Validation, Analysis and Evolution of Software ...
PPTX
Continuous Integration and Delivery using TeamCity and Jenkins
PDF
DevOps Meetup Bangkok - Value Stream Mapping for Continuous Delivery
PDF
[QE 2017] Dawid Pacia, Tomasz Janiszewski - SQA w erze TestOps
PDF
SDN basics
PPTX
Modern CI/CD in the microservices world with Kubernetes
PPTX
Global DevOps BootCamp
PDF
CI CD Pipeline Interview Questions PDF By ScholarHat
PPTX
CI/CD
PDF
Advanced Techniques for Initiating the DevOps Journey
PDF
Functest in Depth
PPTX
Continuous Delivery in the Enterprise
PDF
Continuous Delivery With Containers
PDF
Let's release it - an intro to Continuous Delivery
PPTX
XP Days Ukraine 2016 Building CD Pipeline in Azure
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Arquitectura en detalle de una anatomia devops
Design and Implementation of a Load Balancing Algorithm for a Clustered SDN C...
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
Keynote VST2020 (Workshop on Validation, Analysis and Evolution of Software ...
Continuous Integration and Delivery using TeamCity and Jenkins
DevOps Meetup Bangkok - Value Stream Mapping for Continuous Delivery
[QE 2017] Dawid Pacia, Tomasz Janiszewski - SQA w erze TestOps
SDN basics
Modern CI/CD in the microservices world with Kubernetes
Global DevOps BootCamp
CI CD Pipeline Interview Questions PDF By ScholarHat
CI/CD
Advanced Techniques for Initiating the DevOps Journey
Functest in Depth
Continuous Delivery in the Enterprise
Continuous Delivery With Containers
Let's release it - an intro to Continuous Delivery
XP Days Ukraine 2016 Building CD Pipeline in Azure
Ad

More from Matthew Skelton (20)

PDF
Find me on SpeakerDeck! - Matthew Skelton.pdf
PDF
Business and technical agility with Team Topologies - QCon Plus - 2021-05-26
PDF
What is platform as a product? Clues from Team Topologies - WTFinar with Cont...
PDF
Business agility with Team Topologies - NatWest Group - 2021-01-19
PDF
WFT is platform as a product? Clues from Team Topologies - WTFinar with Conta...
PDF
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
PDF
Accidental Architects - how HR designs software systems - Team Topologies - f...
PDF
Team Topologies in action - early results from industry - DOES Las Vegas 2020...
PDF
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
PDF
Remote first team interactions with Team Topologies - Iris Software Group - 2...
PDF
Team Topologies in action - early results from industry - DOES London Virtual...
PDF
Accidental Architects - how HR designs software systems - Team Topologies - e...
PDF
Remote-first team interactions with Team Topologies - SEAM - 2020-05-13
PDF
Remote-first team interactions with Team Topologies - Agile Yorkshire - 2020-...
PDF
Remote first team interactions with Team Topologies - IT Revolution webinar -...
PDF
Remote-first team interactions with Team Topologies
PDF
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
PDF
How to break apart a monolithic system safely without destroying your team - ...
PDF
Un-broken logging - the foundation of software operability - Operability.io -...
PDF
Forget monoliths vs microservices - focus on team cognitive load - Team Topol...
Find me on SpeakerDeck! - Matthew Skelton.pdf
Business and technical agility with Team Topologies - QCon Plus - 2021-05-26
What is platform as a product? Clues from Team Topologies - WTFinar with Cont...
Business agility with Team Topologies - NatWest Group - 2021-01-19
WFT is platform as a product? Clues from Team Topologies - WTFinar with Conta...
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
Accidental Architects - how HR designs software systems - Team Topologies - f...
Team Topologies in action - early results from industry - DOES Las Vegas 2020...
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
Remote first team interactions with Team Topologies - Iris Software Group - 2...
Team Topologies in action - early results from industry - DOES London Virtual...
Accidental Architects - how HR designs software systems - Team Topologies - e...
Remote-first team interactions with Team Topologies - SEAM - 2020-05-13
Remote-first team interactions with Team Topologies - Agile Yorkshire - 2020-...
Remote first team interactions with Team Topologies - IT Revolution webinar -...
Remote-first team interactions with Team Topologies
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
How to break apart a monolithic system safely without destroying your team - ...
Un-broken logging - the foundation of software operability - Operability.io -...
Forget monoliths vs microservices - focus on team cognitive load - Team Topol...
Ad

Recently uploaded (20)

PDF
ment.tech-How to Develop an AI Agent Healthcare App like Sully AI (1).pdf
PDF
Slides World Game (s) Great Redesign Eco Economic Epochs.pdf
PPTX
Blending method and technology for hydrogen.pptx
PDF
Introduction to c language from lecture slides
PPTX
Report in SIP_Distance_Learning_Technology_Impact.pptx
PDF
Applying Agentic AI in Enterprise Automation
PDF
1_Keynote_Breaking Barriers_한계를 넘어서_Charith Mendis.pdf
PPTX
Presentation - Principles of Instructional Design.pptx
PPTX
Introduction-to-Artificial-Intelligence (1).pptx
PDF
EGCB_Solar_Project_Presentation_and Finalcial Analysis.pdf
PDF
Decision Optimization - From Theory to Practice
PDF
Intravenous drug administration application for pediatric patients via augmen...
PDF
TrustArc Webinar - Data Minimization in Practice_ Reducing Risk, Enhancing Co...
PPTX
From Curiosity to ROI — Cost-Benefit Analysis of Agentic Automation [3/6]
PDF
Addressing the challenges of harmonizing law and artificial intelligence tech...
PPTX
Strategic Picks — Prioritising the Right Agentic Use Cases [2/6]
PDF
“Introduction to Designing with AI Agents,” a Presentation from Amazon Web Se...
PDF
Be ready for tomorrow’s needs with a longer-lasting, higher-performing PC
PDF
Revolutionizing recommendations a survey: a comprehensive exploration of mode...
PPTX
From XAI to XEE through Influence and Provenance.Controlling model fairness o...
ment.tech-How to Develop an AI Agent Healthcare App like Sully AI (1).pdf
Slides World Game (s) Great Redesign Eco Economic Epochs.pdf
Blending method and technology for hydrogen.pptx
Introduction to c language from lecture slides
Report in SIP_Distance_Learning_Technology_Impact.pptx
Applying Agentic AI in Enterprise Automation
1_Keynote_Breaking Barriers_한계를 넘어서_Charith Mendis.pdf
Presentation - Principles of Instructional Design.pptx
Introduction-to-Artificial-Intelligence (1).pptx
EGCB_Solar_Project_Presentation_and Finalcial Analysis.pdf
Decision Optimization - From Theory to Practice
Intravenous drug administration application for pediatric patients via augmen...
TrustArc Webinar - Data Minimization in Practice_ Reducing Risk, Enhancing Co...
From Curiosity to ROI — Cost-Benefit Analysis of Agentic Automation [3/6]
Addressing the challenges of harmonizing law and artificial intelligence tech...
Strategic Picks — Prioritising the Right Agentic Use Cases [2/6]
“Introduction to Designing with AI Agents,” a Presentation from Amazon Web Se...
Be ready for tomorrow’s needs with a longer-lasting, higher-performing PC
Revolutionizing recommendations a survey: a comprehensive exploration of mode...
From XAI to XEE through Influence and Provenance.Controlling model fairness o...

End-to-end deployment pipelines - avoiding pipeline fragmentation

  • 1. End-to-end Deployment Pipelines: Avoiding Pipeline Fragmentation Matthew Skelton :: 13 June 2012
  • 2. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 2
  • 3. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 3
  • 4. Continuous Delivery  Empowering product owners & the business to choose when to deploy  Software always ready to go live  „One-click‟ deployments  Visibility of work-in-progress End-to-end Deployment Pipelines :: Matthew Skelton 4
  • 5. Continuous Delivery  Context  http://continuousdelivery.com/  Jez Humble & David Farley  (ex-)ThoughtWorks  Chapter 5, Anatomy of the Deployment Pipeline, is free to download:  http://www.informit.com/articles/article.as px?p=1621865  Read the book!  + screen casts on InfoQ End-to-end Deployment Pipelines :: Matthew Skelton 5
  • 6. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 6
  • 7. Value Stream Maps  Identify stages in the release cycle  „Value-added‟ time  Elapsed time  Remove bottlenecks, eliminate waste  Further reading:  Lean Software Development, Mary & Tom Poppendieck  “How long would it take your organization to deploy a change that involves just one single line of code?” End-to-end Deployment Pipelines :: Matthew Skelton 7
  • 8. Value Stream Maps  Example (from Continuous Delivery)  Where is this visible within the organisation?  Is the information up-to-date? End-to-end Deployment Pipelines :: Matthew Skelton 8
  • 9. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 9
  • 10. What are deployment pipelines?  Automated manifestations of value stream maps End-to-end Deployment Pipelines :: Matthew Skelton 10
  • 11. The Deployment Pipeline tells us...  At what stage is version X of the software?  Which version is in environment Y?  Which versions made it to Production?  What version should I test next?  ...and so on. End-to-end Deployment Pipelines :: Matthew Skelton 11
  • 12. The Deployment Pipeline tells us...  At what stage is version X of the software?  Which version is in environment Y?  Which versions made it to Production?  What version should I test next? End-to-end Deployment Pipelines :: Matthew Skelton 12
  • 13. The Deployment Pipeline  GO from ThoughtWorks Studios: http://www.thoughtworks-studios.com/go-agile-release-management/features-benefits End-to-end Deployment Pipelines :: Matthew Skelton 13
  • 14. The Deployment Pipeline  At a glance: http://www.thoughtworks-studios.com/go-agile-release-management/features-benefits End-to-end Deployment Pipelines :: Matthew Skelton 14
  • 15. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 15
  • 16. Pipeline Fragmentation  Deployment pipeline is broken into small chunks  End-to-end view is missing ? http://blog.mikeobrien.net/2010/09/setting-up-thoughtworks-go-build-on.html End-to-end Deployment Pipelines :: Matthew Skelton 16
  • 17. Pipeline Fragmentation End-to-end Pipeline Fragmented Pipeline From Dev to Production Multiple separate isolated steps End-to-end Deployment Pipelines :: Matthew Skelton 17
  • 18. Pipeline Fragmentation  Questions (again):  At what stage is version X of the software?  Which version is in environment Y?   Which versions made it to Production? What version should I test next? ? End-to-end Deployment Pipelines :: Matthew Skelton 18
  • 19. Problems with Pipeline Fragmentation  Difficult to get the overall picture  Multiple places to look  Limited traceability  Difficult to answer the common questions:  At what stage is version X of the software?  Which version is in environment Y?  Which versions made it to Production?  What version should I test next?  What should be automated becomes manual End-to-end Deployment Pipelines :: Matthew Skelton 19
  • 20. Causes of Pipeline Fragmentation  Teams and Roles  Each team responsible for a single GO server  GO servers organised around responsibilities  Location  Teams in different locations  Tricky to achieve inter-site view  Performance  Slow-downs when > 200 pipelines  „Misuse‟ of pipelines End-to-end Deployment Pipelines :: Matthew Skelton 20
  • 21. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 21
  • 22. Deriving value from end-to-end pipelines  Challenges:  Versioning and dependency management  Separating subsystems can be tricky  A product- or service-centric view makes this easier  Goal is one pipeline per product or subsystem  Design of deployment pipelines  Triggers, build dependencies, re-using components as test harnesses  Multiple test environments complicate pipelines  One environment per product better than one per team?  New „diamond dependencies‟ in GO 12.2 might help here  Optimising the automated test suites is essential End-to-end Deployment Pipelines :: Matthew Skelton 22
  • 23. Deriving value from end-to-end pipelines  Choose small, simple products to begin with  Limited or no dependency on other components  Involve the business sponsor  Aim for a “walking skeleton”, end-to-end  Forces some tricky problems to be solved  For example:  Change the text on a button  Commit, test, deploy to Production within a day  More complex scenarios can follow later End-to-end Deployment Pipelines :: Matthew Skelton 23
  • 24. Deriving value from end-to-end pipelines  Answer questions from:  Product owners  The Business  QA team  Developers  Visible progress  Take more informed decisions, more rapidly  Reduce cycle time End-to-end Deployment Pipelines :: Matthew Skelton 24
  • 25. End-to-end Deployment Pipelines  Introduction AGENDA  Context: Continuous Delivery  Value stream mapping  What are deployment pipelines?  Pipeline fragmentation  Deriving value from end-to-end pipelines  Q&A End-to-end Deployment Pipelines :: Matthew Skelton 25