软件工程实践(10)质量和风险管理

上传人:飞*** 文档编号:52248325 上传时间:2018-08-19 格式:PPT 页数:110 大小:471KB
返回 下载 相关 举报
软件工程实践(10)质量和风险管理_第1页
第1页 / 共110页
软件工程实践(10)质量和风险管理_第2页
第2页 / 共110页
软件工程实践(10)质量和风险管理_第3页
第3页 / 共110页
软件工程实践(10)质量和风险管理_第4页
第4页 / 共110页
软件工程实践(10)质量和风险管理_第5页
第5页 / 共110页
点击查看更多>>
资源描述

《软件工程实践(10)质量和风险管理》由会员分享,可在线阅读,更多相关《软件工程实践(10)质量和风险管理(110页珍藏版)》请在金锄头文库上搜索。

1、北京理工大学 软件工程实践汤铭端 中国航天科工集团公司706所第十讲质量管理与质量保证 评审与审查 风险管理目的与内容n掌握质量的概念n了解质量管理和质量保证的内容和过程n掌握评审和审查的过程n了解和掌握风险管理的概念与过程质量管理质量的概念n质量定义:反映实体满足明确和隐含需 要能力的特性综合n定义的说明:n明确需要:指合同中用户明确提出的要 求与需要n隐含需要:指由生产企业通过市场调研 进行识别与探明的要求或需要n特性:实体所特有的性质,反映了实体 满足需要的能力软件质量的定义nANSI/IEEE Std 729-1983定义软件质量 为“与软件产品满足规定的和隐含的需 求的能力有关的特征

2、或特性的全体”。nM.J. Fisher 定义软件质量为“所有描述 计算机软件优秀程度的特性的组合”。质量特性及其组合n为满足软件的各项精确定义的功能、性能需求,符 合文档化的开发标准,需要相应地给出或设计一些 质量特性及其组合。n如果这些质量特性及其组合都能在产品中得到满足 ,则这个软件产品质量就是高的。n软件需求是度量软件质量的基础。不符合需求的软 件就不具备质量。n标准定义了一组开发准则,用来指导软件人员用工 程化的方法来开发软件。如果不遵守这些开发准则 ,软件质量就得不到保证。n软件质量是各种特性的复杂组合。它随着应用的不 同而不同,随着用户提出的质量要求不同而不同。什么是软件质量成本

3、可靠维护及时 交付 正确功能功能成本及时 交付软件质量的若干侧面项目的质量n质量的类型:n质量,通常指产 品的质量,广义的 还包括工作的质量 。产品质量是指产 品的使用价值及其 属性;n而工作质量则是 产品质量的保证, 它反映了与产品质 量直接有关的工作 对产品质量的保证 程度。n项目的质量n从项目作为一次性 的活动来看,项目质 量体现在由WBS反映 出的项目范围内所有 的阶段、子项目、项 目工作单元的质量所 构成,也即项目的工 作质量;n从项目作为一项最 终产品来看,项目质 量体现在其性能或者 使用价值上,也即项 目的产品质量。产品质量与过程质量产品质量开发技术成本、 时间、进度过程质量人员

4、素质影响产品质量的4个方面软件质量特性与模型n软件质量特性,反映了软件的本质。讨 论一个软件的质量,问题最终要归结到 定义软件的质量特性。n定义一个软件的质量,就等价于为该软 件定义一系列质量特性。n人们通常把影响软件质量的特性用软件 质量模型来描述。软件质量模型n软件质量特性定义成分层模型n最基本的叫做基本质量特性,它可以由 一些子质量特性定义和度量。n二次特性在必要时又可由它的一些子质 量特性定义和度量。n1976年 Boehm质量模型n1979年 McCall质量模型n1985年 ISO质量模型McCall软件质量11特性n使用性n正确性n可靠性n效率n完整性n适应性n测试性n维护性n移

5、植性n重用性n互操作性Boehm质量模型质量模型ISO的软件质量评价模型n按照ISO/TC97/SC7/WG3/1985-1- 30/N382,软件质量度量模型由三层组 成n软件质量需求评价准则(SQRC)n软件质量设计评价准则(SQDC)n软件质量度量评价准则(SQMC)n高层和中层建立国际标准,低层可由各 使用单位视实际情况制定(ISO/IEC9126,1991年)质量特性n质量特性:功能性、可靠性、可维护性 、效率、可使用性、可移植性n推荐21个子特性:适合性 准确性 互 用性 依从性 安全性 成熟性 容错性 可恢复性 可理解性 易学习性 操作 性 时间特性 资源特性 可分析性 稳定性

