敏捷开发需养成的45个习惯

              选定了要走的路,就是选定了它通往的目的地。

                                                 -----HarryEmerson Fosdick(美国基督教现代主义神学家)

 

1.      做事(work for outcome)


指责不能修复bug

Blame doesn’tfix bugs


2.      欲速则不达(quick fixes become quicksand)


防微杜渐

Beware of landmines

 

无需孤立的编码

Don’t code inisolation

 

使用单元测试

User unit tests


3.      对事不对人( criticize ideas not people)


消极扼杀创新

Negativity killsinnovation


4.      排除万难,奋勇前进(damn the torpedoes go ahead)

5.      跟踪变化( keep up with change)

6.      对团队投资(invest in your team)

7.      懂得丢弃( know when to unlearn)


根深蒂固的习惯不可能轻易的丢弃掉

Expensive mentalmodels aren’t discarded lightly


8.      打破沙锅问到底(question until you understand)

9.      把握开发节奏(feel the rhythm)

10.    让客户做决定(let customers make decisions)


决定什么不该决定

Decide what youshouldn’t decide


11.  让设计指导而不是操纵开发(let design guide not dictate)


设计满足实现即可,不必过于详细

Design should beonly as detailed needed to implement

 

战略设计与战术设计

Strategic versustactical design


12.  合理地使用技术(justify technology use)


盲目的为项目选择技术框架,就好比是为了少交税而生孩子

Blindly pickinga framework is like having kids to save taxes

 

不需开发你能下载到的东西

Don’t build whatyou can download

 

13.  保持可以发布(keep it releasable)


提交的代码应该随时可以行动

Checked-in codeis always ready for action


14.  提早集成,频繁集成(integrate early integrate often)


绝不需做大爆炸式的集成

Never accept big-bangintegration


15.  提早实现自动化部署(automate deployment early)


质量保证人员应该测试部署过程

QA should testdeployment


16.  使用演示获得频繁反馈(get frequent feedback using demos)


需求就像是流动着的油墨

Requirements areas fluid as ink


17.  使用短迭代,增量发布(use short iterations release in increments)

18.  固定的价格就意味着背叛承诺( fixed prices are broken promises)


固定的价格就是保证需背叛承诺

A fixed priceguarantees a broken promise


19. 守护天使( put angels on you shoulders)


 编写能产生反馈的代码

 Codingfeedback


20.  先用它再实现它( use it before you build it)


编码之前,先写测试

Write testsbefore writing code

 

好的设计并不意味着需要更多的类

Good designdoesn’t mean more classes


21.  不同的环境,就有不同的问题(different makes a difference)


使用自动化会节省时间

Automate to savetime


22.  自动验收测试(automate acceptance testing)

23.  度量真实的进度( measure real progress)


专注于你的方向

Focus on whereyou’re going


24.  倾听用户的声音( listen to users)

25.  代码要清晰地表达意图( program intently and expressively)

26.  用代码沟通(communicate in code)


无需用注释来包裹你的代码

Don’t comment tocover up


27.  动态评估取舍(actively evaluate trade-offs)


没有最佳的解决方案

No best solution


28.  增量式编程(code in increments)

29.  保持简洁( keep it simple )


简单不是简陋

Simple is notsimplistic


30.  编写内聚的代码(write cohesive code)

31.  告知,不要询问(tell don’t ask)


将命令与查询分离开来

Keep commentseparate from queries


32.  根据契约进行替换(substitute by contract)

33.  记录问题解决日志(keep a solutions log)


不需在同一处跌倒两次

Don’t get burnedtwice


34.  警告就是错误(warnings are really errors)

35.  针对问题各个击破(attack problems in isolation


用原型进行分离

Prototype toisolate


36.  报告所有的异常(report all exceptions)

37.  提供有用的错误信息(provide useful error messages)

38.  定期安排会面时间(schedule regular face time)

39.  架构师必须写代码(architects must write code)

40.  实行代码集体所有制(practice collective ownership)

41.  成为指导者(be a mentor)

42.  允许大家自己想办法(allow people to figure it out)

43.  准备好后在共享代码(share code only when ready)

44.  做代码复查(review code)

45.  及时通报进展与问题(keep others informed)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值