码迷,mamicode.com
首页 > 其他好文 > 详细

《高效程序员的45个习惯》--交付用户想要的软件(Ⅳ)

时间:2015-01-12 23:47:53      阅读:245      评论:0      收藏:0      [点我收藏+]

标签:

真正的敌人是变化!!

一、让客户做决定:

  开发者(项目经理)能做的一个最重要的决定就是,判断哪些是自己决定不了的,应该让用户做决定;

  当与客户讨论时,准备好几种可选方案,从业务角度介绍每种方案优缺点,以及潜在的成本和利益,和他们讨论每个选择对时间和预算的影响,以及如何权衡;

二、让设计指导而不是操纵开发:

  前期的设计属于战略设计,不应该具体说明程序方法、参数等细节,应该扮演地图角色,指引你向正确的方向前进;

  战术设计需要在具体的项目开发过程中展开;

  CRC(类-职责-协作者),类名-它应该做什么-要与其他什么对象一起工作;

  好的设计应该是正确的而不是精确的,它所描述的一切必须是正确的,不应该涉及不确定或者可能会发生变化的细节;

三、合理的使用技术:

  根据需要选择新技术;

  不要开发你能下载到的东西;

四、保持可以发布:

  保持你的系统随时可以编译、运行、测试并立即部署;

五、提早集成、频繁集成:

  代码集成是主要的风险来源,提早集成、持续而有规律的进行集成;

六、提早实现自动化部署:

  系统的安装或者部署应该简单、可靠及可重复;

  (一开始)就实现自动化部署应用;

七、使用演示获得频繁反馈:

  在开发时,保持应用可见,积极获取反馈;

八、使用短迭代、增量发布:

  对付大项目,最理想的方法就是 小步前进;

  询问客户,哪些是使产品可用且不可缺少的核心功能;

  使用短迭代和增量开发,可以让开发者更加专注于自己的工作;

  增量开发,发布带有最小却可用功能块的产品,增量的发布必须是可用的,并且能为用户提供价值,这就要求我们多问客户;

九、固定的价格就意味着背叛承诺:

  主动提议先构建系统最初的、小的和有用的部分,足够一次缴付,并能让用户真正使用;

  第一迭代后让客户进行选择,继续下一迭代还是取消合同;

  如果继续前进,就可以很好的预测下一个迭代工作,同时下一迭代结束的时候再让用户进行选择;

  以上三点的好处是可以控制项目,可以随时停止项目而不需要花费更多费用,同时也可以控制先完成哪些功能,并能精确知道花费多少,使客户承担更低的风险。

   

《高效程序员的45个习惯》--交付用户想要的软件(Ⅳ)

标签:

原文地址:http://www.cnblogs.com/xishi7/p/4220029.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!