54
乔梁@百度.项目管理部 ——Cycle time is the key

Discovery delivery 中国软件技术大会2011

Embed Size (px)

DESCRIPTION

how to make the cycle time shorter

Citation preview

Page 1: Discovery delivery 中国软件技术大会2011

乔梁@百度.项目管理部

——Cycle time is the key

Page 2: Discovery delivery 中国软件技术大会2011

乔梁

百度项目管理部 ,高级架构师

InfoQ 敏捷社区, 特约编辑

《持续集成》专栏作者

中文站:www.continuousdelivery.info

CruiseControl的贡献者 持续集成与发布管理工具Go 的项目经理

2011年Jolt Excellence Award

Page 3: Discovery delivery 中国软件技术大会2011

Agenda

Delivery & Discovery Cycle

Structure Changes

Principle and Practice

Page 4: Discovery delivery 中国软件技术大会2011

Develop Release

Pray for customer

How long?

Page 5: Discovery delivery 中国软件技术大会2011

Organization Structure

Value Stream

Business Engineering Quality Assurance Operations

I got an idea!!!

Dev complete!!!

BUG!!! #@!$%#@

Script! Installation! Monitoring!

Page 6: Discovery delivery 中国软件技术大会2011

continuous integration

1

2 3

4

4’

5

6

Check-in Dance

Team work

Page 7: Discovery delivery 中国软件技术大会2011

Value Stream

Continuous Integration

Agile101

devops

Page 8: Discovery delivery 中国软件技术大会2011

Develop Release

Learn Iterate

Delivery

Discovery

How long?

Page 9: Discovery delivery 中国软件技术大会2011

http://code.flickr.com

code.flickr.com

Page 10: Discovery delivery 中国软件技术大会2011

How about others?

Page 11: Discovery delivery 中国软件技术大会2011

An Avatar-Based Social Network and 3D Virtual World

Page 12: Discovery delivery 中国软件技术大会2011
Page 13: Discovery delivery 中国软件技术大会2011
Page 14: Discovery delivery 中国软件技术大会2011

Develop Release

Learn Iterate

What is in the cycle?

Delivery

Discovery

Page 15: Discovery delivery 中国软件技术大会2011

Minimize total time through loop

Learn Faster Split Tests

Customer Interviews

Customer Development

Five Whys Root Cause

Analysis

Customer Advisory Board

Falsifiable Hypotheses

Product Owner

Accountability

Customer Archetypes

Cross-functional Teams

Semi-autonomous Teams

Smoke Tests

Measure Faster Split Tests

Clear Product Owner

Continuous Deployment

Usability Tests

Real-time Monitoring

Customer Liaison

Build Faster

Unit Tests

Usability Tests

Continuous Integration

Incremental Deployment

Free & Open-Source

Components

Cloud Computing

Cluster Immune System

Just-in-time Scalability

Refactoring

Developer Sandbox

Minimum Viable Product

Measure Faster

Funnel Analysis

Cohort Analysis

Net Promoter Score

Search Engine Marketing

Real-Time Alerting

Predictive Monitoring

From 《Lean Startup》, Eric Ries

Page 16: Discovery delivery 中国软件技术大会2011

constant flow of new features into production incremental release of small changes

Page 17: Discovery delivery 中国软件技术大会2011

Why

Page 18: Discovery delivery 中国软件技术大会2011

Build the right thing

Every business idea is

a hypothesis until you

get feedback.

Problem

Hypothesis

Idea #1 Idea #2

Idea #3

Page 19: Discovery delivery 中国软件技术大会2011

reliability & stability

Reduce risk of release

Page 20: Discovery delivery 中国软件技术大会2011

How

Page 21: Discovery delivery 中国软件技术大会2011

Continuous Delivery

always write production-ready code Everyone collaborate throughout lifecycle Faster feedback loops Lower-risk, more reliable releases

Page 22: Discovery delivery 中国软件技术大会2011

It might change the structure

Page 23: Discovery delivery 中国软件技术大会2011

Continuous Integration

Agile101

devops

Value Stream

Page 24: Discovery delivery 中国软件技术大会2011

service-oriented business model

products/services IaaS

Treat these service as products

Page 25: Discovery delivery 中国软件技术大会2011

service-oriented business model

products/services

service desk

IaaS

Page 26: Discovery delivery 中国软件技术大会2011

Therefore

Teams can measure cost and value delivered per product

Teams can rationally determine what to prioritize their

product backlog Teams can self-manage using the lean startup

methodology Architecture group responsible for regulating and

monitoring system-level attributes

Page 27: Discovery delivery 中国软件技术大会2011

Organizational change

Product Team

Architecture group

Operations

Business

Page 28: Discovery delivery 中国软件技术大会2011

Is it enough?

Page 29: Discovery delivery 中国软件技术大会2011

Is it enough? Maybe … …

Page 30: Discovery delivery 中国软件技术大会2011

Small batch

Page 31: Discovery delivery 中国软件技术大会2011

Single branch

Page 32: Discovery delivery 中国软件技术大会2011

Automation testing

Page 33: Discovery delivery 中国软件技术大会2011

Automation deployment

Page 34: Discovery delivery 中国软件技术大会2011

One-click release

Page 35: Discovery delivery 中国软件技术大会2011

Everything is code

Page 36: Discovery delivery 中国软件技术大会2011

Reality simulating

Page 37: Discovery delivery 中国软件技术大会2011

Pipeline monitoring

Page 38: Discovery delivery 中国软件技术大会2011

Stop the line

Page 39: Discovery delivery 中国软件技术大会2011

How about big features

Page 40: Discovery delivery 中国软件技术大会2011

Feature toggle

Page 41: Discovery delivery 中国软件技术大会2011

Branching by abstraction

Page 42: Discovery delivery 中国软件技术大会2011

How about “Deployment Time”

Page 43: Discovery delivery 中国软件技术大会2011

Canary release

Page 44: Discovery delivery 中国软件技术大会2011

Canary release

Page 45: Discovery delivery 中国软件技术大会2011

Blue-green deployment

Page 46: Discovery delivery 中国软件技术大会2011

Blue-green deployment

Page 47: Discovery delivery 中国软件技术大会2011

Database migration

Page 48: Discovery delivery 中国软件技术大会2011

Dark launching

Page 49: Discovery delivery 中国软件技术大会2011

It is not impossible, but it is difficult

Page 50: Discovery delivery 中国软件技术大会2011

What you can do

Automation

Automation

Automation

Practice

Practice

Practice

People

People

People

Page 51: Discovery delivery 中国软件技术大会2011

What would you get

Page 52: Discovery delivery 中国软件技术大会2011

What would you get

Page 53: Discovery delivery 中国软件技术大会2011

What would you get

Page 54: Discovery delivery 中国软件技术大会2011

微博: @乔梁QL 博客: http://blog.csdn.net/Tony1130 邮件: [email protected] 中文站:www.continuousdelivery.info