SlideShare a Scribd company logo
Scaling
Continuous Delivery
Tomas Riha
Tomas Riha
Architect @ VGT/WirelessCar
Passionate about creativity, change and improvement
Horrible at following instructions and performing repetitive tasks
MAJOR Project Liability
mail: triha74@gmail.com
twitter: @TomasRihaSE
blog: continuous-delivery-and-more.blogspot.com
slides: www.slideshare.net/TomasRiha
Three Years ago
New Telematics Delivery Platform
Multiple Stakeholders
Continuous Regression Testing
How hard can it be?
Regression Test
Unit Testing
Component Testing
System Testing
Rollback/Compatibility Testing
Failover Testing
Performance Testing
At first it was super easy!
Small team of just product owner architect and scrum master.
Huge productivity, natural test driven development.
Fast return on investment
All by the book.... we were doing
Continuous Delivery!
Then we tried to scale it...
... and we failed in every possible way.
We lost our test driven development
We lost the individual responsibility
We more or less became a automated waterfall unable to delivery daily
We lost our ability to Continuously Improve the process
Three components of
Continuous Delivery
Process & Implementation
Definition of the Software Delivery process and its lead time optimization
Product Integrity
The Architecture & Test Strategy to optimize product integrity and lead time.
People & Organization
Behavioural change to the individuals and the organization needed to optimize
lead time and increase product integrity.
Process & Implementation
“Dedicated test servers”
First Continuous Delivery implementation relied on standard corporate test
environment with one system test server, one integration test server and one
pre prod server per production delivery
Only one commit tested at the time.
Build Release Deploy Test
DB
Test
Server
Process & Implementation
“Single threaded process”
Stacking jobs became a problem at 5 code committers, almost killed us at 20
Feedback time == Stack Depth * Pipe Exec Time
Variable feedback time results in less responsible developers
We were somewhat helped by component based architecture
Process & Implementation
“First effort to scale”
Forced to use our internal Operations as infrastructure provider, no cloud and
very rudimentary virtualization
Built a Server Pool based on Jenkins slaves and “sticky pipes”
Primitive but multi threaded pipes
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Process & Implementation
“Crowded Environment”
Visibility was bad due to hundreds of jobs on same build system.
Teams blocking each other due to still insufficient server resources.
Traceability hard due to all server clutter.
Changes to one teams Test Environment affected the other teams.
Overall performance was horrible at peak with Jenkins totally dieing
Process & Implementation
“Continuous Delivery of Continuous Delivery”
Live what you teach!
Our ability to Continuously Improve was seriously slowed by lack of
Continuous Delivery
Deployment Scripts didn't have test automation.
No test environment for Continuous Delivery Process
Build pipes where manually maintained.
Jenkins servers where manually maintained.
Process & Implementation
“Autonomous Environments for Autonomous Teams”
Started to do Continuous Delivery of Continuous Delivery
Automated provisioning of Continuous Delivery Environment
Created template based pipeline generator
Built Autonomous Continuous Delivery environments for each team
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Process & Implementation
“Portability is Scalability”
Portability in the Runtime Environments
Dev
Test
Load
Test
UAT
PROD
INT
Test
Complexity
Scale
Process & Implementation
“Portability is Scalability”
If the Continuous Delivery process can run without a Build Server then it
can scale to X number of build servers
By ensuring that anything above the portability line can run local or remote to
the orchestration we ensure portability
Orchestration
ProvisionBuild Deploy Test Release
Test EnvironmentSCM
Artifact
Repo
Portability Line
Process & Implementation
“Portability is Scalability”
All environments provisioned and deployed in the same way
Orchestration
ProvisionBuild Deploy Test Commit
Orchestration
ProvisionBuild Deploy Test Release
Orchestration
Provision Deploy Test Accept
Orchestration
Provision Deploy Test
Local Dev Continuous Delivery Pipe
UAT Prod
Process & Implementation
“Portability is Scalability”
Dev Test
Load
Test
UAT
INT
Test
Provisioning Interface
Vagrant Impl Cloud Provider Impl PDF Document Impl
Topology
Spec Env Spec
Legacy
PROD
With the help of Cloud Technology and Vagrant we manage to create test
and dev environments with the same complexity as our production
environments.
Process & Implementation
“Portability is Scalability”
To make the Continuous Delivery Process portable we also need to move all
reporting and monitoring out of the test servers and the build servers
Orchestration
ProvisionBuild Deploy Test Release
Test EnvironmentSCM
Artifact
Repo
Logging & Metrics Services
Build Data Repository
Process & Implementation
“Portability is Scalability”
Orchestration Worker
Log, Metrics, Build
Data Repositories
WorkerWorker
Build Env
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Team Environment Pre Cloud
One Server Per Pipe
Shared Database for all pipes
Team Environment in Cloud
One Environment Per Pipe
Including Load Balance, App Servers & DB
Separating Data from Process Implementation improves the traceability increases dramatically.
Portability in Test Environments increases Quality and Scalability by removing bottlenecks in
shared infrastructure.
Worker
WorkerWorker
Test Env
Worker
Worker
Worker
WorkerWorker
Test Env
Worker
Test EnvTest Env
Process & Implementation
“Provisioning, Install and Dependency Management”
If one or more environments is provisioned manually it becomes a
bottleneck
Application artifacts need dependency management to infrastructure.
Infrastructure has to be provisioned and installed with the application.
Databases have to be upgraded and migrated as part of the automated
process.
An automated process doesn't pause for DBAs or SysAdmins to do manual
work.
People & Organization
“The Tools Team”
Initially we did development of the Continuous Delivery process as
skunkworkz.
Quickly realized this was a bottleneck.
Added a CM to our team with disastrous result.
Finally created a Tools Team.
People & Organization
“The Tools Team is a Bottleneck”
Tools Team a huge bottleneck, simplest issues took ages to fix.
Managed the Continuous Delivery process manually.
Only ones that understood the process.
Became responsible for every teams ability to interface with the process.
Only had time to do reactive maintenance.
Short on resources.
Became yet another IT department.
People & Organization
“Build Police, please dont!”
Only Tools Team and few others understood the process.
Tried to help the few others by adding a rotational “Build Police” Role, as bad
idea as it sounds.
People & Organization
“The Tools Team matures”
Continuous Delivery as a Service
Tools Team responsible for the process implementation, its interfaces and
the infrastructure it runs on.
The Development Teams responsible for integrating with these interfaces,
configuring the pipe generator and maintaining green state of pipes.
Tools Team supports and helps if there are bugs in the mechanisms.
Tools Team consists of a core team of Developers, Testers and Operations
specialists but is extended with part time resources from Development
Teams.
People & Organization
“Lack of Consensus”
Disagreements on shared responsibility for the release.
Disagreements on what test automation is and how it should be used.
Disagreement on who implements tests and how.
A Continuous Delivery Engine without the consensus of the people that use
it is just an overpriced CI System.
Product Integrity
“Build Quality In”
SYSTEM
GUI
Product Integrity
“Build Quality In”
Internal
Service
GUI
Internal
Service
Internal
Service
Service API
Product Integrity
“Build Quality In”
Internal
Service
Internal
Service
Internal
Service
Each Service Tested as Black Box in isolation
and with high detail level
Product Integrity
“Build Quality In”
GUI
Service API Mock Impl
GUI Test are much faster and robust if they test the GUI in isolation.
High detail level.
Product Integrity
“Build Quality In”
Internal
Service
GUI
Internal
Service
Internal
Service
Service API
Verifying Use Case
acceptance criterias.
Low level of detail
Product Integrity
“Build Quality In” Optimizes Lead Time
Build Release Deploy Test
Build Release Deploy Test
Build Release Deploy Test
Build Release Deploy Test
Build Release Deploy Test
Assemble Release Deploy Test
Component Pipe
1000s of tests run in parallel testing
System Pipe
10s Use Case Requirements Verified
Product Integrity
“Build Quality In”
An Architecture & Test Strategy that goes hand in hand increases product
integrity and optimizes the lead time and allows the Continuous Delivery
process to scale
People & Organization
“Empower the Team!”
Increase Team responsibility.
Team is responsible for everything within the Continuous Delivery process
Analyzing Requirements
Defining Requirement Verification
Automating Requirement Verification
Implementing the System
Shipping the System
Supporting the System
Create Team consensus on what its responsibility and delivery is.
People & Organization
“Empower the Team!”
To help empower teams we have
Autonomous Team Environments where teams are responsible for their own
Continuous Delivery increased the teams understanding of the process.
Teams that needed extra help sent one or more individuals to work part time
on Tools Team.
Architecture & Test Strategy that works well with Continuous Delivery
Cross functional communities created to help increase consensus on Test
Driven Development, Continuous Delivery and Architecture.
People & Organization
“Test Driven Development Community”
Developers need to take more responsibility.
Code has to work all the time.
Test Driven Development requires developers to participate in specification
of requirement verifications.
Test Automation is Code, Developers need to code much more tests.
Continuous Regression Testing means Developers get instant feedback and
have to act on it.
People & Organization
“Test Driven Development Community”
Test Profession changes.
Two main type of Test activities Test Automation and Exploratory Testing.
Test Automation is Code.
Let developers test.
Test Driven Development is Proactive.
Exploratory testing is NOT manual regression testing.
People & Organization
“Continuous Delivery Community”
Agreement on Practices of Continuous Delivery
Agreement on Practices of Provisioning & Deployment
Competence Development
Infrastructure as Code
Testing Infrastructure as Code
Operations Specialists need to work with Developer tools and languages
People & Organization
“Organizational Support”
Continuous Delivery is organizational change.
Scaling Continuous Delivery is as much creating a scalable agile
organization as it is creating a scalable implementation.
Organization has to fully support Continuous Delivery through re-organization.
Organization has to fully support and invest in infrastructure, architecture,
automation, process and test.
Organization needs to start measuring key values, such as cycle time, early.
Summary
Process & Implementation
Portability is Scalability.
Product Integrity
The Architecture & Test Strategy go hand in hand.
People & Organization
Empowered Teams and Consensus.
Thats it!
Feedback & Any questions you forgot to ask?
http://continuous-delivery-and-more.blogspot.se
@TomasRihaSE
or by
the Coffee stand!
And the slides are at
http://www.slideshare.net/TomasRiha

