软件工程导论第一章.ppt
《软件工程导论第一章.ppt》由会员分享,可在线阅读,更多相关《软件工程导论第一章.ppt(37页珍藏版)》请在三一办公上搜索。
1、,办公电话:51684274电子邮件:课后有问题最好用电子邮件,参考书目软件工程导论(第5版)张海藩 清华大学出版社软件工程(第二版)齐治昌、谭庆平、宁洪 编著,高等教育出版社 Shari Lawrence P fleeger 软件工程理论与实践(第2版)(高教出版社影印版),2003 助教:唐建强 博士考核方式:闭卷考试 70%平时成绩(考勤+作业)30%课代表?,第一讲 如何认识软件与软件工程,教学目标,本课程的目的与任务是使同学们通过本课程的学习,了解软件项目开发和维护的一般过程,掌握软件开发的传统方法和最新方法,提高大家的软件开发能力与软件项目管理能力。学习管理的思想,工程的方法。,1
2、.1 软件与软件危机(1),软件的概念,什么是软件?,软件就是程序?,一定要纠正软件就是程序,开发软件就是编写程序的错误观念!,规模庞大,看不见,摸不着,软件=程序+数据+文档,1.1 软件与软件危机(2),软件的概念软件定义:软件是能够完成预定功能和性能的可执行的计算机程序和使程序正常执行所需要的数据,加上描述软件开发过程及其管理、程序的操作和使用的有关文档。,程序、软件与软件产品:独唱小合唱合唱万人大合唱|简单程序 较复杂程序 软件,1.1 软件与软件危机(3),早期 第二阶段 第三阶段 第四阶段面向批处理 多用户 分布式系统 强大的桌面系统有限的分布 实时 嵌入“智能”面向对象技术自定义
3、软件 数据库 低成本硬件 专家系统 软件产品 消费者的影响 人工神经网络 并行计算 网络计算机,1950 1960 1970 1980 1990 2000 21世纪,1.1 软件与软件危机(4),存在并持续发展的问题:1.对软件开发成本和进度的估算很不准确2.用户很不满意3.质量很不可靠4.没有适当的文档5.软件常常是不可维护的6.供不应求:软件开发生产率跟不上计算机应用迅速深入的 趋势,软件危机,在计算机软件的开发和维护过程中所遇到的一系列严重问题。,软件危机例证,IBM公司的 OS/360,共约100万条指令,花费了5000个人年;经费达数亿美元,而结果却令人沮丧,错误多达2000个以上,
4、系统根本无法正常运行。OS/360系统的负责人Brooks这样描述开发过程的困难和混乱:“像巨兽在泥潭中作垂死挣扎,挣扎得越猛,泥浆就沾得越多,最后没有一个野兽能够逃脱淹没在泥潭中的命运。”,1963年美国飞往火星的火箭爆炸,造成1000万美元的损失。原因是FORTRAN程序:DO 5 I=1,3 误写为:DO 5 I=1.3,1967年苏联“联盟一号”载人宇宙飞船在返航时,由于软件忽略一个小数点,在进入大气层时因打不开降落伞而烧毁。,1.1 软件与软件危机(5),产生软件危机的原因在软件开发和维护的过程中存在这么多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有
5、关。客观:软件本身特点逻辑部件规模庞大主观:不正确的开发方法忽视需求分析错误认为:软件开发=程序编写轻视软件维护.,1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题,在这次会议上正式提出并使用了“软件工程”这个名词,一门新兴的工程学科就此诞生了!,软件工程指导计算机软件开发和维护的工程学科 工程管理+开发技术 1993年IEEE进一步给出了一个更全面更具体的定义:“软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;研究中提到的途径。,1.2 软件工程及其基本原理(1),软件工程的目标软件工程的目标是运用先进的软件开
6、发技术和管理方法来提高软件的质量和生产率,也就是要以较短的周期、较低的成本生产出高质量 的软件产品,并最终实现软件的工业化生产。软件的质量特性:功能性、可靠性、可使用性、效率、可维护性和可移植性。,1.2 软件工程及其基本原理(2),1.2 软件工程及其基本原理(3),软件工程的基本原理(1)按软件生命周期分阶段制订计划并认真实施(2)坚持进行阶段评审(3)坚持严格的产品控制(4)使用现代软件开发技术(5)明确责任(6)用人少而精(7)不断改进开发过程,1.3 软件生命周期(1),概念 软件也有一个孕育、诞生、成长、成熟和衰亡的生存过程,我们称这个过程为软件生命周期或软件生存期。软件生存期由软
7、件定义、软件开发和运行维护3个时期组成,每个时期又可划分为若干个阶段。,1.3 软件生命周期(2),软件定义时期 主要任务是解决“做什么(what)”的问题确定工程的总目标和可行性;导出实现工程目标应使用的策略及系统必须完成的功能;估计完成工程需要的资源和成本;制订工程进度表。通常又分为3个阶段:问题定义、可行性研究和需求分析。,1.3 软件生命周期(3),软件开发时期 主要任务是解决“如何做(how)”的问题,即具体设计和实现在前一个时期定义的软件。由概要设计、详细设计、编码和测试4个阶段组成。,1.3 软件生命周期(4),软件运行维护时期 主要任务是使软件持久地满足用户的需要,通常有4类维
8、护活动:改正性维护,也就是诊断和改正在使用过程中发现的软件错误;适应性维护,即修改软件以适应环境的变化;完善性维护,即根据用户的要求改进或扩充软件,使它更完善;预防性维护,即修改软件为将来的维护活动预先做准备。,统计数据表明,实际上用于软件维护的费用占软件总费用的55%70%。软件工程学的一个重要目标就是提高软件的可维护性,减少软件维护的代价。,1.3 软件生命周期(5),各个阶段所要完成的基本任务问题定义与可行性研究 本阶段要回答的关键问题是“到底要解决什么问题?在成本和时间的限制条件下能否解决问题?是否值得做?”(2)需求分析 本阶段要回答的关键问题是“目标系统应当做什么?”(3)软件设计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 导论 第一章

链接地址:https://www.31ppt.com/p-6434223.html