(软件工程学.pptVIP

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(软件工程学

软件工程学 中国科学技术大学网络学院 总 目 录 第1章 软件工程学概述 第2章 系统分析 第3章 需求分析 第4章 软件设计方法 第5章 用户界面设计 第6章 编码 总 目 录 第7章 测试 第8章 软件维护 第9章 面向对象技术 第10章 软件质量管理 第11章 软件项目管理 第1章 软件工程学概述 1.1 什么是软件 1.2 软件危机 1.3 软件工程 1.4 软件生命周期 1.5 软件过程 1.1 什么是软件 软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。 程序是按事先设计的功能和性能要求执行的指令序列 数据是使程序能正常操纵信息的数据结构 文档是与程序开发,维护和使用有关的图文材料 1.1.1 软件的特点 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性 软件的生产与硬件不同,在它的开发过程中没有明显的制造过程 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题 软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的依赖性 软件的开发至今尚未完全摆脱手工艺的开发方式 软件本身是复杂的 实际问题的复杂性 程序逻辑结构的复杂性 软件成本相当昂贵 相当多的软件工作涉及到社会因素 1.1.2软件的分类 按软件的功能进行划分: 系统软件 操作系统 数据库管理系统 设备驱动程序 通信处理程序等 支撑软件 文本编辑程序 文件格式化程序 磁盘向磁带向数据传输的程序 程序库系统 支持需求分析、设计、实现、测试和支持管理的软件 应用软件 商业数据处理软件 工程与科学计算软件 计算机辅助设计/制造软件 系统仿真软件 智能产品嵌入软件 医疗、制药软件 事务管理、办公自动化软件 计算机辅助教学软件 按软件规模进行划分: 类别 参加人员数 研制期限 源程序行数 微型 1 1~4周 0.5k 小型 1 1~6月 1k~2k 中型 2~5 1~2年 5k~50k 大型 5~20 2~3年 50k~100k 甚大型 100~1000 4~5年 1M(=1000k) 极大型 2000~5000 5~10年 1M~10M 按软件工作方式划分: 实时处理软件 分时软件 交互式软件 批处理软件 按软件服务对象的范围划分: 项目软件 产品软件 1.2.1 软件危机简介 通常把在计算机软件的开发与维护过程中所遇到的一系列严重问题笼统地称为软件危机。这些问题绝不仅仅是不能正常,运行的软件才具有的。实际上,几乎所有软件都不同程度地存在这些问题。 概括地说,软件危机包含下述两方面的问题:? (1)如何开发软件以满足社会对软件日益增长的需求; (2)如何更有效地维护数量不断膨胀的已有软件。 具体地说,软件危机主要有以下一些典型表现: (1) 对开发软件成本和进度的估计常常很不准确 (2) 经常出现用户对“已完成的”软件产品不满意的情况 (3) 软件产品的质量往往达不到要求 (4) 软件往往没有适当的文档资料 (5) 软件成本在计算机系统总成本中所占的比例逐年上升 (6) 软件开发生产率提高的速度远远不能满足社会对软件产品日益增长的需求 鉴于软件危机周期长且难于预测,把它为“软件萧条”或“软件困扰”可能更恰当一些。 1.2.2 产生软件危机的原因 1. 客观原因 软件是计算机系统中的逻辑部件而不是物理部件,其显著特点是缺乏“可见性”,因此,管理和控制软件开发过程相当困难。此外,软件维护通常意味着改正或修改原有的设计,从而使得软件较难维护。 软件的另一个突出特点是规模庞大,而程序复杂性将随着程序规模增加以指数上升。软件可能具有的状态数通常都是天文数字,无法完全预见软件可能遇到的每一种情况。 2. 主观原因? 在计算机系统发展的早期阶段开发软件的个体化特点,使得许多软件工程师对软件开发和维护有不少糊涂认识,在实际工作中或多或少地采用了错误的方法,这是使软件问题发展成软件危机的主要原因。 错误的认识和做法主要表现为,忽视软件需求分析的重要性,认为软件开发就是写程序,轻视软件维护。

文档评论(0)

wendan118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档