"improve the process by taking control" with amy phillips
Post on 10-May-2015
420 Views
Preview:
DESCRIPTION
TRANSCRIPT
Take Control of the ProcessAmy Phillips
Songkick.com
Don’t break anything critical
Avoid unnecessary delays
Clearly defined roles and responsibilities
Reliable build and release processes
Managing releases
What is your process?
Coding Ready to commit
Automated checks and build
Testing Deployed to Production
Why do we have this process?
Problem
Increase pre-
release checks
Release
Initiating process change
Have a vision
Define a single test strategy
Developers Testers
Unit Tests
Integration Tests
Manual Checks
Feature Tests
Regression Tests
Automated Checks
Define a single test strategy
Developers Testers
Unit Tests
Integration Tests Manual ChecksFeature Tests
Regression Tests
Automated Checks
Testing
Define a single test strategy
100 %Team Effort
CheckingTesting Machine Human
What is your process?
Coding Ready to commit
Automated checks and build
Testing Deployed to Production
Test at the right time
Coding Ready to commit
Automated checks and build
Testing Deployed to Production
Testing
Test at the right time
Coding Ready to commit
Automated checks and build
TestingChecks
Deployed to Production
Testing Testing
Releasing doesn’t have to mean launching
Automated regression checks
Database
User Interface
Unit
Inte
gra
tion
End
to E
nd
Regre
ssio
n
Unit
Make the checks fast◦ < 10 minutes to complete
Checks must run locally
Run tests in the most sensible order
Fast feedback
Never release if the build is red
Green builds must mean the tests have passed
Trust the test results
Performing the right tests at the right time
Automated build anddeploy process
Continuous Deployment
Code Build Check Release
The new process
CodeChecksTesting
Machine Checks Build
Machine Checks DeployHuman Test
Releases
Mar
-11
Apr-1
1
May
-11
Jun-
11
Jul-1
1
Aug-
11
Sep-
11
Oct-1
1
Nov-1
1
Dec-1
1
Jan-
12
Feb-
12
Mar
-12
Apr-1
2
May
-12
Jun-
12
Jul-1
2
Aug-
12
Sep-
12
Oct-1
2
Nov-1
2
Dec-1
20
20
40
60
80
100
120
140
Releases
It ended up being about more than just releases…
Everyone cares about testing
Fast and maintained automated checks
Bug fixes often take just minutes
What made it work Agree on an end goal
Stay risk focussed
Strong communication throughout the whole team
Use problems to drive positive change
Testers already have these skills
By managing the people and activities which make up the development process we can manage the risk level of a release.
Testing provides information to this process, which makes better-informed decisions possible.
top related