Apr 7 2008

《Facts and Fallacies of Software Engineering》

这是最近在看的一本软件工程方面的书:《Facts and Fallacies of Software Engineering》(国内的翻译好像是叫软件工程中的真相和谬误),Amazon上的评级是4.5星,2002年出版,不过我是最近才看到。

这本书介绍软件工程中常见的一些“事实”和“误解”(前者55条,后者10条),看了一下这些条目,应该算是经验总结,实践性很强,比较对我的胃口,有些条目给我印象深刻,列举几条如下:

  • 最好的程序员比最差的程序员好28倍(这个,这个。。。怎么统计出来的)。
  • 工作环境对产品开发质量和开发效率有巨大的影响(深有体会)。
  • 开发工具和技术上的改进通常可以带来5%~35%的效率和质量提升,但它们总是被宣称能达到指数级别的改善(呵呵,这个对头)。
  • 软件开发人员总是谈论大量的工具,但他们评估的很少,买的很少,实际发挥作用的更是少的可怜(比较有讽刺意味的一条)。
  • 大多数软件预估是在开发最初期,开发人员甚至还没有弄清需求,没能理解问题就已经作了预估,这样的预估通常是错误的(非常残酷的一个现实)。
  • ......

但也不是每一条都很有新意,有些条目相对就比较陈旧一些(虽然是对的):

  • 软件开发的最重要因素不是程序员使用的工具和技术,而是程序员本身的质量。
  • 效率更多来自于设计,而不是编码。
  • .....

总的来说,这本书值得一看。