Fred Brooks的《没有银弹》http://www.virtualschool.edu/mon/SoftwareEngineering/BrooksNoSilverBullet.html引起了很大的争议,很多人纷纷从各种角度批驳软件业没有银弹这一观点。有些人则用该文观点否定软件工程中当前和未来一切技术和方法。
我个人认为,软件开发是将人力和资本转化成软件产品的过程,它类似于物理学中的能量转换过程。能量转换的过程不能创生新的能量,也即不存在永动机的事实,可以帮助我们理解软件生产的效率不可能无限提升的论断。
某些人相信的一些能够革命性提高软件生产效率的技术或方法,绝大多数是一种幻觉。举个我亲身经历的例子。我曾经分别在两个实施敏捷开发的公司从事软件开发,一个是私企,一个是外企。在私企时,我确实感觉软件开发的速度非常快,而个人的工作强度也非常大。当时我以为原来所谓敏捷开发就是加班。但当我到了第二家公司,才知道完全不是那么回事,敏捷是反对加班的。而另一方面,就效率而言,我个人的感觉是,在第二家里,并不比采用传统模式来的高。
敏捷开发有许多条件。而很多人相信它能提高开发效率,原来需要半年才能完成的产品,3个月就出来的,但根据我个人的经历和JavaEye里许多人对敏捷项目的描述,所谓速度快多数是基于加班的一种幻觉,每天工作12小时,一周7天,实际上并没有提高生产率,只不过每天4个小时和每周两天的剩余时间不需要老板付工资而已。但员工事实上是在付出的。
但我们也不能虚无的否定我们在软件开发技术和开发流程上的探索和努力。因为历史证明永动机的研究并非毫无意义,它提供了数以百计的机械装置,很多迄今还在造福社会,并为人类认识能量转换规律提供了经验。所以我相信,对软件工程的研究也一样,它能够提高资本到软件产品的转换效率,从而提高软件生产率。
“没有银弹”则是警告我们不要在软件界追求“永动机”。
分享到:
相关推荐
而1995年版则增加了更多关于作者思想演变的内容,尤其是在第十六章和第十七章中,对《没有银弹》一文的解释和后续的批评回应。 5. **《人月神话》的影响** - **学术界**:这本书不仅在软件工程领域产生了深远的...
4. **第17章对批评的回应**:Brooks在此章中回应了针对《没有银弹》一文的各种批评,并更新了他的观点。 5. **第18章观点总结**:在这一章中,Brooks总结了自己对软件工程项目管理中重要观点的反思,这些观点随着...
- **对批评的回应**:Brooks对《没有银弹》一文中提出的观点进行了辩护,并对一些公开的批评作出了回应。 - **观点总结与更新**:在这一章节中,Brooks总结了书中的一些主要观点,并根据后来的研究成果和个人经验对...
- **没有银弹:** 在《没有银弹》一文中,Brooks预测在未来十年内不会出现任何一种技术或方法能够显著提高软件开发的效率,这一观点引发了广泛的讨论。 通过《人月神话》以及其他相关作品,Brooks为软件工程领域...
2. **第17章:对批评的回应**:针对《没有银弹》一文引发的各种批评,Brooks在此章节中进行了回应和解释。 3. **第18章:观点总结**:Brooks对书中提出的各种观点进行了分类总结,并讨论了它们随着时间的推移是如何...
- **第17章:公开批评的回应**:这一章节中,Brooks回应了外界对于《没有银弹》一文中提出的观点的各种批评,并更新了自己的看法。 - **第18章:观点总结**:作者总结了自己在《人月神话》中提出的主要观点,并基于...
- 作者还通过后续章节回应了对该观点的各种批评,并更新了自己的看法。 #### 三、《人月神话》的核心观点 - **观点分类与验证**: - 作者将书中提出的观点进行了分类,并在后续章节中对其进行了验证或更新。 - ...
4. **没有银弹**:在1986年的后续文章《没有银弹:软件工程的根本和次要问题》中,Brooks提出了一个更为激进的观点,即在未来十年内不会有单一的技术或方法能够极大地提高软件开发的生产力。这一观点引发了业界广泛...
- **“没有银弹”**: 在《没有银弹》这一章节中,Brooks提出了一种观点,即在接下来的十年内不会有单一的技术或方法能够显著提高软件开发的生产力。这一观点在当时引发了广泛的讨论和争议。 - **人月的概念**: “人...