More Related Content

What's hot

Tech Mahindra ADOPT©: Accelerate DevOps Transformation
Tech Mahindra ADOPT©: Accelerate DevOps TransformationTech Mahindra ADOPT©: Accelerate DevOps Transformation
Tech Mahindra ADOPT©: Accelerate DevOps Transformation
CA Technologies
 
Bn1006 demo ppt devops
Bn1006 demo ppt devopsBn1006 demo ppt devops
Bn1006 demo ppt devops
conline training
 
DevOps for beginners
DevOps for beginnersDevOps for beginners
DevOps for beginners
Pradeep Patel, PMP®
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps Introduction
Robert Sell
 
XebiaLabs Enterprise DevOps
XebiaLabs Enterprise DevOpsXebiaLabs Enterprise DevOps
XebiaLabs Enterprise DevOps
Bob Sokol
 
DevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation SlidesDevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation Slides
SlideTeam
 
Deployment Strategies Powerpoint Presentation Slides
Deployment Strategies Powerpoint Presentation SlidesDeployment Strategies Powerpoint Presentation Slides
Deployment Strategies Powerpoint Presentation Slides
SlideTeam
 
Building a DevOps Team that isn't Evil
Building a DevOps Team that isn't EvilBuilding a DevOps Team that isn't Evil
Building a DevOps Team that isn't EvilIBM UrbanCode Products
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
OCTO Technology
 
