美文网首页
软件需求膨胀系数

软件需求膨胀系数

作者: ThoughtWorks | 来源:发表于2021-01-18 09:32 被阅读0次

泡水膨胀球

image

(图片来自网络)

这是一种小玩具,干燥时拿在手里,小巧紧致。

泡在水里一段时间之后,浑圆饱满,一只手都未必能捧的住。

放在干燥通风的地方晾晒,一段时间过后,又可以恢复原本的大小。

软件需求

软件需求与泡水膨胀球也有类似之处。

一开始时看似简单明了且完备正交,后来发现越做越大,越做越多。

原本一只手能抓好几个的小球,后来变成两只手都抓不住一个。

然后的结果要么是超预算多花钱做完,要么是转嫁成本给乙方要求对方做完,要么是延期,要么是痛苦地去压缩需求。

无论哪种,都是不健康的。

膨胀系数

小球泡在水里会膨胀,暴露于干燥环境中会缩小。

这个过程可以用一个简化模型来表示:

膨胀系数 ≈ 吸水力 - 斥水力

小球体积 ≈ 初始体积 + 膨胀系数 x 时间

当吸水力大于斥水力时,膨胀系数为正数,在时间的作用下,球会膨胀。

当斥水力大于吸水力时,膨胀系数为负数,在时间的作用下,球会缩小。

当两个力接近相互平衡时,膨胀系数约等于零,在时间的作用下,小球体积趋于稳定。

我们希望看到小球体积怎样变化?

一直变肥?那不行。做软件是有成本的,时间人力都是成本。

持续变瘦?也不行。需求受到过分压抑也是不健康的。

健康的变化过程应该是:

  • 先让小球丰满起来——充分收集需求,以免后面出现始料未及的“惊喜”
  • 然后削减多余的赘肉——使用奥卡姆剃刀
  • 之后长期维持健康范围内的波动

力的阶段性施加策略

时间的流逝是不受我们控制的,因而想要控制体积就要从膨胀系数下手。

而膨胀系数又与两个力相关,因而想要控制体积就要控制吸水力与斥水力。

image

首先让吸水力尽情释放,这时斥水力蛰伏着静待吸水力的衰减。

之后斥水力爬坡,达到与吸水力持平的水准,二者长期和平共处。

当我们如上使用这两种力的时候,小球体积的变化就会是这样的:

image

总结

调研阶段积极创造环境来让吸水力得以释放,允许小球先变肥。然后施加一定的斥水力,让小球苗条下来。

到了研发阶段,由于吸水力在之前就得到了有效的释放,这时施加适量的斥水力来平衡所剩无几的吸水力就能让小球体积的波动维持在可控的范围内。

在不同的阶段有策略地利用这两种力,则可以趋近前期需求收集充分考虑各方诉求,不留大的隐患,后续研发稳定不坐过山车的目的。


文/ThoughtWorks 崔鹏飞

更多精彩洞见,请关注微信公众号:ThoughtWorks洞见

相关文章

  • 软件需求膨胀系数

    泡水膨胀球 [https://insights.thoughtworks.cn/wp-content/upload...

  • 《软件需求》-需求

    一、什么是需求 人们在讨论需求时,开始经常会遇到专业术语问题。从不同的角度说着同一个问题,例如:用户需求、软件需求...

  • 软件需求

    业务知识+问题列表+其他因素

  • 软件需求

    需求实例化:对原始需求,转换为产品特性,拆分为用户故事。 需求体系化:对软件功能,需求相关要素,需求与需求之间,进...

  • 《软件需求》

    有没有本事把这本书看完? --可能没有,太厚了。 --试一下吧?,借着这本大书,把近几年工作中所遇到的问题...

  • 软件需求

    一、需求的作用 软件的作用 在许多现代技术产品中,软件技术是最重要的技术。软件通常为一些产品提供控制功能、耦合功能...

  • 软件测试需求分析分享

    什么是软件测试需求? 再说软件需求之前,我们必须意识到软件是为用户服务的,所以软件需求就是用户的需求。 曾经在网络...

  • 测试需求分析

    1.需求、软件需求与测试需求 软件需求是测试需求的基础。 1.需求:功能需求和非功能需求功能需求:用户需求、系统需...

  • 软件需求学习笔记

    什么是软件的需求呢? 软件需求就是系统必须完成的事及必须具备的品质。具体来说,软件需求包括功能需求,非公需求和设计...

  • 软件设计师考试 | 第五章 软件工程基础知识 | 需求分析

    (一)软件需求 软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。 需求包括: 功能需求 性...

网友评论

      本文标题:软件需求膨胀系数

      本文链接:https://www.haomeiwen.com/subject/ymptzktx.html