這是一種小玩具,乾燥時拿在手裏,小巧緊緻。blog
泡在水裏,一段時間以後,渾圓飽滿,一隻手都未必能捧的住。軟件
放在乾燥通風的地方晾曬,一段時間事後,又能夠恢復本來的大小。im
軟件需求與泡水膨脹球也有相似之處。d3
一開始時看似簡單明瞭且完備正交,作起來發現越作越大,越作越多。總結
本來一隻手能抓好幾個的小球,後來變成兩隻手都抓不住一個。img
而後的結果要麼是超預算多花錢作完,要麼是轉嫁成本給乙方要求對方作完,要麼是延期,要麼是痛苦地去壓縮需求。時間
不管哪一種,都是不健康的。co
小球泡在水裏會膨脹,暴露於乾燥環境中會縮小。d3
這個過程能夠用一個簡化模型來表示:data
膨脹係數 ≈ 吸水力 - 斥水力
小球體積 ≈ 初始體積 + 膨脹係數 x 時間
當吸水力大於斥水力時,膨脹係數爲正數,在時間的做用下,球會膨脹。
當斥水力大於吸水力時,膨脹係數爲負數,在時間的做用下,球會縮小。
當兩個力接近相互平衡時,膨脹係數約等於零,在時間的做用下,小球體積趨於穩定。
一直變肥?那不行。作軟件是有成本的,時間人力都是成本。
持續變瘦?也不行。需求受到過度壓抑也是不健康的。
健康的變化過程應該是:
先讓小球豐滿起來(充分收集需求,以避免後面出現始料未及的「驚喜」)
而後削減多餘的贅肉(使用奧卡姆剃刀)
以後長期維持健康範圍內的波動
時間的流逝是不受咱們控制的,於是想要控制體積就要從膨脹係數下手。
而膨脹係數又與兩個力相關,於是想要控制體積就要控制吸水力與斥水力。
首先讓吸水力盡情釋放,這時斥水力蟄伏着靜待吸水力的衰減。
以後斥水力爬坡,達到與吸水力持平的水準,兩者長期和平共處。
當咱們如上使用這兩種力的時候,小球體積的變化就會是這樣的:
調研階段積極創造環境來讓吸水力得以釋放,先容許小球變肥。而後施加必定的斥水力,讓小球苗條下來。
到了研發階段,因爲吸水力在以前就已經獲得了有效的釋放,這時施加適量的斥水力來平衡所剩無幾的吸水力就能讓小球體積的波動維持在可控的範圍內。
在不一樣的階段有策略地利用這兩種力,則能夠趨近前期需求收集充分考慮各方訴求不留大的隱患,後續研發穩定不坐過山車的目的。