软件工程导论(第六版)第一章

  • 1.1软件危机
  • 软件危机是在计算机软件的开发和维护过程中所遇到的一系列严重问题。
  • 软件危机典型表现
  • 1对软件开发成本和进度的估计常常很不准确
  • 2用户对“已完成的”软件系统不满意的现象经常发生
  • 3软件产品的质量往往靠不住
  • 4软件常常是不可维护的
  • 5软件通常没有适当的文档资料
  • 6软件成本在计算机系统总成本中所占的比例逐年上升
  • 7软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势
  • 产生软件危机的原因
  • 1软件不同于硬件
  • 2软件在运行过程中不会因为使用时间过长而被“用坏”,如果运行中发现了错误,很可能是遇到了一个在开发时期引入的在测试阶段没能检测出来的错误
  • 3软件不同于一般程序,它的一个显著特点是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升
  • 4事实上,对用户要求没有完整准确的认识就匆忙着手编写程序是许多软件开发工程失败的主要原因之一
  • 软件开发与维护的方法不正确有关
  • 1只重视程序而忽视软件配置其余成分的糊涂观念
  • 2软件开发人员在定义时期没有正确全面地理解用户需求,直到测试阶段或软件交付使用后才发现“已完成的”软件不完全符合用户的需要
  • 3严重的问题是,在软件开发的不同阶段进行修改需要付出的代价是很不相同的
  • 消除软件危机的途径
  • 1首先应该对计算机软件有一个正确的认识
  • 2充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好,管理严密,各类人员协同配合,共同完成的工程项目
  • 3推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法
  • 4应该开发和使用更好的软件工具
  • 1.2软件工程
  • 软件工程的本质特性
  • 1软件工程关注于大型程序的构造
  • 2软件工程的中心课题是控制复杂性
  • 3软件经常变化
  • 4开发软件的效率非常重要
  • 5和谐的合作是开发软件的关键
  • 6软件必须有效地支持它的用户
  • 7在软件工程领域中通常由具有一种文化背景的人替具有另一文化背景的人创造产品
  • 软件工程的7条基本原理
  • 1用分阶段的生命周期计划严格管理
  • 2坚持进行阶段评审
  • 3实行严格的产品控制
  • 4采用现代程序设计技术
  • 5结果应能清楚地审查
  • 6开发小组的人员应该少而精
  • 7承认不断改进软件工程实践的必要性
  • 文档的作用
  • 文档是通信的工具,它们清楚准确地说明了到这个时候为止,关于该项工程已经知道了什么,同时奠定了下一步工作的基础。此外,文档也起备忘录的作用,如果文档不完整,那么一定是某些工作忘记做了,在进入生命周期的下一个阶段之前,必须补足这些遗憾的细节。
  • 1.3软件生命周期
  • 软件生命周期每个阶段的基本任务
  • 1问题定义
  • 2可行性研究
  • 3需求分析
  • 4总体设计
  • 5详细设计
  • 6编码和单元测试
  • 7综合测试
  • 8软件维护
  • 1.4软件过程
  • 瀑布模型
  • 瀑布模型特点
  • 1阶段间具有顺序性和依赖性
  • 2推迟实现
  • 3质量保证
  • 瀑布模型优点
  • 1可强迫开发人员采用规范的方法
  • 2严格地规定了每个阶段必须提交的文档
  • 3要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证
  • 4遵守瀑布模型的文档约束,将使软件维护变得比较容易一些,能显著降低软件预算
  • 快速原型模型
  • 不带反馈环
  • 线性顺序
  • 增量模型
  • 也称为渐增模型
  • 螺旋模型
  • 喷泉模型
  • Rational统一过程
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值