DevOps Challenges and Best Practices
DevOps Challenges and Best PracticesDevOps Challenges and Best Practices
DevOps Challenges and Best Practices
Brian Chorba
 
Evolving Team Structure in DevOps
Evolving Team Structure in DevOpsEvolving Team Structure in DevOps
Evolving Team Structure in DevOps
Sherry Chang
 
Engineering DevOps to meet Business Goals
 Engineering DevOps to meet Business Goals Engineering DevOps to meet Business Goals
Engineering DevOps to meet Business Goals
Marc Hornbeek
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
Ganesh Samarthyam
 
The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017
Micro Focus
 
What is DevOps? - ITSM Academy Webinar
What is DevOps?  - ITSM Academy Webinar What is DevOps?  - ITSM Academy Webinar
What is DevOps? - ITSM Academy Webinar
ITSM Academy, Inc.
 
DevOps101 (version 2)
DevOps101 (version 2)DevOps101 (version 2)
DevOps101 (version 2)
Sanjeev Sharma
 
DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)
Brad Appleton
 
DevOps Transformation - Another View
DevOps Transformation - Another ViewDevOps Transformation - Another View
DevOps Transformation - Another View
Agron Fazliu
 
DevOps 2020: How Enterprise Strategy has Matured
DevOps 2020: How Enterprise Strategy has MaturedDevOps 2020: How Enterprise Strategy has Matured
DevOps 2020: How Enterprise Strategy has Matured
Enterprise Management Associates
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
Sagar Mody
 

