Continuous Delivery practices have increasingly become “table stakes” for effective software delivery since the publication of the book Continuous Delivery by Jez Humble and Dave Farley in 2010. The combination of sound technical practices and a scientific approach to testing and feature development has led to significant success with software delivery with organisations around the world.
However, in large organisations with many teams and many different suppliers, there are also many ideas about what Continuous Delivery is. This variety of approaches and assumptions can lead to conflicts around deployments, testing, releasing, and operations, resulting in a macro-level sub-optimal flow of change.
In this talk, Matthew Skelton will share some insights from his time spent as Engineering Lead at a large GOV.UK department during most of 2018. There he championed Continuous Delivery practices across 70+ teams and 7 locations, helping to raise standards for software operability, Developer Experience (DevEx), testing, deployments, and inter-team communications. He will share some practical techniques for getting Continuous Delivery working at scale.
Project Based Learning (A.I).pptx detail explanation
Continuous Delivery at scale - Matthew Skelton - NHS Digital agile CoP - March 2019
1. 1
Continuous Delivery at scale
in the public sector
Matthew Skelton, Conflux
@matthewpskelton
confluxdigital.net
NHS Digital Agile Community of Practice
Leeds, 27 March 2019
2. Continuous Delivery at scale
Context and challenges
“Continuous Delivery”
Things we did to help
Results so far
2
@matthewpskelton
18. Continuous Delivery needs...
18
Good engineering practices (TDD, ...)
Fast feedback from deployment pipelines
Re-aligned architecture
Team ownership of software & services
19. Continuous Delivery overview
19
Continuous Delivery with
Windows and .NET
Matthew Skelton & Chris O’Dell
O’Reilly, 2016
** Now a key text for MSc in
Software Engineering at UCL **
cdwithwindows.net
34. Engineering Assessments
34
Criteria taken from existing sources:
Spotify Team Health Check, DevOps for the Modern
Enterprise, Continuous Delivery, Accelerate, Team
Guide to Software Operability, Team Guide to Software
Testability
45. 45
Make space for learning/sharing
Promote good work
Help to develop skills in speaking
Lunchtime talks (food)
Interplay of working group + guild
@matthewpskelton
46. 46
Define the Platform
Service Level Expectations
Who owns what? What's missing?
Use DevEx to drive improvements
Thinnest Viable Platform
@matthewpskelton
47. 47
Address operability early on
Operational aspects are also features
Add operational checks into the
deployment pipeline
Team-first: RunBookTemplate.info
@matthewpskelton
48. 48
Good logging is foundational
Use a well-defined event space
Searchable EventIDs increase awareness
Enables collaboration between teams
Invest in logging infra (Saas/people/&c.)
@matthewpskelton
49. 49
Involve teams in improvements
Co-create the engineering standards
Look for organisational blockers
“No-blame” is paramount
SoftwareDeliveryAssessment.com
@matthewpskelton
50. Continuous Delivery at scale
50
Make space for learning/sharing
Define the Platform
Address operability early on
Good logging is foundational
Involve teams in improvements
@matthewpskelton
51. Further reading & information
51
TechTalksForBeginners.com
RunBookTemplate.info
SoftwareDeliveryAssessment.com
OperabilityBook.com
52. Team Topologies
52
Organizing business and
technology teams for fast flow
Matthew Skelton & Manuel Pais
Sept 2019, IT Revolution Press
teamtopologies.com