"improve the process by taking control" with amy phillips

Post on 10-May-2015

420 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

View webinar: http://www.eurostarconferences.com/community/member/webinar-archive/webinar-88-improve-the-process-by-taking-control Testing is one of the few overarching aspects of software delivery. Done well it is almost invisible. Yet in reality almost all aspects of a successful release require test input. Despite this testers often give developers freedom to select automation test strategies and are happy to let release managers co-ordinate releases, while reducing their role to nit-picking software. This session will examine how focusing on testing enabled Songkick to overhaul their entire build and release pipeline, and move from safe, controlled releases to continuous deployment. Contrary to common belief this approach could only succeed by drastically improving testing. The unique skills and knowledge that a tester holds is exactly what is needed to avoid testing gaps, prevent test duplication and most of all educate the development team about working with risk. Whatever your development approach this session will help you identify and explore ways in which your testing skills can, and should, be used to drive radical process improvements.

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