What's hot (20)

Tech Mahindra ADOPT©: Accelerate DevOps Transformation
Tech Mahindra ADOPT©: Accelerate DevOps TransformationTech Mahindra ADOPT©: Accelerate DevOps Transformation
Tech Mahindra ADOPT©: Accelerate DevOps Transformation
 
Bn1006 demo ppt devops
Bn1006 demo ppt devopsBn1006 demo ppt devops
Bn1006 demo ppt devops
 
DevOps for beginners
DevOps for beginnersDevOps for beginners
DevOps for beginners
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps Introduction
 
XebiaLabs Enterprise DevOps
XebiaLabs Enterprise DevOpsXebiaLabs Enterprise DevOps
XebiaLabs Enterprise DevOps
 
DevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation SlidesDevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation Slides
 
Deployment Strategies Powerpoint Presentation Slides
Deployment Strategies Powerpoint Presentation SlidesDeployment Strategies Powerpoint Presentation Slides
Deployment Strategies Powerpoint Presentation Slides
 
Building a DevOps Team that isn't Evil
Building a DevOps Team that isn't EvilBuilding a DevOps Team that isn't Evil
Building a DevOps Team that isn't Evil
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
DevOps Challenges and Best Practices
DevOps Challenges and Best PracticesDevOps Challenges and Best Practices
DevOps Challenges and Best Practices
 
Evolving Team Structure in DevOps
Evolving Team Structure in DevOpsEvolving Team Structure in DevOps
Evolving Team Structure in DevOps
 
Engineering DevOps to meet Business Goals
 Engineering DevOps to meet Business Goals Engineering DevOps to meet Business Goals
Engineering DevOps to meet Business Goals
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
 
The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017
 
What is DevOps? - ITSM Academy Webinar
What is DevOps?  - ITSM Academy Webinar What is DevOps?  - ITSM Academy Webinar
What is DevOps? - ITSM Academy Webinar
 
DevOps101 (version 2)
DevOps101 (version 2)DevOps101 (version 2)
DevOps101 (version 2)
 
DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)
 
DevOps Transformation - Another View
DevOps Transformation - Another ViewDevOps Transformation - Another View
DevOps Transformation - Another View
 
DevOps 2020: How Enterprise Strategy has Matured
DevOps 2020: How Enterprise Strategy has MaturedDevOps 2020: How Enterprise Strategy has Matured
DevOps 2020: How Enterprise Strategy has Matured
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 

Similar to Scaling continuous delivery @ GeeCon 2014

Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
Mike Brittain
 
Continuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment at Etsy — TimesOpen NYCContinuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment at Etsy — TimesOpen NYC
Mike Brittain
 
Functional Continuous Integration with Selenium and Hudson
Functional Continuous Integration with Selenium and HudsonFunctional Continuous Integration with Selenium and Hudson
Functional Continuous Integration with Selenium and Hudson
David Jellison
 
Continuous delivery @ hi q
Continuous delivery @ hi qContinuous delivery @ hi q
Continuous delivery @ hi qTomas Riha
 
Continuous Delivery Testing @HiQ
Continuous Delivery Testing @HiQContinuous Delivery Testing @HiQ
Continuous Delivery Testing @HiQ
Tomas Riha
 
