没有合适的资源?快使用搜索试试~ 我知道了~
SE2019春-G11-李帝江-《人月神话之没有银弹》读后感1
需积分: 0 2 下载量 149 浏览量
2022-08-08
20:49:10
上传
评论
收藏 18KB DOCX 举报
温馨提示
试读
1页
SE2019春-G11-李帝江-《人月神话之没有银弹》读后感1
资源详情
资源评论
资源推荐
SE2019 春-G11-李帝江-《人月神话之没有银弹》读后感
《人月神话之没有银弹》读后感
“在未来的十年内,无论是在技术上还是管理方法上,都看不出有任何突破性的进步,能够
保证在十年内大幅度地提高软件的生产率、可靠性和简洁性。”
在这里,银弹是什么,已经得到了回答——“在十年内大幅度地提高软件的生产率、可
靠性和简洁性”。通过效仿亚里士多德,作者将软件活动分为了根本任务和次要任务,,并提
出了四点软件任务中的必要活动。面对银弹的对象——人狼——即管理灾难,要做的第一步
是将大块的“巨无霸理论”替换为“微生物理论“,所以诞生了软件工程。
计算机(硬件)发展的太快——基本上每一两年就翻一番(摩尔定律),而软件却跟不
上这样的速度,这一章中主要讨论软件特性中的固有的困难。“我认为软件开发中困难的部分
是规格说明、设计和测试这些概念上的结构,而不是对概念进行表达和对实现逼真程度进行
验证。”其中这些特性主要指:复杂度、一致性、可变性和不可见性。
对于复杂度,软件实体是人类创造出的最复杂的东西,为了保证实现软件重用,不会出
现两个完全相同的部分(组件)。而这个根本属性导致了许多技术困难(函数复杂度、结构
性复杂度)以及管理上的问题(妨碍了概念上的完整性)
对于一致性。这是许多领域都需要遵循的,在软件开发中,一要遵循各种接口,二要保
证兼容性,这里,问题的复杂性就来自于“保持与其他接口的一致性”。
然后是可变性。软件是纯碎思维活动的产物,所以它很容易进行修改,而功能是·最容
易感受到变更压力的部分。功能扩展的压力主要来自那些喜欢基本功能,又对软件提出了新
用法的用户。软件扎根于文化,文化在不断改变,软件也必须随之改变。
最后是不可见性。软件不可见,其客观存在也不具有空间形态特征。(我们能做的只是
将软件的逻辑等用用建模描述出来。)
软件领域最富有成效的三次进步,我们会发现每一次都是解决了软件构建上的巨大困难,
但是这些困难不是本质属性,也不是主要困难。因为软件工程面临的问题在于我们已经清除
了大部分的次要复杂度,而剩余的(主要复杂度)都无法改变。高级语言和分时作为以往解
决次要困难的突破的主要代表,高级语言是最可能实现的是所有编程人员在抽象程序中提供
想到的要素,环境的开发则成了如今软件工程研究的主要题目。
软件开发人员为客户所承担的最重要的职能是不断重复地抽取和细化产品的需求。事实
上,客户往往不知道他们自己需要什么,通常不知道哪些问题是必须回答的,并且,连必须
确定的问题细节常常根本不予考虑,甚至只是简单地回答——“开发一个类似于我们已有的
手工处理过程的新软件系统”——实际上都过于简单。客户决不会仅仅要求这些。复杂的软
件系统往往是活动的、变化的系统。活动的动态部分是很难想象的。所以,在计划任何软件
活动时,要让客户和设计人员之间进行多次广泛的交流沟通,并将其作为系统定义的一部分。
这是非常必要的。
林书尼
- 粉丝: 21
- 资源: 315
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0