计算机科学导论(第2版)第8章 软件工程new_第1页
计算机科学导论(第2版)第8章 软件工程new_第2页
计算机科学导论(第2版)第8章 软件工程new_第3页
计算机科学导论(第2版)第8章 软件工程new_第4页
计算机科学导论(第2版)第8章 软件工程new_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机科学导论 学习计算机专业的第一门基础课程 第 8章 软件工程 本章要点: 了解软件危机、软件工程的概念、软件的生命周期 掌握软件开发模型和软件开发方法 了解软件质量评价和保证体系 了解软件项目管理 了解软件评审 了解软件可靠性 了解软件容错 了解软件环境 软件工程概述 概念: 大型软件开发和维护过程中遇到的一系列严重问题 。 表现形式: 质量难以保证 、开发成本和开发进度难以控制 、维护非常困难 、用户不满意 。 产生的原因 : 规模 、管理 、 费用 、开发技术 、生产方式 、开发工具。 软件工程 : 研究大规模程序设计的方法、工具和管理的一门工程科学,也就是运用系统的、规范的和可定量的方法来开发、运行和维护软件的系统工程。 软件工程概述 一个软件从提出开发要求开始直到该软件报废为止的整个时期。 (包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等活动)。 软件工程概述 软件开发模型 要 求 定 义确认设计确认编码确认测试确认维护确认需 求 说 明 书设 计 说 明 书源 程 序 清 单测 试 报 告软 件 维 护 报 软件开发模型 软件开发模型 需 求 计 划 操 作 概 念 软 件 需 求提 交 部 分确 定 目 标 方 案限 制 条 件费 用 累 加风 险 分 析风 险 分 析风 险 分 析原 型 1 原 型 2 原 型 3可 操 作 原 型详 细 设 计编程模块测试组装测试确认测试运行评 估 方 案 , 标 识 、 解 决 风 险软 件 产 品设计设 计 验 证 和 确 认需 求 验 证开 发 计 划测 试 计 划集 成 和计 划 下 阶 段 工 作开 发 验 证 下 一 级 产 软件开发模型 实 现软 件 设 计系 统 设 计分 软件开发模型 模 型 检 查软 件 需 求 形 式化 说 明 ( 件 设 计 形 式化 说 明 ( 序( 变换 变换 软件开发模型 用 户 概 念支 持 需 求 分析 专 家 系 统需 求 分 析概 要 设 计详 细 设 计编码测试维护支 持 设 计专 家 系 统支 持 测 试专 家 系 统支 持 维 护专 家 系 将待开发软件划分为一些功能相对独立的模块,模块与模块之间定义相应的接口,各个模块是可以分别单独开发、调试、运行测试的,最后,再将多个模块组合起来,进行软件的整体测试,从而完成整个软件的开发。 注意模块划分原则: 低耦合、大小适宜、接口明确、高复用率、调用层次少。 软件开发方法 2. 结构化方法 又称面向数据流的软件开发方法 ,使用了一组符号和一系列的准则和工具来完成软件开发各阶段的工作。 原则: 用户参与需求分析,先分析、再设计、后实现,自顶向下,文档化管理。 软件开发方法 通过分析信息结构,并使用专门的图形描述工具 数据结构图进行系统分析,从而得到软件结构。 从分析组成系统的对象开始,以数据抽象的类为基础、自底向上的开发方法。 软件开发方法 是一种面向对象的建模语言。它只是给出一套用于建模的元素及表示符号,并定义了它们的语义,而并不涉及如何进行系统建模。 软件开发方法 6. 软件复用和构件技术 利用人们长期进行软件开发而积累的知识、经验、设计方法、需求分析、设计、编码、测试、文档等,来进行新的软件开发。复用对象可以包括整个软件开发过程及其成果。 构件 (在软件系统设计中可以明确辨识的构成成分。而可复用构件 (指具有相对独立的功能和可复用价值的构件。 软件开发方法 件质量评价和保证 (1) 与所确定的功能和性能需求的一致性。 (2) 与所成文的开发标准的一致性。 (3) 与所有专业开发的软件所期望的隐含特性的一致性。 2. 影响软件质量的因素 : (1) 可以直接度量的因素 : 如单位时间内千行代码 (所产生的错误数。 (2) 只能间接度量的因素 : 如可用性或可维护性。 件质量评价和保证 质量保证就是向用户及社会提供满意的高质量的产品,确保软件产品从诞生到消亡为止的所有阶段的质量活动,即确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动。 量度量模型 1. 量度量模型 面向软件产品的运行、修正和转移定义了一系列特性。 ( 正确性 、可靠性 、效率 、完整性 、可用性 可维护性 、可测试性 、适应性 可移植性 、可重用性 、可互操作性 ) 2. 件的复杂性 1. 基本概念 软件复杂性度量的参数: (1) 规模: 即总共的指令数,或源程序行数。 (2) 难度: 通常由程序中出现的操作数的数目所决定的量来表示。 (3) 结构: 通常用与程序结构有关的度量来表示。 (4) 智能度: 即算法的难易程度。 件的复杂性 2. 软件复杂性的度量方法 (1)代码行度量法 : 以源代码行数作为程序复杂性的度量 。 (2) : 又称环路度量,以图论为工具,先画出程序图,然后用该图的环路数作为程序复杂性的度量值。 件项目管理 1. 软件项目计划 目标是为项目负责人提供一个框架,使之能合理地估算软件项目开发所需的资源、经费和开发进度,并控制软件项目开发过程按此计划进行。 2. 软件项目计划内容 范围:给出该软件项目的综合描述,定义所要做的工作以及性能限制 。 资源:所需人员配置、软件、硬件及其他资源。 进度安排:给出实施进度、资源使用表、成本估算、培训计划等。 件可靠性 1. 软件可靠性定义 一个程序按照用户的要求和设计的目标,执行其功能的正确程度。 一个可靠的程序应要求是正确的、完整的、一致的和健壮的。 平均失效等待时间 均失效间隔时间 件可靠性 ( 1) 平均失效等待时间 如对 硬件或者软件 )进行测试,它们的失效时间分别是 , 平均失效等待时间 o 义为: 说明: 平均失效等待时间 的倒数: 。 其中, 是由用户给出的指标目标值。 ( 2) 平均失效间隔时间 指两次相继失效之间的平均时间。 件可靠性 3. 软件可靠性模型 (1) 可靠性增长模型 硬件可靠性理论导出的模型,通过度量硬件的稳定可用程度,用其错误出现和纠正的速率来表示。 令 机器的稳定可用性可定义为: A= 可靠性增长模型的基本思想是一个错误发现并改正后,它的可靠性有一个定值的增长。 件可靠性 (2) 基于程序内部特性的模型 通过计算存在于软件中的错误的预计数 , 衡量软件的可靠性。 (3) 植入模型 在软件中“植入”已知的错误,在历经一段时间的测试之后 , 可以发现错误,并计算发现的植入错误数与发现的实际错误数之比。 件评审 在软件开发的各个阶段都要采用评审的方法,以发现软件中的缺陷,然后加以改正。 主要包括: (1) 设计的规格说明书要符合用户的要求。 (2) 程序要按照设计规格说明书所规定的情况正确执行。 件容错技术 1. 软件容错的定义 2. 容错的一般方法 3. 容错软件的设计过程 件工程环境 (1) 软件开发环境: 在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统 。 (2) 对软件开发环境的要求 : 一体化 、通用性 、适应性和灵活性 、易使用、经济高效 。 件工程环境 (1) 按解决的问题分类 : 程序设计环境 、 系统合成环境 、项目管理环境 。 (2) 按软件开发环境的演变趋向分类 : 以语言为中心的环境 、工具箱环境 、基于方法的环境 。 (3) 按集成化程度分类 :

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论