首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

planning poker

Planning Poker是一种广泛使用的敏捷开发方法中的估算技术,主要用于帮助团队成员对开发任务的工作量进行估算。以下是对Planning Poker的详细解释:

基础概念

Planning Poker 是一种基于Delphi技术的估算方法,它通过团队成员之间的讨论和投票来达成对任务工作量的共识。这种方法使用一组带有不同数值的扑克牌,每个数值代表不同的工作量估算。

优势

  1. 促进团队沟通:通过讨论和投票,团队成员可以更好地理解任务需求和复杂性。
  2. 减少偏见:匿名投票有助于减少个人偏见对估算结果的影响。
  3. 提高准确性:集体智慧通常比单个人的估算更准确。
  4. 快速收敛:通过多轮投票,团队可以迅速收敛到一个较为一致的估算结果。

类型

  • 标准Planning Poker:使用斐波那契数列(如1, 2, 3, 5, 8, 13, 21等)作为扑克牌的数值。
  • 改进版Planning Poker:可能会加入0、半数和其他自定义数值以适应不同的项目需求。

应用场景

  • 敏捷软件开发:在Scrum或其他敏捷框架中,用于迭代计划会议。
  • 项目估算:适用于任何需要团队协作进行任务估算的场景。
  • 需求分析:在需求讨论阶段帮助团队理解任务的复杂性和工作量。

实施步骤

  1. 准备阶段:每位团队成员获得一套标有数值的扑克牌。
  2. 讲解任务:产品负责人或项目经理向团队详细介绍待估算的任务。
  3. 独立估算:每位成员根据自己的理解选择一张扑克牌代表对该任务的估算。
  4. 公开讨论:团队成员依次展示自己的牌,并解释选择该数值的理由。
  5. 多轮投票:如有必要,进行多轮投票直至达成共识。

遇到的问题及解决方法

问题1:团队成员对任务理解不一致

  • 解决方法:在讲解任务阶段,确保所有成员都充分理解任务需求和目标。可以通过更多的背景信息和示例来澄清疑惑。

问题2:估算结果差异过大

  • 解决方法:进行深入讨论,让团队成员分享他们的观点和假设。必要时可以拆分复杂任务为更小的子任务重新估算。

问题3:个别成员影响整体决策

  • 解决方法:强调匿名投票的重要性,确保每个人的意见都能被平等对待。同时,鼓励开放和包容的讨论氛围。

示例代码(用于模拟Planning Poker的简单程序)

代码语言:txt
复制
import random

# 定义扑克牌数值
poker_values = [0, 1, 2, 3, 5, 8, 13, 21]

def planning_poker(team_size):
    estimates = []
    for _ in range(team_size):
        estimate = random.choice(poker_values)
        estimates.append(estimate)
    return estimates

# 模拟一个5人团队的Planning Poker过程
team_size = 5
estimates = planning_poker(team_size)
print(f"团队估算结果: {estimates}")

通过上述代码,可以快速模拟一次Planning Poker的估算过程,并得到团队成员的初步估算值。实际应用中,这些值将用于进一步的讨论和调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Planning and Learning

本文链接:https://blog.csdn.net/Solo95/article/details/102892168 这算是一篇综述性文章,讲的不深,但是了解做planning都有哪些方法。...,输出下一个状态和奖励 Planning则是指对模型的合理使用,指定使用模型的"策略"(跟policy区分开,使用策略的意思),用最低的成本收敛到价值函数。...Dyna-Q: Integrating Planning, Acting, and Learning 如果能有完美的环境模型,就可以使用类似动态规划那样的planning方法来更快更好地收敛Q,但是实际上由于各种各样的原因...Prioritized Sweeping 前面的Planning搜索是随机的,见算法Dyna−QDyna-QDyna−Q第9行,第10行。...Monte Carlo Tree Search 蒙特·卡罗尔树搜索(MCTS)是一个最近的并且特别成功的决策时planning的例子。

35010
  • 大规模敏捷之Big Room Planning

    很多人在big room planning之后感激不尽,他们工作得很愉快,并说最终能和其他团队的成员进行有意义的交流真是太棒了。 Big room planning只过去两周,我们就准备好了。...因此,如果big room planning在交付价值上提高了3.3%的生产效率,那么big room planning就是一个不错的投资。 Big room planning简介 ?...为big room planning做好准备 正如“规模计划”插图所示,你需要把切片和总体规划安排妥当以获得成功的big room planning。...每个团队至多一个协调人员,如果他们不熟悉敏捷,就分解史诗故事并利用计划扑克(planning poker)进行估算。我倾向于拥有不属于项目、在大规模敏捷上有丰富经验的外部协调人员。...究其原因是都很重要,但是big room planning会议往往没有得到组织足够的重视。 ? 物质上的准备可以促成或破坏big room planning,因此,请严肃以待。

    98470

    自动驾驶运动规划(Motion Planning)

    1.什么是Motion Planning Motion Planning是在遵循道路交通规则的前提下,将自动驾驶车辆从当前位置导航到目的地的一种方法。...2、Motion Planning的约束条件(constraints) Motion Planning是一个复杂的问题,它的执行过程需要满足很多约束条件: 2.1 车辆运动学约束 车辆运动受到运动学约束...Motion Planning需要避开这些静态障碍物,避免与它们发生碰撞。...3、Motion Planning的优化目标 了解Motion Planning的约束条件之后,需要构造目标优化函数,然后最小化目标函数,从而获得在当前环境下的最优运动轨迹。...4、分级运动规划器(Hierarchical Motion Planning) Motion Planning是一个异常复杂的问题,所以通常我们把它切分为一系列的子问题(Sub Problem)。

    1.8K41

    关于SAFe流程中PI Planning的认知迭代

    刚接触SAFe流程时,我最大的困惑就是关于PI Planning了。...嘿嘿 简单来说,那时我就是把PI Planning当大号的Sprint Planning来对待的。加上在公司的前几个项目,都比较独立,和其它的团队交集不是很多。...我试着用更高的格局来看待PI Planning,把PI Planning中计划的Feature类比为Sprint Planning中的User Story,参与PI Planning中的各个团队类比为参与...Sprint Planning中的一个个成员,那么PI Planning其实是身处幕后的管理团队的Sprint Planning,只是他们需要通过各个团队的反馈来实现,而不是自己实现。...顺着这个思路想,高管团队应该是通过管理团队的Release Planning来做他们的Sprint Planning,周期就更长了。

    1.3K10

    SAFe中可能的魔法Program Increment Planning

    —— 匿名 对于正在进行SAFe规模化敏捷的朋友,上面这句话应该是耳熟能详的,毕竟这是官方的解释 https://www.scaledagileframework.com/pi-planning/ 纸上得来终觉浅...为什么要做PI Planning 在Scrum团队中可以通过Planning Meeting完成从PB到SB的梳理,通过Refinement完成进一步的功能澄清,通过Review会议完成Increment...PI Planning前需要准备什么 PI需要Business Own的深度参与,为整个ART团队介绍商业背景;由PM介绍系统整体的路线图、Program Board中主要功能的和里程碑;由架构师提供技术架构上构建规划...3.PI planning各个阶段在做啥 看起来内容很多,但是简单总结下可以归为以下几类: 我们要做啥,现在我们能做啥,有什么要考虑的技术架构; 团队根据Program Board进行所有Feature...4.PI planning形式没啥特别的,为什么做了也没啥用 如果非要说PI做了啥,本质上就是让所有相关方在一起都参与了未来整个ART的交付规划。

    60130
    领券