构建之法第一章讲述了软件和软件工程一些相关知识,虽然作者引用大量实例去解释一些定义和一些词汇,但是看完第一章并没有引起我太大的兴趣,也许是我对其中的一些解释还有疑惑,又或者是对这种学科性书籍本身的枯燥性的定式思维。
然而,其中引起我注意的一句话是:向进度落后的项目中增加人员,会让项目更加落后。看到这句话,不禁让人有些费解,按照常理来说,应该是人多好办事,到了这里感觉人多了反而成了负担。所以,再分析一下这句话,前提是进度落后的项目,然后是增加人员中人员没有没有“量”,也没有“质”,那么为什么会说导致项目更加落后呢?看到后面解释说参见《人月神话》。于是,浏览了一下,确实这句话说得很在理。原因(参考自:https://blog.csdn.net/fengclient/article/details/51627502)如下:
1.团队组织的目的是减少交流障碍,沟通接口基本固定,如果项目引进新人会增加沟通接口,因为需要相互适应或者协商一定的编程规则。
2.项目中进新人需要接受老员工的培训以及任务的重新分配。
3.人数和时间是两个独立要素,不能互相替代,你不能把“2个人花2个月”变成“4个人花1个月”。人数和时间可以互换仅仅适用于如下情况:如果某个任务可以分解给参与人员,并且他们之间不需要相互交流——在软件项目中这几乎不可能。
最后,在第一章的结束写到:创造“足够好”的软件。之所以说“足够好”,是因为没有没有缺陷的软件,只有不断优化的软件。