《人月神话》打动我的那些章节----论几十年前的软件工程开发理念在当代还有多少理论行得通(一)
前言:人月神话是写于1975年的一本软件工程论著,它描述了软件开发中出现种种问题和桎梏,虽然它所举例子距离我们相去甚远,然而在阅读的过程中我仍对其中的一些问题产生了共鸣。清晰的定义这些问题,迈出了预防并解决这些问题的第一步,它并不列举具体的解决方案,但是在更高的层面上提出了高效开发的可能的解决办法。
第一章 焦油坑--细小问题的累积给整个项目带来的巨大灾难。
一个程序员日常编写的是程序,它本身是完整的可以在作者开发的平台上运行的,但是这不能让程序变为更有用的,但是成本更高的产物。
按照普遍认可的的风格编写+完备的测试+完备的文档 = 编程产品
按照普遍认可的风格编写+符合预期的资源限制+与其他单元的协同测试 = 编程系统
编程产品 + 编程系统 = 编程产品系统
编程产品和编程系统的编写时间一般来说要消耗程序的3倍时间。
第二章 去除神话色彩的人月神话---项目滞后的罪魁祸首-不合理的进度安排
大型编程上的错误思考1 乐观主义假设,每一项任务都将运作良好,每一项任务仅花费它“应该”花费的时间,事实证明子任务的犬牙交错,让一切正常的概率接近与零。
错误思考2 人月的线性相关 事实上由于无法分解的任务和沟通成本的原因,”月“的缩短并不能靠”人“增加来完全实现,添加过多的人手反而会延长项目的时间。
错误的思考3 进度安排顺序限制给测试带来的巨大影响。
书中列举的软件进度安排经验法则:
1/3 时间计划
1/6 时间编码
1/4 时间构件测试和早期系统测试
1/4 时间系统测试,所有构件完成
错误思考4 空泛的估算 为了满足客户期望的日期而造成的不合理进度安排
非阶段化方法的采用,少得可怜的数据支持,再加上完全借助直觉的判断很难生产出有力的能够规避风险的估计。
错误思考5 重复产生的进度灾难
假设项目的第一个例程落后的情况下项目经理有哪些可选的方案呢,这里直接给出结论,就是通过添加更多的人手会使这一落后过程不断重复,从而导致需要添加更多的人手。以上几点是作者论述的去除神话色彩的人月,也是现代实际开发中遇到的问题。
第三章 外科手术团队 一个优秀团队的构建
架构设计师(技术总管) |
||
管理员 |
副手 |
|
文秘 |
程序人员 |
|
工具维护人员 |
||
编辑 |
测试人员 |
|
文秘 |
语言专家 |
《人月神话》打动我的那些章节----论几十年前的软件工程开发理念在当代还有多少理论行得通(一)相关推荐
- 人月神话 中文版 pdf
下载地址: 网盘下载 内容简介 · · · · · · 作者为人们管理复杂项目提供了颇具洞察力的见解,既有很多发人深省的观点,也有大量的软件工程实践.书中的内容来自布鲁克斯在IBM公司System ...
- 享年91岁!图灵奖得主、软件工程圣经《人月神话》作者Fred Brooks逝世
[导读]又一巨星陨落!图灵奖得主,计算机体系结构.操作系统和软件工程先驱Fred Brooks逝世,享年91岁. 1999年图灵奖得主,美国国家科学院院士.对计算机体系结构.操作系统和软件工程做出里程 ...
- 人月神话——我从绝望中读到了希望
<人月神话>是我在入职培训时被被培训员屡次提及并且奉为神话的一本软件工程类书籍,当时的培训里有一个下午的课程专门来讲"银弹"这件事儿,当年初入此行,听个懵懵懂懂.最近被 ...
- 《人月神话》阅读体会(三)
终于读完了这本<人月神话>,对后面的章节中印象最深刻的部分还是祸起萧墙和银弹章节. "项目怎么会被延迟了整整一年的时间--延迟的时间是一天天积累下来的".通常灾祸来自白 ...
- 人月神话贯彻执行_《人月神话》读后感与读书笔记
<人月神话>讲了什么 一开始我觉得这本书重点是在软件工程,但后来我觉得更准确的说法是,<人月神话>是讲软件工程中人与团队关系的. 一个由个人完成的"小"程序 ...
- 关于《人月神话》的读后感
关于<人月神话>的读后感 基本情况: 书名:人月神话 作者:布鲁克斯(FrederickP.Brooks.Jr.) 页数:369 全书字数:316000 出版社:清华大学出版社 出版日期: ...
- 1480_人月神话阅读笔记_开篇
全部信息汇总: GreyZhang/The_Mythical_Man_Month: My reading notes of The Mythical Man-Month. (github.com)e ...
- 人月神话是神话嘛?嗯!
何为人月神话? 人是程序员,月是时间 1个人干10个月如果等同10个人干1个月 这就叫神话 写在开头 最初听到这个书名,是在大一刚开始学Java基础的时候听到老师推荐的.当时还听到了<Think ...
- 《人月神话》(The Mythical Man-Month)3 外科手术队伍(The Surgical Team)
研究表明,效率高和效率低的实施者之间具体差别非常大,经常达到了数量级的水平.These studies revealed large individual differences between hi ...
最新文章
- hibernate保存会先insert再update_Hibernate的批处理
- 简单的分页控件(原创)
- 【数据展示】matplotlib中label框亮度设置
- python动态生成数据库表_使用Python创建MySQL数据库实现字段动态添加以及动态的插入数据...
- jsp button提交表单
- N小时改变一次url时间戳的方法
- click点击后鼠标移去就失效怎么实现_鼠标右键失灵怎么办,你知道原因吗?
- webservice学习01:wsdl文档结构
- 阿迪达斯asp.net sql购物商城计算机设计网站作品
- 如何制作扫描版的文档
- mysql workbench uml_Ubuntu 16.04下UML建模PowerDesigner的替代ERMaster和MySQL Workbench
- 下docfetcher先下Java,DocFetcher ── 以 JAVA 编写的开源桌面本地文件全文搜索工具...
- 上传图片到 OSS 带压缩图片代码
- 变频电源是否可以节能呢
- 搭讪达人这样和女生发短信
- 50行实现C语言FM收音机-Taskbus Stdio封装器在SDR课程中的应用
- 大一计算机论文_大一计算机论文大纲模板范文 大一计算机论文提纲怎样写
- java实现鸭子类型_面向对象—多态、鸭子类型(Day21)
- 夜游项目如何促进文旅经济的发展
- 软件设计师教程(四)程序设计语言基础知识
热门文章
- java 庖丁解牛_庖丁解牛
- 一个完整的Installshield安装程序实例—艾泽拉斯之海洋女神出品(三) --高级设置一
- java万能万年历的程序,java 实现万年历
- Java学生信息管理系统源码
- 1. Linux kernel release 3.x
- 有信号测试软件吗,(推荐)手机频率与信号测试软件Cellular-Z使用方法
- 医学图像可视化软件ITK-SNAP的使用方法
- UNIX网络编程.卷1,套接字联网API(第3版)(中文版)(Stevens经典著作,两位顶级网络编程专家应邀执笔修订)...
- Zabbix 4.4升级到5.0
- 有符号数和无符号数之间的转换(2020)C