一次课概述与软件质量模型.PPT课件_第1页
一次课概述与软件质量模型.PPT课件_第2页
一次课概述与软件质量模型.PPT课件_第3页
一次课概述与软件质量模型.PPT课件_第4页
一次课概述与软件质量模型.PPT课件_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

1 软件质量保证 2 第1章软件质量保证 1 1软件复用技术1 2软件过程改进和能力成熟度模型1 3软件测试技术1 4软件评价技术1 5软件质量相关标准1 6基于知识复用的软件测评相关技术1 7软件质量面临的任务 3 1标准的层次 国际标准一般 由国际机构制定和公布供各国参考的标准为国际标准 比如 ISO InternationalStandardsOrganization 国际标准化组织 国家标准由政府或国家级的机构制定或批准 适用于本国范围的标准 如 GB 中华人民共和国国家技术监督局是我国的最高标准化机构 它所公布实施的标准简称为 国标 GB 行业标准行业标准是由一些行业机构 学术团体或国防机构制定 并适用于某个业务领域的标准 如 IEEE InstituteOfElectricalandElectronicsEngineers 企业规范一些大型企业或公司 由于软件工程工作的需要 制定适用于本部门的规范 例如 美国IBM公司通用产品部 GeneralProductsDivision 1984年制定 程序设计开发指南 项目规范项目规范是为一些科研生产项目需要而由组织制定一些具体项目的操作规范 此种规范制定的目标很明确 即为该项任务专用 4 2软件质量标准的沿革 ISO9001与CMMCMM和ISO9001都以全面质量管理为理论基础 都针对过程进行描述 但二者的设计思路不同 属于两个不同的体系 从CMM到CMMI1987年 卡内基 梅隆大学软件工程研究所 SEI 为支持美国国防部对软件承包商的能力进行客观评价 提出了关于软件的 能力成熟度模型框架 于1991 1993年发表了 软件能力成熟度模型 即SW CMM1 0版和SW CMM1 1版 CMMI兼收了SW CMM2 0版C稿草案和SPA中更合理 更科学和更周密的优点 在发表CMMI SE SWV1 0时 SEI宣布大约用两年的时间完成从CMM到CMMI的过渡 CMMI其实就是SW CMM的修订本 CMMI与TR15504在SW CMM思路的启发下 ISO IECJTC1于1991年启动了关于软件过程评估 SPA 的国际标准化项目 并于1995年发布了ISO IECTR15504 软件过程评估 5 3ISO9001和ISO9000 3在软件中的应用简介 ISO9001是ISO9000簇标准体系之一 即设计 开发 生产 安装和服务的质量保证模式 这一套标准中包含了高效的质量保证系统必须体现的20条需求ISO9001标准适用于所有的工程行业 因此 为了在软件过程的使用中帮助解释该标准 而专门开发了一个ISO指南的子集 即ISO9000 3ISO9001在软件行业中应用时一般会配合ISO9000 3作为实施指南 需要参照IS9000 3的主要原因是软件不存在明显的生产阶段 故软件开发 供应和维护过程不同于大多数其它类型的工业产品 比如软件不会 耗损 所以设计阶段的质量活动对产品最终质量显得尤其重要的 6 4CMMI CMMI的全称是CapabilityMaturityModelIntegration 即软件能力成熟度模型集成模型 是一套融合多学科的 可扩充的产品集合 其研制的初步动机是为了利用两个或者多个单一学科的模型实现一个组织的集成化过程改进 CMMI的模型构件主要有三类 需要的 required 期望的 expected 以及提供信息的构件需要的构件需要的构件只有一种 那就是 目标 期望的构件期望的构件也只有一种 就是 实践 提供信息的构件提供信息的构件有10种 分别是目的 介绍性说明 引用 名字 实践与目标关系表 注释 典型工作产品 子实践 学科扩充以及共性实践的详尽描述 7 CMM质量思想 软件过程能力成熟度是指一个特定过程被明确地定义 管理 测量 控制并且是有效的程度 成熟度意味着能力上的增长能力 并表明一个组织软件过程的丰富性和在项目中运用它时的一致性 过程能力与成熟度关系 8 CMM关键过程域 CMM内容结构示意图 9 CMM关键过程域 10 CMM关键过程域 11 CMM关键过程域 不同 等级软件生命周期各阶段缺陷分布示意图 12 第2章软件质量模型及应用 1软件质量需求的背景2软件质量需求的内容3软件质量的定义4软件质量的特性分析 13 问题出在哪里 项目没有被很好地理解 计划不周 最终导致进度拖延 没有充分的文档资料 人与人的交流比写程序困难得多 软件可靠性缺少度量的标准 质量无法保证 软件难以维护 不易升级 14 1软件质量需求的背景 质量的需求是被绝对认可的 但质量在软件业的地位还不是十分坚固市场力量对于软件质量的影响 既有正面的 也有负面的软件越来越复杂 软件的复杂性又是软件质量 包括软件可靠性 的另一个敌人 软件缺陷造成的质量事故数不胜数 给企业带来的损失或负面影响很大 15 2软件质量需求的内容 用户的需求能正常使用全部所需要的功能功能强大 而且界面美观 易用 好用内容健康 有益于生活和工作用户的数据安全 受保护和兼容及时得到新的产品或得到更完美的软件服务软件可靠性很高 使用软件服务没有时间障碍软件企业的需求软件质量是市场竞争的需要 高质量的软件可以大大降低 质量问题产生的成本 增加公司的盈利 质量是进入国际市场的一个关键门坎 容易维护 移植和扩充 以扩大市场或适应环境的变化 16 3软件质量的定义 ANSI IEEESTD729给出了软件质量定义 软件产品满足规定的和隐含的与需求能力有关的全部特征和特性 软件产品质量满足用户要求的程度 软件各种属性的组合程度 用户对软件产品的综合反映程度 软件在使用过程中满足用户要求的程度 17 4软件质量的其它定义 SEI的WattsHumphrey认为软件质量是 在实用性 需求 可靠性和可维护性一致上 达到优秀的水准 客户满意度 使最终的软件产品能最大限度地满足客户需求的程度 一致性准则 在生命周期的每个阶段中 其工作产品总能保持与上一阶段工作产品的一致性 最终可追索到分配需求 软件质量度量 设立软件质量度量指标体系 例如 ISO 9126 并以此来度量软件产品的质量 过程质量观 软件的质量就是其开发过程的质量 Humphrey的质量观是 软件系统的质量取决于开发和维护它的过程的质量 18 软件质量范围 3A Accountability 可说明性 用户可以基于产品或服务的描述和定义进行使用 例如 市场需求说明书 功能设计说明书 Availability 有效性 产品或服务对于99 999 客户总是有效的 例如 性能测试和恢复测试 Accessibility 易用性 对于用户 产品或服务非常容易使用并且一定是非常有用的功能 例如 确认测试和用户可用性测试 19 高质量的软件 应该是相对的无产品缺陷 BugFree 或只有极少量的缺陷 它能够准时递交给用户并且所用的费用都是在预算内的并且满足客户需求 是可维护的 但是 有关质量的好坏最终评价依赖于用户的反馈 20 软件质量的特性分析 软件系统的可靠性和性能相互关联 相互影响软件系统的安全性和可靠性是一致的 因为任何一个失效 可能造成数据的不安全 21 软件产品质量属性 功能性Functionality 可用性Usability 简单安装 轻松使用 友好界面 可靠性Reliability 用户使用的根本 性能Performance 容量Capacity 可测量性Scalability 可维护性Servicemanageability 兼容性Compatibility 可扩展性Extensibility 22 软件质量特征 ISO9126 功能 与一组功能及其指定性质有关的一组属性 这里的功能是满足明确或隐含的需求的那些功能 可靠 在规定的一段时间和条件下 与软件维持其性能水平的能力有关的一组属性 易用 由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性 效率 与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性 可维护 与进行指定的修改所需的努力有关的一组属性 可移植 与软件从一个环境转移到另一个环境的能力有关的一组属性 其中每一个质量特征都分别与若干子特征相对应 23 软件质量特性类图 24 用户要求与软件质量特性 25 5软件质量的内容 产品质量是人们实践产物的属性和行为 是可以认识 可以科学地描述的 并且可以通过一些方法和人类活动 来改进质量 质量模型 McCall模型 Boehm模型 ISO9126模型过程质量 软件能力成熟度模型CMM CapabilityMaturityModel 国际标准过程模型ISO9000软件过程改进和能力决断SPICE SoftwareProcessImprovementandCapabilitydEtermination 在商业过程中有关的质量内容 培训 成品制作 宣传 发布日起 客户 风险 成本 业务等 26 Boehm软件质量模型 阐述性 互用性 数据公开性 27 小结 软件开发的规律 特征和基本方法 必然是多层的分阶段进行 是迭代模型和增量模型的自然结合 是一个软件设计实现和验证测试的并行过程 两者相辅相成 需要充分的沟通 软件客户可以看作是软件开发团体的一部分通过测试驱动会更有效 最简单可能是最有效的 软件质量的定义 特性和内容 软件缺陷的产生 分类和所引起的成本软件质量的定义 软件质量不同视点 客户满意度 一致性准则 软件质量度量和过程质量观 三维性 功能 可靠性和性能 和3A特性 Accountability Availability和Accessibility 软件质量的特性分析软件质量的内容 即软件产品质量 软件过程质量和软件商业环境质量 28 外部和内部质量 功能性 可靠性 易用性 效率 维护性 可移植性 适合性准确性互操作性保密安全性功能性的依从性 成熟性容错性易恢复性可靠性的依从性 易理解性易学性易操作性吸引性易用性的依从性 时间特性资源利用性效率依从性 易分析性易改变性稳定性易测试性维护性的依从性 适应性易安装性共存性易替换性可移植性的依从性 软件质量模型 29 一 软件的功能性1 适用性 所提供的功能是用户所需要的 用户所需要的功能软件系统已提供 2 准确性 软件系统提供给用户的功能是否满足用户对该功能的精确度要求 3 互操作性 软件系统和一个或多个周边系统进行信息交互的能力 例如 word 打印机 打印请求 打印响应 不同型号的打印机与word之间的协议可能不一致 导致消息传递过程中发生错误 应该将被测软件系统和周边系统的各种主流型号进行互操作性测试 30 4 保密安全性 软件系统保护信息和数据的能力 防止未得到授权的人或系统访问相关的信息或数据 保证得到授权的人或系统能正常访问相关的信息或数据 不同的系统对于安全性的需求差别很大常见的安全性测试 用户验证 登录密码验证 IP地址访问限制等 用户权限管理 验证低级别用户是否具有了高级别用户的权限 各级别用户权限都得到了实现 系统数据的保护 对例如系统文件 用户密码文件等进行隐藏 密码验证 内容加密 备份 31 防DoS攻击DoS DenialofService 攻击 拒绝服务攻击 例如 PC1 PC2 路由器 耗光资源 申请IP 申请IP Step1 非法用户使用非法手段 如自动化申请脚本死循环 Step2 合法用户 无资源 IP地址资源池 32 Browser Server DB 非法用户 While语句死循环 查询请求 合法用户 请求无法响应 解决办法 限制请求次数 33 分析系统业务处理中哪些是消耗大量资源 哪些是响应时间非常长的 针对这类业务有目的地去验证系统是否有防DoS攻击防范手段 防溢出攻击例如 溢出攻击正常输入 IE 34 二 软件可靠性1 成熟性软件系统防止内部错误扩散而导致失效的能力 子系统 模块 单元模块的设计人员应该仔细分析和自身有接口关系的子系统 模块 单元模块 识别出这些接口上可能会传递过来的错误 然后在自己子系统 模块 单元模块内部对这些可能的错误预先进行防范 规避这些错误传递到自身而引起自身的失效 35 2 容错性软件系统防止外部接口错误扩散而导致系统失效的能力 设计人员应该充分分析外部接口可能产生的错误 然后在设计上对这些错误一一予以防范 防止这些外部传入的错误波及自身而失效 3 易恢复性系统失效后重新恢复原有功能 性能的能力 原有能力恢复的程度 原有能力恢复的速度 36 例如 交换板1 交换板2 主 备 交换板1 交换板2 主 备 向外部屏蔽内部故障 提高用户满意度 开发人员进行设计时应该充分分析架构中哪个组件风险最集中最高 那么应该对这类核心组件采用主备倒换等易恢复机制 心跳监听消息 心跳监听消息 当交换板1出现故障 立即将交换板2作为主交换板 4 可靠性依从性遵循相关的标准 国际标准 国家标准 行业标准 企业内部规范等 约定或法规以及类似规定的能力 37 三 软件易用性1 易理解性用户在使用软件系统的过程中 系统交互给用户的信息是否准确 清晰 易懂 能帮助用户准确理解系统当前真实的状态 指导其进一步的操作 例如 Client Server GUI界面 NAME PWD 8 当输入password 9时 提示 系统出错 太笼统 不能反映系统的真实状态 站在用户的角度 关注系统返回给用户的每一个信息 不要只关注功能的实现 38 2 易学性软件系统提供相关的辅助手段 帮助用户学习使用它的能力 例如 是否有用户手册 用户手册是否有中文版 是否有在线帮助 界面上控件是否有回显功能等 3 易操作性例如 Nokia手机和Moto手机在编辑短消息时的方便性差异 GUI界面 菜单层次不要太深 安装软件的过程错误 给用户大量的安装步骤 每步又有大量分支选项 把用户当成本软件的专家 测试时应该以非专业的角度来测试过程 往往需要 测试 39 4 吸引性美观 GUI界面 手机外观等新颖 如夏新手机来电跳舞功能5 易用性的依从性遵循相关的标准 国际标准 国家标准 行业标准 企业内部规范等 约定或法规以及类似规定的能力 40 四 软件效率 性能测试 1 时间效率系统在各业务场景下完成用户指定的业务请求所需的响应时间 2 资源效率系统在各业务场景下完成用户指定的业务请求所消耗的系统资源 如CPU占有率 内存占有率 通信带宽占有率 软件内部消息包资源占有率等 3 效率依从性遵循相关的标准 国际标准 国家标准 行业标准 企业内部规范等 约定或法规以及类似规定的能力 41 性能测试场景设计 单用户单业务测试注册响应时间消耗资源登录响应时间消耗资源 多用户单业务测试50个用户同时注册请求响应时间消耗资源100个用户同时注册请求响应时间消耗资源150个用户同时注册请求响应时间消耗资源200个用户同时注册请求响应时间消耗资源 1000个用户同时注册请求响应时间消耗资源 42 多用户多业务测试业务模型1业务模型2 注册200 登录200 浏览400 上传文件100 下载文件100 响应时间 负载量 找出曲线拐点位置 分析性能瓶颈 调整优化 注册业务性能指标曲线变化 根据不同的时间 环境构造各种不同的业务模型 调整其中的分布 找出性能指标分布规律 找出业务瓶颈 43 五 软件可维护性1 易分析性软件系统提供辅助手段帮助开发人员分析识别缺陷 失效产生的原因 找出待修复部分的能力

温馨提示

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

评论

0/150

提交评论