agilechina 2015 keynote: understand deeply
TRANSCRIPT
What Do I Mean? 我的意思是
Rote 死记硬背
Formulaic 公式化 By the Book
照书做
Copyright 2015, Stephen Vance Understand Deeply 3
Who Am I? 我是谁?
• Pre-‐Manifesto Agilist • Director of Agile at Zipcar • Author • SoNware CraNsman • Traveler • Senior Pet Care Engineer
Copyright 2015, Stephen Vance Understand Deeply 7
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 11
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
Con>nuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 12
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 13
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 14
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 15
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 16
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 17
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 18
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
ReacAons 应对
Copyright 2015, Stephen Vance Understand Deeply 19
Abacus 200 BC
1822 Babbage’s Difference Engine
Enigma bombe 1939
1946 ENIAC
Punch cards 1950s
1972 Waterfall
RUP 1996
2001 Scrum
ConAnuous Delivery 2009
Agile PracAces 敏捷实践
• Stand ups • RetrospecAves • Automated tests • Pair programming • EsAmate user stories
• 站会 • 回顾 • 自动化测试 • 结对编程 • 估算用户故事
Copyright 2015, Stephen Vance Understand Deeply 23
EsAmaAon 估算
Ques>on Known As 1 How much can we do next sprint? 下个迭代我们能做多少?
Capacity planning 产能计划
2 How long will it take to do the project? 做这个项目要多长?
Delivery forecasAng 交付预测
3 How is our progress? 我们的进度如何?
Progress reporAng 进度汇报
Copyright 2015, Stephen Vance Understand Deeply 24
Processes and PracAces 流程和实践
PracAce
PracAce
PracAce PracAce
PracAce PracAce
PracAce
PracAce
PracAce
Copyright 2015, Stephen Vance Understand Deeply 26
What We Do To People 对人我们都做了些什么
• Tell them how to work • Ignore feedback on
teammates • Block their improvement
ideas • Assume
– They won’t consider all of the opAons, or
– They don’t won’t make the right decisions
• Urge them to “work harder” or longer
• 告诉他们怎么工作 • 忽视队友的反馈 • 妨碍他们的改进想法 • 假设
– 他们不会考虑所有选项 – 他们没有成熟度或者经验来做正确的决策
• 督促他们“更努力地工作”或者工作更长时间
Copyright 2015, Stephen Vance Understand Deeply 31
Project Rescue Story 项目急救故事
• Two months remaining • Forecast 30% likelihood for the target date
• Commibed to major capital investments
• 剩下两个月 • 预测30%的可能性赶上目标日期
• 承诺了大量资本投资
Copyright 2015, Stephen Vance Understand Deeply 32
Team Discussion 团队讨论
• Cut scope • Add people • Cut quality • CompensaAon – Comp Ame – Extra pay for extra hours – Success bonus certainty
• Skip company meeAngs • Move the date
• 缩小范围 • 加人 • 降低质量 • 补偿 – 补偿时间 – 加班工资 – 明确的成功奖金
• 改期 • 取消公司会议
Copyright 2015, Stephen Vance Understand Deeply 33
The Elephant In The Room 房间里的大象
• Work extra hours – More hours/day – Weekends – Dinners at the office – Work from home to cut commute Ame
• 工作更长时间 – 每天工作更多小时 – 周末 – 在办公室用餐 – 在家工作以减少交通时间
Copyright 2015, Stephen Vance Understand Deeply 35
Team Responses to Deadlines 团队对死限的反应
• Acceptance • Grumbling • Cugng scope • Cugng quality • Working extra hours • Hiding deviaAon from plan
• Delivery without concern for outcomes
• 接受 • 牢骚 • 缩小范围 • 降低质量 • 工作更长时间 • 隐藏和计划的偏差 • 不考虑结果的交付
Copyright 2015, Stephen Vance Understand Deeply 37
“We usually manage by dates when we don’t know how to manage by what’s truly important”
Me
“当我们不知道如何管理真正重要的事情时,我们通常就会去管理日期”-我
Copyright 2015, Stephen Vance Understand Deeply 38
Valid Reasons for Deadlines 死线的合理原因
• Regulatory compliance dates
• Holidays • AdverAsing buys • Heavy manufacturing purchases – Cars – Airplanes – Robots
• 监管合规期限
• 节假日 • 购买了广告 • 已经采购了重型的硬件 – 车 – 飞机 – 机器人
Copyright 2015, Stephen Vance Understand Deeply 39
Other Reasons for Deadlines 死限的其它原因
“I need to feel in control, and a deadline helps me with that.”
“I set deadlines to insAll a
sense of urgency that I don’t trust will be there otherwise.”
“I set a date because the
teams couldn’t or wouldn’t tell me when they thought it
would be done.”
“我需要有掌控感,死限对此有帮助”
“我设置死限来注入紧迫感,如果没有死限我不相信会有
同样的紧迫感”
“我设置日期是因为团队不能或不会告诉我什么时候他
们觉得会做完”
Copyright 2015, Stephen Vance Understand Deeply 40
SoluAons 解决方案
• Promote visibility • Provide empirically based forecasts
• Show progress through regular demos
• Empathize
• 提倡可见性 • 提供经验型的预测
• 通过定期的展示来显示进度
• 共情
Copyright 2015, Stephen Vance Understand Deeply 41
Responsibility Matrix 责任矩阵 Stakeholder Responsible Approve Support Inform Consult
Team X
Sponsor X
Architecture Significant architecture decisions
X X
Billing X
MarkeAng X
Sales X
Copyright 2015, Stephen Vance Understand Deeply 44
CommunicaAon Plan 交流计划
• Part of the team working agreement
• What media? • Who? • How oNen?
• 部分的团队工作约定 • 什么渠道? • 谁? • 多频繁?
Copyright 2015, Stephen Vance Understand Deeply 45
Risk Log 风险记录 Risk Resolver Comments Resolu>on Status
Partner company not Agile
Tech Lead Difficulty matching release cadence
Open
WaiAng for branding
MarkeAng Impacts web site copy and images
Open
Hardware delivery Ops Vendor uncertain about deliver date
Delivered Closed
Not enough sAcky notes
Scrum Master
Who can do Agile without sAcky notes?
Order placed Open
Caffeine shortage Scrum Master
Team can’t work without coffee
Bought espresso machine
Closed
Copyright 2015, Stephen Vance Understand Deeply 46
More Of The Rescue 更多急救项目的做法
• 24 risks – 6 major risks
• Significant luck
• 24项风险 – 6项重大的
• 不少的运气
Copyright 2015, Stephen Vance Understand Deeply 47
The Language of Hand-‐offs 移交的语言
“I did something for the team”
“I did something with the
team”
“我为团队做了某件事”
“我和团队做了某件事”
Copyright 2015, Stephen Vance Understand Deeply 51
Hand-‐offs 移交
• Necessary • Unavoidable • UnquesAoned habits and assumpAons
• 必要的 • 没法避免的 • 没有被质疑的习惯和假设
Copyright 2015, Stephen Vance Understand Deeply 52
Three Amigos 三架马车
• Pre-‐refinement – Product Owner – Developer – Tester
• Refinement – EnAre team
• 梳理前 – PO – 开发 – 测试
• 梳理 – 整个团队
Copyright 2015, Stephen Vance Understand Deeply 54
Efficiency and Waste 效率和浪费
• Time spent recognizing inappropriate stories
• Story rewriAng • The whole team needs to understand the work anyway
• Lean thinking • Cost of delay
• 花在识别不合适故事上的时间
• 故事重写 • 整个团队总是需要理解工作的
• 精益思考 • 延迟成本
Copyright 2015, Stephen Vance Understand Deeply 55
The Right Agtude 正确的态度
• Forget roles and Atles • Focus on skills and perspecAves
• 忘记角色和岗位 • 关注技能和视角
Copyright 2015, Stephen Vance Understand Deeply 56
SoluAons 解决方案
• Full-‐stack stories • Developer-‐Tester collaboraAon
• Pair programming • Swarming • Mob programming • True DevOps
• 全栈故事 • 开发-测试协作
• 结对编程 • 蜂聚 • 暴徒式编程 • 真正的开发运维
Copyright 2015, Stephen Vance Understand Deeply 57
QuesAon Roles 质疑角色
Do your job descripAons guide you or define you?
Do you recognize your assumpAons and habits from a different context?
你的工作描述是指导你还是限制你?
你意识到来自不同上下文的假设和习惯吗?
Copyright 2015, Stephen Vance Understand Deeply 58