这个是来自精益软件开发的一个隐喻:当一个湖中有很多水,水面很高时,湖中的石块都被水所覆盖,此时即使有很大的暗礁,人们也看不到。但是当水量减少,水面降低时,一些大石块就暴漏出来了。接下来随着湖水的进一步减少,中等石块和小石块也逐步被人们发现。
这告诉我们一个什么道理呢?想想软件开发的过程吧,如果采取大批量的做法,一次性提交很多功能,就好比拥有很多水量的湖,你看不到其中隐含着的问题,甚至一些很严重的问题,都隐藏在这里面不容易被发现。如果换种做法,采取小批量的交付模式,每次只提交一小部分功能,这会发生什么呢?这就好比湖水减少了,一些隐藏的“石块”立刻就会暴漏出来,这样平时遇到的各种问题,都不会被累积成为一个大包袱,能够被及时发现和解决。
其实我们在生活中的很多地方,也都可以用到这个办法,通过减少进行中的事情,来暴漏潜在的风险和问题。其实很多时候我们遇到的麻烦,不是问题难以解决,而是没有意识到哪里存在问题。就我个人的经验来说,大多数情况下,你把问题暴漏出来摆在团队的面前,他们自己十有八九就会找到合适的解决办法。