Think博客

如何在没有水晶球的情况下评估开发世界杯押注

一个充满问号的破碎水晶球的插图
莎拉·库拉营销设计师的插图

“将我们的网站从目前的CMS升级到我们还没有选择的新CMS需要多长时间?”

两个开发者能在6周内完成这款应用吗?”

“我们的云迁移可以在11月完成,对吗?”

在我二十三岁(还在继续)的人生中!)为客户建立网站, 没有什么比担心我所做的估计更让我失眠的了. 这种担心也不会在项目开始时出现. 在项目开始时, 根据我当时所知道的情况,我已经做出了最好的估计, 我感到快乐和乐观.

焦虑出现在项目进行到三分之一的时候, 当“我一开始就知道”和“我 could “已经知道了”更清楚吗. 我担心我 could 也许是我所知道的 should 已经知道. 

我很害怕第一次面对现实的对话:“好吧, 这部分比预期的要好, 但这部分真的很难, 所以估计的日期看起来是不可能实现的.“当这种情况发生时,我感到尴尬、内疚和羞愧. 我不希望你有这种感觉!

解决方案不是“为了安全而增加估计”或“永远不要试图估计任何不能在一次冲刺中完成的事情”.“解决方案是改变你对评估可能性的看法. 你不能控制未来,所以你不能预测未来. 你能做的就是接受不可预测性. 您可以将评估视为一个逐渐使可能性成为焦点的过程.  

如果我不承诺超过我能做到的,我就不会失眠.

引入不确定锥

如果你以前做过十次, 你已经很清楚第11次做它需要多长时间了——不需要估计. 作为软件开发人员,我们在评估何时存在不确定性:

  • 软件究竟需要做什么,哪些功能将具有挑战性?
  • 设计师什么时候能完成世界杯押注,他们的世界杯押注准备好交接?
  • 谁将被分配到项目中,他们对代码和彼此的经验有多丰富?
  • 利益相关者是否会快速响应积极的反馈,还是会有多轮审查?

这些事情不仅没有被完全了解,其中一些已经被完全了解了 unknowable. 即使是最好的, 世界上大多数有经验的软件工程师都无法预测一个新团队处理尚未完全成熟的需求的速度.

想象一个图表,其中水平轴是项目生命周期,从左边的开始到右边的完成. And the vertical axis is the degree of error; either a project being faster, easier, 或者比预期便宜(低), or harder, slower, 或者比预期的贵(高).

 

不确定锥图的说明

插图的 莎拉·库拉 营销设计师

 

软件开发大师Steve McConnell称之为“不确定性锥体”.” It’s not just theoretical; it’s a demonstration of the past performance of skilled, 训练有素的专业估价师. 换句话说,在最初的概念中, 对于一个专注的专业人员来说,要做到比100%的可变性更好,显然是不可行的.

在项目的这个阶段,预测未来是不现实的. 你能做的最好的事情是“可能要25美分或4美元”.“如果你在这一点上做出承诺,你会在稍后醒来时出汗.

你无法预测未来,所以停止尝试

尽管这很诱人,但解决方案并不是更难估算. The unknowns in your project aren’t just unknown; they’re unknowable 在早期阶段. Okta与CMS的集成会顺利吗? 新开发人员会在两天或两周后上手并编写功能吗? CMO是否会高兴地说“发行它”,或者你是否会在下一个冲刺中使用意外的边缘情况来“强化”你的特性?

解决方案不只是提供一个广泛的范围,并期望你的涉众会接受它. “听着,我 希望你的项目花费5万美元, 但是,你应该知道, 可能接近50万.”

坏消息是,预测未来是不可能的. 但好消息是,你真的不需要这么做. 不要忘记你对未来的掌控. 给你自己需要的东西来达到你想要的结果是评估的真正目的.

制定可持续发展目标

即使有些变量是 unknowable有些事情永远在你的掌控之中. 这些可能是成功的最大杠杆.  

  • 你在管理范围方面有灵活性吗?
  • 一旦功能更加明确,您是否能够选择您的团队?
  • 发布日期是否有灵活性?

如果你(或将要执行这项世界杯押注的领导)有能力管理这个项目, 那么,评估的目标就不是去猜测将来是对还是错. 目标是为你自己和你的团队提供他们需要的东西来管理一个成功的结论.

在他的巨著中, 软件评估:揭开黑色艺术的神秘面纱Steve McConnell总结道:

“The primary purpose of software estimation is not to predict a project’s outcome; it is to determine whether a project’s targets are realistic enough to allow the project to be controlled to meet them.”

——史蒂夫·麦康奈尔 软件评估:揭开黑色艺术的神秘面纱

估计、计划、控制、重复

我不再试图通过评估来理解一个项目是否 will 在12周的开发时间内完成. 我想知道一个项目是否 could 在12周的开发世界杯押注中完成-以及我的团队是否能够控制项目以实际地管理该目标.

有时,结果是“这不是一个现实的目标”,这是评估的成功结果. In fact, 这是早期评估中唯一有用的结果, 因为它允许团队提出问题,找到现实的解决方案. 如果目标可以改变以使其更现实呢? 多么危险的东西可以搁置一边?

进入项目两周后,我对不确定性有了更好的理解. 一些风险已经消失! 其他风险已经显现出问题. 现在是时候重新评估了: 

“就我目前所知,这个项目能在十周的开发时间内完成吗?”
“在这十周内,我能控制、管理或改变什么来管理项目??”

两周后——大概是我开始汗流浃背地醒来的时候——是时候收集知识了, 进一步完善未知, 做出更多减少不确定性的决定. “Okay, 我很确定只要流程在周四之前完成,我们可以在八周内使SSO世界杯押注. 我们能做到吗??”

用您所知道的开始您的软件评估项目,然后重新评估

根据我自己的经验, 如果项目的前三分之一用于提炼, 重新评估, 确定你可以控制的领域——然后项目的最后三分之一充满了超越和超越的机会.

而不是花费项目的最后几周来破解需求来实现最初的目标, 你很早就做了决定, 处理最重要的项目, 现在你在寻找快速的胜利和“惊喜和快乐”.” 

另外,你整晚都睡得很香.  

 

这里是世界杯押注, 我们的技术主管与设计主管和项目经理一起世界杯押注,为客户确定并设定现实的目标, 然后管理它们并成功完成. 你有想讨论的项目吗? 与我们的专家聊天!


保持了解

接收博客文章,有用的工具和公司更新直接到你的收件箱.

我们保持简短,让它很容易退订,从不分享你的信息.

本网站是由reCAPTCHA和谷歌保护 隐私政策 and 服务条款 apply.

给我们寄张明信片,写封信

有兴趣和我们一起世界杯押注?

我们对项目进行界定并组建团队,以满足您组织的独特设计和开发需求. 告诉我们你今天的项目,开始对话.

了解更多