Continuous delivery its not about the technology, its about the people. @pipe...
Continuous delivery its not about the technology, its about the people. @pipe...Continuous delivery its not about the technology, its about the people. @pipe...
Continuous delivery its not about the technology, its about the people. @pipe...
Tomas Riha
 
Testing Microservices
Testing MicroservicesTesting Microservices
Testing Microservices
Nathan Jones
 
From Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.auFrom Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.au
evanbottcher
 
Continuous delivery its not about the technology, its about the people. @sats...
Continuous delivery its not about the technology, its about the people. @sats...Continuous delivery its not about the technology, its about the people. @sats...
Continuous delivery its not about the technology, its about the people. @sats...
Tomas Riha
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Skytap Cloud
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow RecentFuture Simmons
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TFuture Simmons
 
AfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionAfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing Introduction
Peter Marshall
 
Continuous Delivery in a Complex S.O.A.
Continuous Delivery in a Complex S.O.A.Continuous Delivery in a Complex S.O.A.
Continuous Delivery in a Complex S.O.A.
Richard Lennox
 
Cloud continuous integration- A distributed approach using distinct services
Cloud continuous integration- A distributed approach using distinct servicesCloud continuous integration- A distributed approach using distinct services
Cloud continuous integration- A distributed approach using distinct services
André Agostinho
 
Continuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hallContinuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hall
Peter Marshall
 
Soasta | CloudBees webinar 11/12/2015
Soasta | CloudBees webinar 11/12/2015Soasta | CloudBees webinar 11/12/2015
Soasta | CloudBees webinar 11/12/2015
SOASTA
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
Sunil Dalal
 
Kevin Slade - CV
Kevin Slade - CVKevin Slade - CV
Kevin Slade - CVKevin Slade
 
Karim Fanadka
Karim FanadkaKarim Fanadka
Karim Fanadka
CodeFest
 

Similar to Scaling continuous delivery @ GeeCon 2014 (20)

Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
 
Continuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment at Etsy — TimesOpen NYCContinuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment at Etsy — TimesOpen NYC
 
Functional Continuous Integration with Selenium and Hudson
Functional Continuous Integration with Selenium and HudsonFunctional Continuous Integration with Selenium and Hudson
Functional Continuous Integration with Selenium and Hudson
 
Continuous delivery @ hi q
Continuous delivery @ hi qContinuous delivery @ hi q
Continuous delivery @ hi q
 
Continuous Delivery Testing @HiQ
Continuous Delivery Testing @HiQContinuous Delivery Testing @HiQ
Continuous Delivery Testing @HiQ
 
Continuous delivery its not about the technology, its about the people. @pipe...
Continuous delivery its not about the technology, its about the people. @pipe...Continuous delivery its not about the technology, its about the people. @pipe...
Continuous delivery its not about the technology, its about the people. @pipe...
 
Testing Microservices
Testing MicroservicesTesting Microservices
Testing Microservices
 
From Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.auFrom Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.au
 
Continuous delivery its not about the technology, its about the people. @sats...
Continuous delivery its not about the technology, its about the people. @sats...Continuous delivery its not about the technology, its about the people. @sats...
Continuous delivery its not about the technology, its about the people. @sats...
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow Recent
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N T
 
AfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionAfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing Introduction
 
Continuous Delivery in a Complex S.O.A.
Continuous Delivery in a Complex S.O.A.Continuous Delivery in a Complex S.O.A.
Continuous Delivery in a Complex S.O.A.
 
Cloud continuous integration- A distributed approach using distinct services
Cloud continuous integration- A distributed approach using distinct servicesCloud continuous integration- A distributed approach using distinct services
Cloud continuous integration- A distributed approach using distinct services
 
Continuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hallContinuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hall
 
Soasta | CloudBees webinar 11/12/2015
Soasta | CloudBees webinar 11/12/2015Soasta | CloudBees webinar 11/12/2015
Soasta | CloudBees webinar 11/12/2015
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Kevin Slade - CV
Kevin Slade - CVKevin Slade - CV
Kevin Slade - CV
 
Karim Fanadka
Karim FanadkaKarim Fanadka
Karim Fanadka
 

More from Tomas Riha

Driving change
Driving changeDriving change
Driving change
Tomas Riha
 
