1.9.7 计划的回报

当然了,谁也不会在没有仔细计划之前,就建造房子。然而,如果建造鸡圈或狗圈,计划就不需要那么精细了,但是可能仍然以某种草图开始,指导建造过程。软件开发已经走向了极端。在很长的时间里,人们在开发中没有多少结构概念,很多大项目都失败了。其结果最终使各种方法学应运而生,它们包含大量的结构和细节,首先主要针对大项目。这些方法学大得可怕,并不好用,看上去好像我们要花所有的时间在写文档,没有时间编写程序。(真的常常如此。)我希望在这里提出的是走中间道路因地制宜。用一种能满足需要(和个性化)的方法。无论选择的方法学多么小,在项目中进行一些计划还是会有较大改进的,比完全没有计划强得多。请记住,根据各种估计,超过50%的项目都失败了(有些估计说70%以上)。

遵循计划(简单和短小的更加适宜),在编码之前就提出设计结构,我们会发现,事情总的说来比一上来就编码的方法容易得多,并且会认识到大多数情况是令人满意的。就我的经验,提出一个漂亮的方案实际上是在一种完全不同水平上的满足,感觉上更接近于艺术,而不是技术。精致总是有回报的,这不是一种虚浮的追求。它不仅给出了一个容易建造和调试的程序,而且容易理解和维护,这就是其经济价值的体现。