6、可变更性 可测试性 可安装 性 可替换性 适应性 一致性 质量成本n质量成本是实施单位为了保证和提高产品质量、 满足用户需要而支出的费用,以及因未达到质量 标准而产生的一切损失费用的总和。n简单地说,质量成本可被分成“一致成本”和“不一 致成本”n一致成本包括:培训、指导、查证、确认、测试 、维持、测量、审查等的费用n不一致成本包括:损耗、返工、维修、产品回收 、投诉处理等的费用n通过缩减一致成本来节省费用会带来灾难性后果n第一次要完全正确另外的区分费用的通用方法n预防成本n关注第一个以及以后诸个无瑕疵产品对顾客需求满足程 度的预先成本n如设计评价、培训、QA、供给调查等预防活动n评估成本n评

7、价产品或过程以确定如何满足所有客户需求相关的费 用n如产品检查、测试、设计评审等n内部故障成本n与满足客户需求在脱离组织控制前出现故障相关的费用n如损耗、返工、维修、停工期、瑕疵评估、损耗评估等n外部故障成本n与那些需求没能满足的客户的决定相关的费用n如客户退货和补贴、客户抱怨评估、检查、调查、纠正 等总质量成本预防评估内部故障外部故障 节约当前未来最小化质量总成本n50%或更多的质量成 本来自内外部的故障n故障的完全消除是一 个理想但非有效的解 决方案nJuran:n只要每单位的评价和 预防费用低于非一致成 本,资源会分配到预防 和评价中n当预防和评价成本开 始增加每单位的质量成 本时,策略

8、是维持质量 不变n最小化质量总成本内外部故障成本评估和预防成本总质量成本100%次品100% 合格品最优质量成本每单位合格产品的质量成本最小质量成本质量管理的内容n质量计划n质量控制n质量保证n戴明环PDCAnP:Plan-计划nD:Do-实施nC:Check-检查nA:Action-处理PDCA质量管理n质量管理即在质量方面指挥和控制组织的协调活动n质量管理是指确定质量方针、目标和职责并在质量 体系中通过诸如质量策划、质量控制、质量保证和 质量改进并使其实施的全部管理职能的活动n质量方针n质量目标n质量策划n质量控制n质量保证n质量改进戴明环PDCA环nP:Plan-计划nD:Do-实施nC

9、:Check-检查nA:Action-处理PDCA质量计划n质量计划的目的主要是确保项目的质量 标准能够得以满意的实现,其关键是在 项目的计划期内确保项目按期完成,同 时要处理与其他项目计划之间的关系。质量计划的内容n需达到的质量目标n质量工作具体流程n在项目各个不同阶段,职责、权限和资源的 具体分配n项目实施中需采用的具体的书面程序和指导 书n有关阶段适用的试验、检查、检验和评审大 纲n达到质量目标的测量方法n随项目的进展而修改和完善质量计划的程序n为达到项目质量目标必须采用的其它措施项目质量控制n质量控制主要是监督项目的实施结果,将项 目的结果与事先制定的质量标准进行比较, 找出其存在的差

10、距,并分析形成这一差距的 原因,质量控制同样贯穿于项目实施的全过 程。项目的结果包括产品结果(如交付)以 及管理结果(如实施的费用和进度)。质量 控制通常是由质量控制部门或类似的质量组 织单元实施,但是也并非总是如此。质量保证 n质量保证是所有计划和系统工作实施达到质 量计划要求的基础,为项目质量系统的正常 运转提供可靠的保证,它应该贯穿于项目实 施的全过程之中。在ISO9000系列实施之前 ,质量保证通常被描述在质量计划之中。n质量保证通常是由质量保证部门或者类似的 组织单元提供,但是不必总是如此。质量保 证通常提供给项目管理组以及实施组织(内 部质量保证)或者提供给客户或项目工作涉 及的其

11、它活动(外部质量保证)。 “质量保证”与“保证质量”n保证质量是质量控制的任务n用户不提QA,项目实施者也要进行质量控制 ,保证项目质量满足用户要求nQA是以保证质量为基础,进一步引伸到提供 质量“信任”这一基本目的nQA的主要工作是促进完善质量控制,以便准 备好客观证据,并根据对方的要求有计划、 有步骤地开展提供证据的活动n“保证”有“保险”的意义软件质量保证 n软件质量保证的目的是向管理者提供适 当的对软件项目正使用的过程和正构造 产品的可视性。n软件质量保证包括评审和审计软件产品 和活动以验证它们符合适用的规程和标 准,给项目和其它有关的经理提供这些 评审和审计的结果。 SQA的问题处理