DevOps - Its just Agile done right
DevOps - Its just Agile done rightDevOps - Its just Agile done right
DevOps - Its just Agile done right
Tomas Riha
 
Test Automation
Test AutomationTest Automation
Test Automation
Tomas Riha
 
Show me the money!
Show me the money!Show me the money!
Show me the money!
Tomas Riha
 
Show me the money! - Draft
Show me the money! - DraftShow me the money! - Draft
Show me the money! - Draft
Tomas Riha
 
Dev ops
Dev opsDev ops
Dev ops
Tomas Riha
 
Into the cloud
Into the cloudInto the cloud
Into the cloud
Tomas Riha
 
Continuous delivery @ Diabol
Continuous delivery @ DiabolContinuous delivery @ Diabol
Continuous delivery @ Diabol
Tomas Riha
 
Continuous delivery its not about the technology, its about the people.
Continuous delivery its not about the technology, its about the people.Continuous delivery its not about the technology, its about the people.
Continuous delivery its not about the technology, its about the people.Tomas Riha
 
Continuous delivery @åf consult
Continuous delivery @åf consultContinuous delivery @åf consult
Continuous delivery @åf consultTomas Riha
 

More from Tomas Riha (10)

Driving change
Driving changeDriving change
Driving change
 
DevOps - Its just Agile done right
DevOps - Its just Agile done rightDevOps - Its just Agile done right
DevOps - Its just Agile done right
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Show me the money!
Show me the money!Show me the money!
Show me the money!
 
Show me the money! - Draft
Show me the money! - DraftShow me the money! - Draft
Show me the money! - Draft
 
Dev ops
Dev opsDev ops
Dev ops
 
Into the cloud
Into the cloudInto the cloud
Into the cloud
 
Continuous delivery @ Diabol
Continuous delivery @ DiabolContinuous delivery @ Diabol
Continuous delivery @ Diabol
 
Continuous delivery its not about the technology, its about the people.
Continuous delivery its not about the technology, its about the people.Continuous delivery its not about the technology, its about the people.
Continuous delivery its not about the technology, its about the people.
 
Continuous delivery @åf consult
Continuous delivery @åf consultContinuous delivery @åf consult
Continuous delivery @åf consult
 

Recently uploaded

The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 

Recently uploaded (20)

The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 

