我们并不能总是时刻控制局面,但是,通过使用简单的规则和工具我们可以避免做愚蠢的事情。
129
业务决策和技术决策的分离!使客户和开发人员各自明确自己的角色。
1、业务决策:决定费用如何分配等问题的,以获得更好的利益回报;
2、技术决策:决定为实现业务目标应该采用哪些方法,以及采用这些方法的费用估算。
1、客户:决定应该完成的工作以及按什么顺序(优先级)完成这些工作;
2、开发人员:决定完成这些工作的方法并估算完成这些工作所需要的时间。
制订项目计划的原则如下:
1、允许项目之初有不完整的需求;
2、所有团队成员都应该参与计划,但是角色一定要清晰;
3、所有参与者要持续的保持沟通;
4、通过频繁地调整计划来适应开发过程的变化;
需求是一种对话,而非文档。
在做计划及工作量估算的时候,必须做的事情:
1、确定项目的基本需要;
2、将这些需要分解成小的、重要的用户故事;
3、确定详细的验收准则(例如验收测试),这些验收准则是验证用户的需求故事是否能完全实现。
——达成这些的最好的方法:
让业务人员和开发人员一起工作!
两个开发人员在白板前进行的对话是最有效的沟通方法;其次是业务人员和技术人员之间巧妙地运用故事卡片。
当客户的“黄金所有者”“目标定义者”不是一个人,尽量让他们意见一致。
客户不喜欢某一个估算值通常是因为以下的两种原因之一:
1、认为整个故事的价值不需要花费那么多费用:故事不像最初表达时那样重要,或者可以用更简单的故事代替,费用也相应减少;
2、客户没有意识到故事的复杂本质:好的教育机会,开发人员向客户解释实现故事必须做的事情,挑最难处理的一两件解释。
引进可行的工具——CASE卡片板辅助软件工程
卡片:故事及其细分任务的概要描述+优先级
故事卡片+任务卡片=更好的沟通
卡片优先级的确定!!!
1、高——能实现系统性能的最新而必要的功能;——没有这些故事,产品就无法发布;
2、中——真正有价值而必要的功能;
——没有这些故事,产品就不会在市场上占据重要地位;
3、低——有了这些功能系统将变得更完美; ——有这些故事当然更好。
的确,二八原理;我们80%的精力总是被耗费在细节上,而不是主要功能上。
优先级的划分,真的非常重要!好钢用在刀刃上!
148
极限小时——一个小时的时间对产品的最初版本做计划、进度表、开发以及质量保证:
1、10分钟——用户故事及结构峰值:业务团队-(项目保管员-索引卡片正面撰写故事;质量保证人员-卡片背面编写测试;)开发团队-画原型图;
业务决策和技术决策的分离!使客户和开发人员各自明确自己的角色。
1、业务决策:决定费用如何分配等问题的,以获得更好的利益回报;
2、技术决策:决定为实现业务目标应该采用哪些方法,以及采用这些方法的费用估算。
1、客户:决定应该完成的工作以及按什么顺序(优先级)完成这些工作;
2、开发人员:决定完成这些工作的方法并估算完成这些工作所需要的时间。
制订项目计划的原则如下:
1、允许项目之初有不完整的需求;
2、所有团队成员都应该参与计划,但是角色一定要清晰;
3、所有参与者要持续的保持沟通;
4、通过频繁地调整计划来适应开发过程的变化;
需求是一种对话,而非文档。
在做计划及工作量估算的时候,必须做的事情:
1、确定项目的基本需要;
2、将这些需要分解成小的、重要的用户故事;
3、确定详细的验收准则(例如验收测试),这些验收准则是验证用户的需求故事是否能完全实现。
——达成这些的最好的方法:
让业务人员和开发人员一起工作!
两个开发人员在白板前进行的对话是最有效的沟通方法;其次是业务人员和技术人员之间巧妙地运用故事卡片。
当客户的“黄金所有者”“目标定义者”不是一个人,尽量让他们意见一致。
客户不喜欢某一个估算值通常是因为以下的两种原因之一:
1、认为整个故事的价值不需要花费那么多费用:故事不像最初表达时那样重要,或者可以用更简单的故事代替,费用也相应减少;
2、客户没有意识到故事的复杂本质:好的教育机会,开发人员向客户解释实现故事必须做的事情,挑最难处理的一两件解释。
引进可行的工具——CASE卡片板辅助软件工程
卡片:故事及其细分任务的概要描述+优先级
故事卡片+任务卡片=更好的沟通
卡片优先级的确定!!!
1、高——能实现系统性能的最新而必要的功能;——没有这些故事,产品就无法发布;
2、中——真正有价值而必要的功能;
——没有这些故事,产品就不会在市场上占据重要地位;
3、低——有了这些功能系统将变得更完美;
的确,二八原理;我们80%的精力总是被耗费在细节上,而不是主要功能上。
优先级的划分,真的非常重要!好钢用在刀刃上!
极限小时——一个小时的时间对产品的最初版本做计划、进度表、开发以及质量保证:
1、10分钟——用户故事及结构峰值:业务团队-(项目保管员-索引卡片正面撰写故事;质量保证人员-卡片背面编写测试;)开发团队-画原型图;
2、10分钟——估算优先级和范围:必须有的;没有会造成很大损失的;有了会更好的。
3、 5分钟——最初承诺的时间表:开发团队对每一次迭代的大概时间都要做出承诺。
4、10分钟——第一次迭代:开发人员看是否需要将故事分解成任务,并接受任务、配对;质量保证人员决定各个配对何时通过测试;管理员与市场人员进行沟通-添加故事/随时回答开发人员问题。
5、 5分钟——计划第二次迭代:调整期望的效率和估算;开发团队需要知道他们要做的工作;业务团队要知道他们所期望的结果。
6、10分钟——第二次迭代:同4;业务人员开始考虑在将来的展示会上如何展示预期产品。
7、 5分钟——发布版本和新的承诺时间表:展示会及下一版本产品宣传。
8、 5分钟——大型展示会。