12、渠道n首先在软件项目内部处理符合性问题, 如可能的话就地解决它。n对于那些无法在软件项目内部解决的问 题,软件质量保证组逐级上递该问题到 管理者的恰当层次以求得解决。SQA的目标 n目标1 软件质量保证活动是有计划的 。n目标2 软件产品和活动遵守适用的标 准、规程和需求的情况得到客观的验证 。n目标3 受影响的组和个人接到软件质 量保证活动和结果的通知。n目标4 高级管理者处理在软件项目内 部不能解决的不符合问题。SQA的独立性n存在负责协调和实施项目的SQA的组nSQA有一个向高级管理者报告的渠道,它独立于:项 目经理,软件工程组,其它的有关组n组织机构支持那些要求独立性的活动,如SQAn

13、独立性应该:n给担当SQA角色的个人提供组织上的自由度, 使他们成为高级管理者在软件项目上的“耳目”。n使得担当SQA角色的个人免受他们正在评审的 软件项目的管理者所作的性能评价的影响。n使高级管理者相信正在报告的有关项目过程和 产品的信息是客观的。SQA过程活动活动1 按照已建档的规程为软件项目制订SQA计划 活动2 按照SQA计划进行SQA组的活动 活动3 SQA组参与准备和评审项目的软件开发计划、 标准和规程 活动4 SQA组评审软件工程活动以验证符合性 活动5 SQA组审计指定的软件工作产品以验证符合性 活动6 SQA组定期向软件工程组报告其活动的结果 活动7 按照已文档化的规程对在软

14、件活动和软件工作 产品中所鉴别出的偏差建立文档并加以处理 活动8 SQA组与顾客的SQA人员一起对它的活动和发现 进行定期评审SQA计划的内容1. SQA组的职责和权力 2. SQA组的资源要求 3. 项目的SQA组活动的进度表和投资 4. SQA组参加制定项目的软件开发计划、标准和规程的情 况 5. 将由SQA完成的评价 6. 将由SQA组进行的审计和评审 7. 将用作SQA组评审和审计的基础的项目的标准和规程 8. 用于对不符合性问题建立文档和进行跟踪直至结束的规 程 9. 要求SQA组生成的文档 10.就SQA活动给软件工程组和其它软件有关组提供反馈 信息的方法和频率软件可靠性与容错设计

15、软件可靠性硬件系统故障率0tZ(t)软件系统故障率0tZ(t)软件可靠性定义在给定时间间隔内和特定的环境 下,软件按规格说明成功运行 的概率。软件可靠性的主要指标借用硬件可靠性的定量度量方法来度 量软件的可靠性:nMTBF:平均故障间隔时间nMTTF:平均故障时间 t1,t2, ., tn:失效时间MTTFni=1n1ti软件可靠性定义的要素(1)环境条件规定软件的使用环境(输入数据要求和环境) (2)规定时间时间t是随机变量。 (3)规定的功能 (4)成功运行软件容错技术n提高软件质量和可靠性的技术:n避开错误技术n容错技术n对无法避开的差错,使其影响 减至最小的技术什么是容错软件?定义1:

16、规定功能的软件,在一定程度上 对自身错误的作用具有屏蔽能力的软件 ; 定义2:规定功能的软件,在一定程度上 能从错误状态自动恢复到正常状态的软 件; 定义3:规定功能的软件,在因错误而发 生错误时,仍能在一定程度上完成预期 的功能的软件。容错的一般方法n实现容错计算的方法(容错资源) :n错误检测算法n错误恢复算法n软件冗余备份n容错软件n主体:常规软件所需资源n附加体:容错资源n实现容错计算的主要手段是冗余容错n冗余技术分类:n结构冗余n静态冗余n动态冗余n混合冗余n信息冗余n时间冗余n软件的容错系统 结构n多版本结构n恢复块结构结构冗余:静态冗余n3模冗余、多模冗余n3模(TMR)表决系统的结构UM1M2M3Vu2u1u3I表决器U=(u1u2) (u2u3) =(u1u3)结构冗余:动态冗余n多重模块待机储备,相继运行n待机储备系统结构M1M2M3主模块备用I开关Mn.备用备用结构冗余:混合

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号