Scaling continuous delivery @ GeeCon 2014

  • 2. Tomas Riha Architect @ VGT/WirelessCar Passionate about creativity, change and improvement Horrible at following instructions and performing repetitive tasks MAJOR Project Liability mail: triha74@gmail.com twitter: @TomasRihaSE blog: continuous-delivery-and-more.blogspot.com slides: www.slideshare.net/TomasRiha
  • 3. Three Years ago New Telematics Delivery Platform Multiple Stakeholders Continuous Regression Testing How hard can it be?
  • 4. Regression Test Unit Testing Component Testing System Testing Rollback/Compatibility Testing Failover Testing Performance Testing
  • 5. At first it was super easy! Small team of just product owner architect and scrum master. Huge productivity, natural test driven development. Fast return on investment All by the book.... we were doing Continuous Delivery!
  • 6. Then we tried to scale it... ... and we failed in every possible way. We lost our test driven development We lost the individual responsibility We more or less became a automated waterfall unable to delivery daily We lost our ability to Continuously Improve the process
  • 7. Three components of Continuous Delivery Process & Implementation Definition of the Software Delivery process and its lead time optimization Product Integrity The Architecture & Test Strategy to optimize product integrity and lead time. People & Organization Behavioural change to the individuals and the organization needed to optimize lead time and increase product integrity.
  • 8. Process & Implementation “Dedicated test servers” First Continuous Delivery implementation relied on standard corporate test environment with one system test server, one integration test server and one pre prod server per production delivery Only one commit tested at the time. Build Release Deploy Test DB Test Server
  • 9. Process & Implementation “Single threaded process” Stacking jobs became a problem at 5 code committers, almost killed us at 20 Feedback time == Stack Depth * Pipe Exec Time Variable feedback time results in less responsible developers We were somewhat helped by component based architecture
  • 10. Process & Implementation “First effort to scale” Forced to use our internal Operations as infrastructure provider, no cloud and very rudimentary virtualization Built a Server Pool based on Jenkins slaves and “sticky pipes” Primitive but multi threaded pipes Orchestration Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker
  • 11. Process & Implementation “Crowded Environment” Visibility was bad due to hundreds of jobs on same build system. Teams blocking each other due to still insufficient server resources. Traceability hard due to all server clutter. Changes to one teams Test Environment affected the other teams. Overall performance was horrible at peak with Jenkins totally dieing
  • 12. Process & Implementation “Continuous Delivery of Continuous Delivery” Live what you teach! Our ability to Continuously Improve was seriously slowed by lack of Continuous Delivery Deployment Scripts didn't have test automation. No test environment for Continuous Delivery Process Build pipes where manually maintained. Jenkins servers where manually maintained.
  • 13. Process & Implementation “Autonomous Environments for Autonomous Teams” Started to do Continuous Delivery of Continuous Delivery Automated provisioning of Continuous Delivery Environment Created template based pipeline generator Built Autonomous Continuous Delivery environments for each team Orchestration Worker Worker Worker Worker Worker Worker Worker Worker Orchestration Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Orchestration Worker Worker Worker Worker Worker Worker Worker Worker Orchestration Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker
  • 14. Process & Implementation “Portability is Scalability” Portability in the Runtime Environments Dev Test Load Test UAT PROD INT Test Complexity Scale
  • 15. Process & Implementation “Portability is Scalability” If the Continuous Delivery process can run without a Build Server then it can scale to X number of build servers By ensuring that anything above the portability line can run local or remote to the orchestration we ensure portability Orchestration ProvisionBuild Deploy Test Release Test EnvironmentSCM Artifact Repo Portability Line
  • 16. Process & Implementation “Portability is Scalability” All environments provisioned and deployed in the same way Orchestration ProvisionBuild Deploy Test Commit Orchestration ProvisionBuild Deploy Test Release Orchestration Provision Deploy Test Accept Orchestration Provision Deploy Test Local Dev Continuous Delivery Pipe UAT Prod
  • 17. Process & Implementation “Portability is Scalability” Dev Test Load Test UAT INT Test Provisioning Interface Vagrant Impl Cloud Provider Impl PDF Document Impl Topology Spec Env Spec Legacy PROD With the help of Cloud Technology and Vagrant we manage to create test and dev environments with the same complexity as our production environments.
  • 18. Process & Implementation “Portability is Scalability” To make the Continuous Delivery Process portable we also need to move all reporting and monitoring out of the test servers and the build servers Orchestration ProvisionBuild Deploy Test Release Test EnvironmentSCM Artifact Repo Logging & Metrics Services Build Data Repository
  • 19. Process & Implementation “Portability is Scalability” Orchestration Worker Log, Metrics, Build Data Repositories WorkerWorker Build Env Orchestration Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Team Environment Pre Cloud One Server Per Pipe Shared Database for all pipes Team Environment in Cloud One Environment Per Pipe Including Load Balance, App Servers & DB Separating Data from Process Implementation improves the traceability increases dramatically. Portability in Test Environments increases Quality and Scalability by removing bottlenecks in shared infrastructure. Worker WorkerWorker Test Env Worker Worker Worker WorkerWorker Test Env Worker Test EnvTest Env
  • 20. Process & Implementation “Provisioning, Install and Dependency Management” If one or more environments is provisioned manually it becomes a bottleneck Application artifacts need dependency management to infrastructure. Infrastructure has to be provisioned and installed with the application. Databases have to be upgraded and migrated as part of the automated process. An automated process doesn't pause for DBAs or SysAdmins to do manual work.
  • 21. People & Organization “The Tools Team” Initially we did development of the Continuous Delivery process as skunkworkz. Quickly realized this was a bottleneck. Added a CM to our team with disastrous result. Finally created a Tools Team.
  • 22. People & Organization “The Tools Team is a Bottleneck” Tools Team a huge bottleneck, simplest issues took ages to fix. Managed the Continuous Delivery process manually. Only ones that understood the process. Became responsible for every teams ability to interface with the process. Only had time to do reactive maintenance. Short on resources. Became yet another IT department.
  • 23. People & Organization “Build Police, please dont!” Only Tools Team and few others understood the process. Tried to help the few others by adding a rotational “Build Police” Role, as bad idea as it sounds.
  • 24. People & Organization “The Tools Team matures” Continuous Delivery as a Service Tools Team responsible for the process implementation, its interfaces and the infrastructure it runs on. The Development Teams responsible for integrating with these interfaces, configuring the pipe generator and maintaining green state of pipes. Tools Team supports and helps if there are bugs in the mechanisms. Tools Team consists of a core team of Developers, Testers and Operations specialists but is extended with part time resources from Development Teams.
  • 25. People & Organization “Lack of Consensus” Disagreements on shared responsibility for the release. Disagreements on what test automation is and how it should be used. Disagreement on who implements tests and how. A Continuous Delivery Engine without the consensus of the people that use it is just an overpriced CI System.
  • 27. Product Integrity “Build Quality In” Internal Service GUI Internal Service Internal Service Service API
  • 28. Product Integrity “Build Quality In” Internal Service Internal Service Internal Service Each Service Tested as Black Box in isolation and with high detail level
  • 29. Product Integrity “Build Quality In” GUI Service API Mock Impl GUI Test are much faster and robust if they test the GUI in isolation. High detail level.
  • 30. Product Integrity “Build Quality In” Internal Service GUI Internal Service Internal Service Service API Verifying Use Case acceptance criterias. Low level of detail
  • 31. Product Integrity “Build Quality In” Optimizes Lead Time Build Release Deploy Test Build Release Deploy Test Build Release Deploy Test Build Release Deploy Test Build Release Deploy Test Assemble Release Deploy Test Component Pipe 1000s of tests run in parallel testing System Pipe 10s Use Case Requirements Verified
  • 32. Product Integrity “Build Quality In” An Architecture & Test Strategy that goes hand in hand increases product integrity and optimizes the lead time and allows the Continuous Delivery process to scale
  • 33. People & Organization “Empower the Team!” Increase Team responsibility. Team is responsible for everything within the Continuous Delivery process Analyzing Requirements Defining Requirement Verification Automating Requirement Verification Implementing the System Shipping the System Supporting the System Create Team consensus on what its responsibility and delivery is.
  • 34. People & Organization “Empower the Team!” To help empower teams we have Autonomous Team Environments where teams are responsible for their own Continuous Delivery increased the teams understanding of the process. Teams that needed extra help sent one or more individuals to work part time on Tools Team. Architecture & Test Strategy that works well with Continuous Delivery Cross functional communities created to help increase consensus on Test Driven Development, Continuous Delivery and Architecture.
  • 35. People & Organization “Test Driven Development Community” Developers need to take more responsibility. Code has to work all the time. Test Driven Development requires developers to participate in specification of requirement verifications. Test Automation is Code, Developers need to code much more tests. Continuous Regression Testing means Developers get instant feedback and have to act on it.
  • 36. People & Organization “Test Driven Development Community” Test Profession changes. Two main type of Test activities Test Automation and Exploratory Testing. Test Automation is Code. Let developers test. Test Driven Development is Proactive. Exploratory testing is NOT manual regression testing.
  • 37. People & Organization “Continuous Delivery Community” Agreement on Practices of Continuous Delivery Agreement on Practices of Provisioning & Deployment Competence Development Infrastructure as Code Testing Infrastructure as Code Operations Specialists need to work with Developer tools and languages
  • 38. People & Organization “Organizational Support” Continuous Delivery is organizational change. Scaling Continuous Delivery is as much creating a scalable agile organization as it is creating a scalable implementation. Organization has to fully support Continuous Delivery through re-organization. Organization has to fully support and invest in infrastructure, architecture, automation, process and test. Organization needs to start measuring key values, such as cycle time, early.
  • 39. Summary Process & Implementation Portability is Scalability. Product Integrity The Architecture & Test Strategy go hand in hand. People & Organization Empowered Teams and Consensus.
  • 40. Thats it! Feedback & Any questions you forgot to ask? http://continuous-delivery-and-more.blogspot.se @TomasRihaSE or by the Coffee stand! And the slides are at http://www.slideshare.net/TomasRiha