agile case studies and lessons learned

25
Agile: Case Studies and Lessons Learned Jez Humble, ThoughtWorks Studios @jezhumble #continuousdelivery Agile Tokyo, 20 July 2011

Upload: jez-humble

Post on 10-May-2015

3.547 views

Category:

Technology


4 download

DESCRIPTION

Presentation on agile delivered at Agile Tokyo focussing on success stories with agile on big projects, and lessons learned including the importance of building quality and innovation into your process at all levels.

TRANSCRIPT

Page 1: Agile Case Studies and Lessons Learned

Agile: Case Studies and Lessons Learned

Jez Humble, ThoughtWorks Studios@jezhumble #continuousdeliveryAgile Tokyo, 20 July 2011

Page 2: Agile Case Studies and Lessons Learned

IT environment is ever more complex

Time-to-market is too long

Competitors are moving ever faster

IT costs are being squeezed

what’s the problem?

Page 3: Agile Case Studies and Lessons Learned

what if...

...you could get valuable software released faster, with higher quality, and reduced risk?

Page 4: Agile Case Studies and Lessons Learned

agile manifesto

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software

Page 5: Agile Case Studies and Lessons Learned

web 2.0

http://code.flickr.com/

Page 6: Agile Case Studies and Lessons Learned

Previous attempt to create a new platform had failed

UK’s most popular newspaper website - 700 pages per second, 30% growth per year

Multi-year program to replace legacy content management systems

Interactive site with dynamic, multimedia content and social networking

Page 7: Agile Case Studies and Lessons Learned

Lessons from first section applied to next phases

Started with 2-week inception phase focusing on travel section

Travel section went live after 8 months - 10x increase in pages viewed per visitor

Each of subsequent 22 releases completed on time and with minimal disruption

Page 8: Agile Case Studies and Lessons Learned

customer feedback

“at 70% of the way through the project we were able to start adding to the project outside of planned activities. A multi-million pound project running on time and absorbing growth in scope - remarkable.”

Tom Turcan - General Manager, Digital

Page 9: Agile Case Studies and Lessons Learned

Scaling team from 50 to 200 people, distributed across UK and 2 sites in India

UK’s leading independent online train ticket retailer. 100k transactions per day. 8.4m users.

Multi-year program to replace huge legacy platform across multiple channels

Roll-out had to be incremental, keeping key customers and partners happy

Page 10: Agile Case Studies and Lessons Learned

Iterative delivery: 6 week release cycles

Started with rapid prototype to create roadmap

Used ThoughtWorks Studios agile ALM solution - Mingle, Go, Twist

Extensive use of build, test and deployment automation and virtualization

Page 11: Agile Case Studies and Lessons Learned

customer feedback

“We undertook a complex, technically challenging and business critical program of work with ThoughtWorks. We trusted them with the success of our future business and they delivered.”

David Jack – CIO

Page 12: Agile Case Studies and Lessons Learned

ThoughtWorks clients

Page 13: Agile Case Studies and Lessons Learned

agile is mainstream

“In this year’s Forrester/Dr. Dobb’s Global Developer Technographics® Survey, 37% of developers tell us that they use Agile development as their primary development process, up six points from last year’s survey”

Jeffrey Hammond, “Five Ways To Streamline Release Management”, Forrester

Page 14: Agile Case Studies and Lessons Learned

internal barriers stall change

“The main obstacles to improved business responsiveness are slow decision-making, conflicting departmental goals and priorities, risk-averse cultures and silo-based information.”

Economist Intelligence Unit: “Organisational agility:How business can survive and thrive in turbulent times”

Page 15: Agile Case Studies and Lessons Learned

agile triangle

Jim Highsmith: Agile Project Management

Page 16: Agile Case Studies and Lessons Learned

do less

Far more than 50% of functionality in software is rarely or never used. These aren’t just marginally valued features; many are no-value features.

The Standish Group, reported in the IEEE conference 2002

Page 17: Agile Case Studies and Lessons Learned

innovateYou can't just

ask customers what they want and then try to

give that to them.

By the time you get it built, they'll want

something new.Steve Jobs

Page 18: Agile Case Studies and Lessons Learned

scientific method

create hypothesis

deliver minimumviable product

get feedback

(repeat)

Customerdevelopent

Agile productdevelopment

Eric Ries, “The Lean Startup” http://bit.ly/8ZoX5F

Page 19: Agile Case Studies and Lessons Learned

software always production ready

releases tied to business needs, not operational constraints

continuous delivery

Customer

Delivery teamConstant flow of new features into production

Page 20: Agile Case Studies and Lessons Learned

Automation: build, deployment, testing, release, infrastructure, databases

Patterns and practices: continuous integration, config management, deployment pipeline

Collaboration: developers, testers, operations (devops) work together throughout

continuous delivery

Page 21: Agile Case Studies and Lessons Learned

build quality in“Cease dependence on mass inspection to achieve quality. Improve the process and build quality into the product in the first place”

W. Edwards Deming

Page 22: Agile Case Studies and Lessons Learned

different kinds of testing

Functional acceptance tests

ShowcasesUsability testing

Exploratory testing

Unit testsIntegration tests

System tests

Non-functional acceptance tests

(performance, scaling, ...)

Business facing

Technology facing

Critiq

ue

pro

ject

Su

pp

ort

pro

gra

mm

ing

AUTOMATED

AUTOMATED

MANUAL

MANUAL / AUTOMATED

Diagram invented by Brian Marick

Page 23: Agile Case Studies and Lessons Learned

value your people

“Human beings have an innate inner drive to be autonomous, self-determined, and connected to one another. And when that drive is liberated, people achieve more and live richer lives”

Dan Pink, Drive

Page 24: Agile Case Studies and Lessons Learned

Create autonomous, cross-functional product teams

Create feedback loops

Continuous Improvement: the retrospective is the key agile process

enabling agile