Know the Flow to Master Agility
Pumping the Continuous Delivery Pipeline
An Approach to accelerating Time to Value
Darren Byrne
September 2016
2 © 2016 CA. ALL RIGHTS RESERVED.
Pillars of Continuous-X
Continuous
Testing
Continuous
Deployment
Continuous
Test Data
Continuous
Build & Integration
GH
Flow
Auto
B&I
Unit
Test
Accp
Test
Auto
Deploy
UATPerf
Test
GHE Test
Data
SCM Artifact
Management
HTTP
Push API
CI
Services
Code
Analysis
Build
Tools
Infrastructure as a Service
SAFe Based Tooling & Project Management
Dev
Platform
Cx
Capability
Defect
Management
Test
Infra.
Test
Tools
Deployment
Infra Container
InfraSystem
Infra / NetworkWebhooks
GitHub
WebInspect
ALM
3 © 2016 CA. ALL RIGHTS RESERVED.
Kindness
Empathy
Generosity
4 © 2016 CA. ALL RIGHTS RESERVED.
Put your CDP Features in Backlog
Not Mission Impossible
Coach Coach Coach
Communicate until they’re sick of you
It’s about delivering value y’all
How to train your Managers
Review your Architecture again…
General Advice
5 © 2016 CA. ALL RIGHTS RESERVED.
Provide self-services instead of solutions
Integration & Build Practices
Common Build Environment
Watch out for the digital Tragedy of the Commons
6 © 2016 CA. ALL RIGHTS RESERVED.
Test Data Practices
Self-Service is the best service
Get under the hood
Make Test Data it’s own CDP
7 © 2016 CA. ALL RIGHTS RESERVED.
Testing Practices
Silver bullets
Test before merge
Build y’er Dashboards
TDD
Refactoring anyone?
Tie DoD to test results
Put Tests and Code in the same Repository
8 © 2016 CA. ALL RIGHTS RESERVED.
Continuous Deployment Practices
9 © 2016 CA. ALL RIGHTS RESERVED.
Go Retro…
10 © 2016 CA. ALL RIGHTS RESERVED.
Learn more on DevOps & Continuous Delivery
DevOps: "The Phoenix
Project" by Kim, Behr &
Spafford
"Continuous Delivery"
by Humble and Farley
‘We don’t think ourselves
into a new way of acting,
we act ourselves into a new
way of thinking’
Director Quality & Continuous-X
Darren.Byrne@hpe.com
Darren Byrne
https://ie.linkedin.com/in/darren-byrne-ab341b1
12 © 2016 CA. ALL RIGHTS RESERVED.
Backup
13 © 2016 CA. ALL RIGHTS RESERVED.
Developer
1 Decide on a Repo to work on
2 Clone the Repo
3 Create the branch
5 Create Pull Request
Can be done ‘New’ Code
Can be done for Refactoring
4 Code & Deployment Script
Master
Branch
Check In
Webhooks
Playbooks
Unit Tests
+ Plugins
Repo Level Integration Testing
Build
If all tests pass
+ Plugins
Docker Registry
Playbooks
ITG ITG PerformanceVersion Control
Staging
BEST 3rd Party
+
PRODUCTION
+
Playbooks
Smoke Test
Version Control
Pre-Merge
Infra

Know the flow to master agility

  • 1.
    Know the Flowto Master Agility Pumping the Continuous Delivery Pipeline An Approach to accelerating Time to Value Darren Byrne September 2016
  • 2.
    2 © 2016CA. ALL RIGHTS RESERVED. Pillars of Continuous-X Continuous Testing Continuous Deployment Continuous Test Data Continuous Build & Integration GH Flow Auto B&I Unit Test Accp Test Auto Deploy UATPerf Test GHE Test Data SCM Artifact Management HTTP Push API CI Services Code Analysis Build Tools Infrastructure as a Service SAFe Based Tooling & Project Management Dev Platform Cx Capability Defect Management Test Infra. Test Tools Deployment Infra Container InfraSystem Infra / NetworkWebhooks GitHub WebInspect ALM
  • 3.
    3 © 2016CA. ALL RIGHTS RESERVED. Kindness Empathy Generosity
  • 4.
    4 © 2016CA. ALL RIGHTS RESERVED. Put your CDP Features in Backlog Not Mission Impossible Coach Coach Coach Communicate until they’re sick of you It’s about delivering value y’all How to train your Managers Review your Architecture again… General Advice
  • 5.
    5 © 2016CA. ALL RIGHTS RESERVED. Provide self-services instead of solutions Integration & Build Practices Common Build Environment Watch out for the digital Tragedy of the Commons
  • 6.
    6 © 2016CA. ALL RIGHTS RESERVED. Test Data Practices Self-Service is the best service Get under the hood Make Test Data it’s own CDP
  • 7.
    7 © 2016CA. ALL RIGHTS RESERVED. Testing Practices Silver bullets Test before merge Build y’er Dashboards TDD Refactoring anyone? Tie DoD to test results Put Tests and Code in the same Repository
  • 8.
    8 © 2016CA. ALL RIGHTS RESERVED. Continuous Deployment Practices
  • 9.
    9 © 2016CA. ALL RIGHTS RESERVED. Go Retro…
  • 10.
    10 © 2016CA. ALL RIGHTS RESERVED. Learn more on DevOps & Continuous Delivery DevOps: "The Phoenix Project" by Kim, Behr & Spafford "Continuous Delivery" by Humble and Farley ‘We don’t think ourselves into a new way of acting, we act ourselves into a new way of thinking’
  • 11.
    Director Quality &Continuous-X Darren.Byrne@hpe.com Darren Byrne https://ie.linkedin.com/in/darren-byrne-ab341b1
  • 12.
    12 © 2016CA. ALL RIGHTS RESERVED. Backup
  • 13.
    13 © 2016CA. ALL RIGHTS RESERVED. Developer 1 Decide on a Repo to work on 2 Clone the Repo 3 Create the branch 5 Create Pull Request Can be done ‘New’ Code Can be done for Refactoring 4 Code & Deployment Script Master Branch Check In Webhooks Playbooks Unit Tests + Plugins Repo Level Integration Testing Build If all tests pass + Plugins Docker Registry Playbooks ITG ITG PerformanceVersion Control Staging BEST 3rd Party + PRODUCTION + Playbooks Smoke Test Version Control Pre-Merge Infra

Editor's Notes

  • #6 Mindset Take it in small steps Try to start by getting everyone on a level playing field Adopt CDP yourself first – when implementing your CDP do it in a CD fashion aiming for zero down time of the CI infrastructure. Try to provide services instead of solutions – Get the dev teams buy in and let them develop/direct the solution to suit them Aim for repeatable results i.e. every time you start service X you get the same thing Infrastructure Invest in your infrastructure (Make sure it suits your needs) Be prepared to scale up – Use dynamic provisioning (VM’s or containers or both) In both processing and storage Think about artifact management
  • #8 Everyone on a team needs to live TDD. It is more than a practice, it is a mindset. Tests and code get written hand in hand, no handovers to QA. If you can’t test it, re-write it. Refactor. Refactor. Refactor. Understand the what, how and why of your tests. If you don’t know these, you will fail. Good TDD helps expose these during development. Test what is appropriate and sensible. Quality over quantity. Brittle tests waste time. Test early, test often. Need to be hitting that test button as often as possible. Automation is a must. Tests need to be quick and encapsulated. Start at the unit level and work up. There are no silver bullets, but the more you test, the better the likelihood you catch something.
  • #11 “Execution: the Discipline of Getting things done” by Cassidy and Charan.