Web operations

28
Web Operations It’s not (all) about shipping version 1 GDS 20th March 2012 gareth rushgrove | morethanseven.net www.flickr.com/photos/dawvon/6064698091

description

a short presentation given to the new UK Government Digital Service to introduce web operations as a discipline.

Transcript of Web operations

Page 1: Web operations

Web OperationsIt’s not (all) about shipping version 1

GDS 20th March 2012

gareth rushgrove | morethanseven.net www.flickr.com/photos/dawvon/6064698091

Page 2: Web operations

A problem

Page 3: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

A typical project somewhere

briefcase designer lead developer developer tester release!

Page 4: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

A project plan

briefcase

designer

lead developer

developer

tester

release!

Page 5: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Waterfall project management

Page 6: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Agile project management

briefcase

designer developer

Page 7: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

But what about after launch?

operations

Maintain existing projects

briefcase

designer developer

Move on to new projects

Page 8: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Misaligned incentives

operations

“Keep things stable”

briefcase

designer developer

“Build things quickly”

Page 9: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Fight!

Page 10: Web operations

A solution

Page 11: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

No more silos

operations

“Keep things stable”

briefcase

designer developer

“Build things quickly”

Page 12: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Shared goals

operations

briefcase

designer developer

“Build things that are easy to keep stable”

Page 13: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Cross functional teams

DatabasesDatabases

HTML/CSS

Ruby

Javascript

User experience

Accessibility

Scala

Databases

Rails

Visual designPerformance

Security

Monitoring

Deployment

Config management

Page 14: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Doesn’t mean everyone does everything

HTML/CSS

Ruby

Javascript

User experience

Accessibility

Scala

Databases

Rails

Visual designPerformance

DatabasesDatabases

Security

Monitoring

Deployment

Config management

Page 15: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Doesn’t mean everyone does everything

HTML/CSS

Ruby

Javascript

User experience

Accessibility

Scala

Databases

Rails

Visual designPerformance

DatabasesDatabases

Security

Monitoring

Deployment

Config management

Page 16: Web operations

gareth rushgrove | morethanseven.net

Just like

John Alspaw and Paul Hammond, Velocity 2009

Page 17: Web operations

What to Expect

Page 18: Web operations

- Monitoring everything- Testing production- Building infrastructure (in code)- Providing tools for deploying and managing services

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

What we’ll be doing

Page 19: Web operations

gareth rushgrove | morethanseven.net

Monitoring tools

Page 20: Web operations

gareth rushgrove | morethanseven.net

Graph everything

Page 21: Web operations

Dashboards

gareth rushgrove | morethanseven.net

Page 22: Web operations

Scenario: check that calendars works correctly Given I am testing "calendars" Then I should be able to visit: | Path | | /when-do-the-clocks-change | | /bank-holidays |

gareth rushgrove | morethanseven.net

Human readable infrastructure tests

Page 23: Web operations

Scenario: check we don't get results for cheese Given I am testing "search" When I search for "cheese" Then I should receive no results

gareth rushgrove | morethanseven.net

A test specifically for Mat

Page 24: Web operations

http://www.flickr.com/photos/iancarroll/5027441664gareth rushgrove | morethanseven.net

Infrastructure management...

Page 25: Web operations

gareth rushgrove | morethanseven.net

...in code

service { apache2: ensure => running enable => true,}

Page 26: Web operations

gareth rushgrove | morethanseven.net

Self service deploys

Page 27: Web operations

From the start think about how

we will run what we build

Page 28: Web operations

Questions?

gareth rushgrove | morethanseven.net http://flickr.com/photos/psd/102332391/