软件工程概述汇编.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程概述汇编

软 件 工 程;1 . 1 软件危机 1 . 2 软件工程 1 . 3 软件生命周期 1 . 4 软件过程 1 . 5软件工程工具 小结;1、软件危机、软件工程产生的原因 2、软件工程过程和软件生命周期 3、软件生命周期模型 掌握几个基本概念 软件危机 软件工程 软件过程 软件生命周期 软件生命周期模型;软件工程学的产生要从“软件危机”说起 1968 年,第一届 NAT0 (北大西洋公约组织的计算机科学家的国际会议)会议,“软件工程”的慨念作为一种有效解决“软件危机”的途径被正式提出。 什么是软件危机? 软件危机有什么典型表现? 为什么会产生软件危机? 怎么解决软件危机?;§ 1 . 1 . 1 软件危机介绍 什么是软件危机? 软件危机指在计算机软件的开发和维护过程中,所遇到的一系列严重问题。 软件危机主要包括的问题(两方面) : ① 如何开发软件 ② 如何维护软件;开发费用和进度难以估算和控制,大大超过预期的资金和规定日期; 软件需求分析不够充分,用户不满意“已经完成”的软件系统。 软件质量难于保证; 软件维护困难; 难以改正程序中的错误; 难以根据用户的需要在原有程序中增加一些新的功能。;通常没有保留适当的文档资料。 文档的作用: 软件开发管理人员:用于管理和评价软件开发工程的进展状况 软件开发人员:用于开发人员对各个阶段的工作都进行周密思考、全盘权衡、从而减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正 软件维护人员:软件维护的依据 开发成本逐年上升,软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。;8 ;① 1966年,IBM 360 机的操作系统。花费 5000 人一年的工作量,写了近 1 万行代码。错误百出,每次的新版本就是从前一版本中找 1 000个程序错误而修正的结果。 ② 1963 年,美国用于控制火星探测器的计算机软件中的一个 “ , ”号被误写为“.”,而致使飞往火星的探测器发生爆炸,造成高达数亿美元的损失。 ③ 美国丹佛新国际机场自动化行李系统软件。投资 1. 93 亿美元,计划 1993 年万圣节启用。但开发人员一直为系统错误困扰,屡次推后启用时间,直到 1994 年 6 ???,机场计划者承认无法预测何时能启用。 ④ 1996 年,欧洲阿里亚纳 5 型运载火箭坠毁,造成 5 亿美元损失。原因是控制软件中的一个错误。;主要两个原因: 1 、与软件本身的特点有关 2 、与软件开发与维护的方法不正确有关。;软件与硬件、一般程序存在很多不同之处。 1 、软件与硬件不同 抽象性。软件生产没有明显的制造过程,难以衡量开发进展,也难以控制软件质量。 问题的隐蔽性。没有硬件的磨损、老化问题,但存在开发早期在分析、设计阶段的错误,修改难度较大。;12 ;13 ;① 软件远比一般程序规模庞大,复杂性高 软件所反映的实际问题的复杂性 程序逻辑结构的复杂性。 例 1 : Windows95 , 1000 万行代码; Windows2000, 5000 万行代码 例 2 : Exchange 2000 和 windows 2000 开发人员;15 ;② 大型软件开发既有技术问题,还有社会问题。 社会因素:组织机构、体制、管理方式、观念、人的心理素等。 开发团队成员分工合作 技术与管理的矛盾 软件开发人员对软件应用的领域知识的了解;① 对用户需求的获取不正确 用户的原因 分析人员的原因 对分析人员的要求:沟通能力、归纳总结能力、经验 越是早期产生的错误,付出的代价越大。 图:不同时期引入同一变 动 的代价;② 软件开发就是编写程序。 一个完整的软件产品由一整套完整的配置组成,程序只是其中的一个组成部分。 软件开发过程包括多个阶段,每个阶段的产品都是最终的完整的软件产品的一部分。 ③ 软件开发只要依靠个别编程高手就能完成。 ④ 轻视软件维护 软件维护约占软件费用 55 一 75 % ,包括修改软件运行的错误;对软件进行改进和功能扩充。;19 ;①软件开发尚未完全摆脱手工艺的开发方式。 ② 软件成本相当昂贵,主要依靠大量复杂的、高强度的脑力劳动 ③ 软件的开发和运行常常受到计算机系统的限制,对计算机系统有着不同程度的依赖性。 软件的“可移植性”就是指的软件对硬件的依赖程度。好的可移植性依赖少。;1 、彻底消除“软件就是程序”的错误观念。 2 、充分认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目,不是个人独立的劳动。 3 、推广和使用在实践中总结出来的软件开发的成功技术和方法。 4 、开发和使用更好的软件工具;总结:“软件工程”的方法理论是摆脱软件危机的一个主要出路。 计算机和软件科学家为解决软件

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档