软件质量保证与测试考试复习资料(DOC 22页).doc
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件质量保证与测试考试复习资料(DOC 22页).doc》由用户(2023DOC)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件质量保证与测试考试复习资料DOC 22页 软件 质量保证 测试 考试 复习资料 DOC 22
- 资源描述:
-
1、第一章 软件质量1.软件定义:软件是计算机系统中与硬件相互依存的另一部分,它是程序、数据及相关文档的集合。【简答】2.软件特点a.软件是开发产生的,而不是用传统方法制造的;b.软件不会像硬件一样有磨损;c.很多软件不能通过已有构件组装,只能自己定义。3.软件分类:按照使用范围不同,把软件划分为项目软件和产品软件。4.IEEE软件缺陷的定义a.从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;b.从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。5. 软件缺陷产生的原因a. 项目期限的压力;b. 产品的复杂度;c. 沟通不良;d. 开发人员的疲劳、压力或受到干
2、扰;e. 缺乏足够的知识、技能和经验;f. 不了解客户的需求;g. 缺乏动力。6.IEEE的软件质量定义【简答】a.系统、部件或过程满足规定需求的程度;(Crosby 1979)b.系统、部件或过程满足顾客或客户需求/期望的程度。(Juran 1988)7.Pressman的软件质量定义:符合明确陈述的功能/性能需求、明确文档化了的开发标准和所有专业开发预期的隐含特性。【简答】8.Crosby, Juran, Pressman软件质量定义的比较 【基本原理和方法】 (必考)a.Crosby的定义指的是写好的软件符合由顾客和它的专业组编制的规格说明书的程度。这也意味着包含在规格说明中的错误是不予
3、考虑的,也不降低软件质量显然这是不足的。1分b.Juran的定义旨在达到顾客满意度,这就要求对检查改正顾客的需求规格书投入大量工作。但该定义的主要缺点是免除了顾客对软件规格书准确性、完备性的责任。1分c.Pressman定义为SQA提出了要由开发者满足的三个要求:特定功能需求,它主要是指软件系统的输出;在合同中提出的软件质量标准;反映当今水平的专业方法的良好软件工程方法的发展水平。实际上,Pressman定义提供了测试满足需求程度的操作方向。2分9. 软件质量的内容;各维度下软件质量标准 a. 产品质量,它的软件质量标准有McCall 模型,Boehm 模型, ISO 9126 模型;b. 过
4、程质量,它的软件质量标准有软件能力成熟度模型 CMM,国际标准过程模型 ISO 9000,软件过程改进和能力决断 SPICE。 10.MaCall软件质量模型11. 应用 MaCall模型分析软件质量 参考试卷MaCall软件质量模型中软件质量维度;各个维度软件质量因子的定义 【简答】【基本原理和方法】McCall软件质量模型的软件质量维度;各质量维度下软件质量因素有哪些?a.产品运行维度: 正确性:一个程序满足它的需求规约和实现用户任务目标的程度。 可靠性:一个程序满足其所需的精确度,完成它的预期功能的程度。 效率:一个程序完成其功能所需的计算资源和代码的度量。 完整性:对未授权人员访问软件
5、或数据的可控制程度。 实用性:学习、操作、准备输入和解释程序输出所需的工作量。b.产品修改维度: 可维护性:定位和修复程序中一个错误所需的工作量。 可测试性:测试一个程序以确保它完成所期望的功能所需的工作量。 灵活性:修改一个运行的程序所需的工作量。c.产品转移维度: 可移植性:把一个程序从一个硬件或软件系统环境移植到另一个环境所需的工作量。 可重用性:一个程序可以在另外一个应用程序中重用的程度。 互操作性:连接一个系统和另一个系统所需的工作量。12. 软件质量管理的内容 【简答】a. 软件质量保证(Quality Assurance) 建立起机构质量规程和标准的整体框架,这是生产高质量软件的
6、保证。b.软件质量规划(Quality Planning) 从这个框架中选择适当的质量规程和标准,进行改写使之适应特定软件项目。c.软件质量控制(Quality Control) 定义并设计软件过程,确保软件开发团队严格遵守项目质量规划和标准。d.软件质量改进14. 软件质量成本的定义、构成 【简答】定义:质量成本是为确保和保证满意的质量而发生的费用以及没有达到满意的质量所造成损失的总和,即包括保证费用和损失费用。构成: 质量成本质量保证成本损失成本 质量保证成本:为保证满意的质量而发生的费用 损失成本:没有达到满意的质量所造成损失 质量成本质量预防成本评价成本失效成本 保证成本预防成本评价成
7、本 预防成本:预防产生质量问题(软件缺陷)的费用,是企业的计划性支出,专门用来确保在软件产品交付和服务的各个环节不出现失误。 评价成本:是指在交付和服务环节上,为评定软件产品或服务是否符合质量要求而进行的试验、软件测试和质量评估等所必需的支出。 失效成本:分为内部的和外部的,如果在软件发布之前发现质量问题,而要求重做、修改和问题分析所带来的成本属内部失效成本,包括修正软件缺陷、回归测试等,以及因产品或服务不合要求导致的延误。15. 软件质量标准的益处、分类(包括认证标准和评估标准) 按照软件质量标准的内容和重点,把软件质量标准划分为认证标准和评估标准。【简答】 益处: a.有能力应用最高专业级
8、别的软件开发与维护方法学和规程; b.开发组之间、尤其是开发与维护组之间更好的互相理解与协作; c.软件开发者和外部参与方之间更大的合作; d.基于采用著名开发与维护标准作为合同的一部分,使供货商和顾客之间能更好地互相理解与合作。认证标准: 认证标准的范围是由认证的目的确定的,其目的在于: a.使软件开发机构能够证实其有能力确保软件产品或维护服务符合可接受的质量需求。这是通过一个外部的实体做出认证实现的; b.用作顾客和供货商对供货商的质量管理系统评价一致性的基础。它可以通过由顾客实施的对供货商的质量管理系统的质量审计实现; c.支持软件开发机构的工作,通过符合标准的需求来改进质量管理系统性能
9、和增强顾客满意度。评估标准: a.用做软件开发与维护机构对其进行软件开发项目的能力的自我评估工具; b.用做改进开发与维护过程的工具,标准指出过程改进的方向; c.帮助采购机构确定潜在供货商的能力; d.通过罗列资格认证与培训计划课程,指导评估人员的培训。16. ISO 9000-3质量管理系统的基本原理 【基本原理和方法】a.顾客关注。机构依靠它们的顾客,所以应当理解当前的与未来的顾客需要;b.领导-建立并维护一个积极的内部环境中行使领导权,以实现机构的目标;c.人们的投入。人是机构之本,他们在各机构层次的全身心投入使得他们的能力能用于为机构谋益;d.过程方法-当把活动与资源作为过程管理的时
10、候,就更有效地达到理想的结果;e.管理理的系统方法-把过程作为一个系统管理;f.持续改进-对全面性能正在进行的改进应当在机构的日程上优先;g.决策制定的实在方法。有效决策是建立在信息分析的基础上的;h.相互支持的供货商关系。一个机构和它的供货商是互相依赖时,相互支持的供货由关系增强双方创造增加值的能力。ISO 9000-3质量管理标准的认证过程 【基本原理和方法】如何通过ISO 9000-3标准认证?a. 制订获得认证的活动计划 b. 建立机构SQA系统c. 接受认证审计 d. 维持ISO认证的规程18. 软件过程能力、软件过程成熟度、软件过程能力成熟度等级的定义【简答】软件过程能力:描述开发
11、组织或项目组遵循其软件过程能够实现预期结果的程度,它既可对整个软件开发组织而言,也可对一个软件项目而言。软件过程成熟度:一个特定软件过程被明确且有效地定义、管理、测量和控制的程度。软件过程能力成熟度等级:软件开发组织在走向成熟的途中几个具有明确定义的表示软件过程能力成熟度的平台。 19. CMM的基本思想、作用、内容(即软件过程成熟度等级的划分,各等级下软件过程的特点) 【基本原理和方法】CMM的基本思想CMM软件质量等级思想: a.由于软件危机等问题是由我们管理软件过程的方法不当引起的,所以新软件技术的应用并不会自动提高软件的生产率和质量。 b.能力成熟度模型有助于软件开发机构建立一个有规律
12、的、成熟的软件过程。改进的软件过程将开发出更高质量的软件,使更多的软件项目免受时间和经费超支之苦。作用: a.指导软件机构通过确定当前的过程成熟度并识别出对过程改进起关键作用的问题,从而明确过程改进方向和策略。 b.通过集中开展过程改进的方向和策略相一致的过程改进活动,软件机构便能稳步而有效的改进其软件过程,使其软件过程能力得到循序渐进的提高。 c.对软件过程的改进,是在完成一个又一个小的改进基础上不断进行的渐进过程,而不是一蹴而就的彻底革命。内容: CMM把软件过程从无序到有序的进化过程分成5个阶段,并把这些阶段排列形成5个逐层提高的等级,如下图所示:初始级:软件过程是无序的,有时甚至是混乱
13、的,对软件过程几乎没有定义,软件项目成功与否取决于个人努力。可重复级:建立了基本的项目管理过程(过程模型),可跟踪成本、进度和质量特性。已经建立了必要的过程规范,能重复早先类似项目的实践经验成功完成新项目。达到2级的一个目标是使项目管理过程稳定,从而使得软件机构能重复以前在成功项目中所进行过的软件项目工程实践。处于第2级成熟度的软件机构的过程能力可以概括为:软件项目的策划和跟踪是稳定的,已经为一个有纪律的管理过程提供了可重复以前成功实践的项目环境。软件项目工程活动处于项目管理体系有效控制之下,执行着基于以前项目准则且合乎现实的计划。已定义级:已经定义了完整的软件过程,软件过程已文档化、标准化。
14、所有项目均使用经批准的、文档化的标准软件过程来开发和维护软件。这一级别包含第2级的全部特征。在第3级成熟度的软件机构中,有一个固定的过程小组从事软件过程工程活动。当需要时,过程小组可以利用过程模型进行过程例化活动,还可以推进软件机构的过程改进活动。在该机构内实施了培训计划,能够保证全体项目负责人和开发人员具有完成承担的任务所要求的知识和技能。处于第3级的软件机构的能力成熟度可以概括为:无论是管理活动,还是工程活动都是稳定的。软件开发成本和进度以及产品的功能都受到控制,而且软件产品质量具有可追溯性。已管理级:软件机构对软件过程、软件产品都建立了定量的质量目标,所有项目的重要过程活动都是可度量的。
15、该机构收集了过程度量和产品度量的方法并加以运用,对软件过程和产品都有定量的理解与控制。这一级包含了第3级的全部特征。处于第4级的软件机构的能力成熟度可以概括为:处于4级成熟度的软件机构,软件过程是可度量的,软件过程在可度量的范围内运行。这一级的过程能力允许软件机构在定量的范围内预测过程和产品质量趋势,在发生偏离时可以及时采取措施予以纠正,并且可以预期软件产品是高质量的。优先级:处于5级的软件机构的能力成熟度可以概括为:软件过程是可优化的。这一级别的软件机构能够持续不断的改进其过程能力,既对现行的过程实例不断改进和优化,又借助所采用的新技术、新方法来实现未来的过程改进。第二章 软件缺陷1. 软件
16、缺陷的定义、属性:定义:a.从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;b.从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。属性:属性名称描述缺陷标识(Identifier)缺陷标识是标记某个缺陷的一组符号。每个缺陷必须有一个唯一的标识。缺陷类型 (Type)缺陷类型是根据缺陷的自然属性划分的缺陷种类。缺陷严重程度(Severity)缺陷严重程度是指因缺陷引起的失效对软件产品的影响程度。缺陷优先级(Priority)缺陷的优先级指缺陷必须被修复的紧急程度。缺陷状态(Status)缺陷状态指缺陷通过一个跟踪修复过程的进展情况。缺陷起源(Origin)缺
17、陷起源指缺陷引起的失效或事件第一次被检测到的阶段。缺陷来源(Source)缺陷来源指引起缺陷的起因。缺陷根源(Root Cause)缺陷根源指发生错误的根本因素。缺陷摘要 (Summary)用一句话概要地描述缺陷的现象缺陷描述 (Description)详细的描述缺陷重现的环境、前置条件、步骤、期望结果、实际结果等。指定的负责人 (owner/assignee)通常是负责修复该缺陷的开发人员,在有的系统中也支持开发人员修复好缺陷修改其在缺陷跟踪系统中的状态后把它指定(assign)给相关的测试人员。found in缺陷被发现的版本fixed in缺陷被修复的时候由开发人员填写。解决办法( re
18、solution )由开发人员修复缺陷的时候填写。verified in反映缺陷的修复在哪个版本被验证了附件( attachment )附加的屏幕截图、服务器或客户端日志等相关文件,便于开发人员定位缺陷的原因。2. 软件缺陷生存周期规律 【基本原理与方法】3.常见的软件缺陷度量指标 a.缺陷数量b.缺陷消除率c.缺陷潜伏期d.缺陷损耗e.缺陷密度4.缺陷消除率、缺陷潜伏期、缺陷密度5. 常用的软件缺陷管理系统BugFree 开源软件BugZilla 开源软件IBM Rational ClearQuestTestDirector第三章 软件度量1. 软件度量、软件测量的定义 【简答】软件度量(M
19、etrics)是指对软件产品、软件开发过程或者资源等对象的简单属性的定量描述。软件测量(Measure)是对软件产品、软件开发过程和资源复杂属性的定量描述,它是简单属性度量值的函数,软件测量用于事后或实时状态, 如软件可靠性。2. 为什么需要软件度量?a.任何工程化的工作都需要度量,软件工程也不例外 准确了解工程的实施情况b.项目实施之前 辅助制定软件项目的计划 估算成本和工作量,以便制定计划c.项目实施过程中 提供软件开发的可视性 跟踪和控制软件项目的开发 评估软件开发质量,进行质量控制 加强风险管理d.项目实施之后 对项目的实施情况进行评估 为后续项目的积累经验数据3.软件度量的内容a.三
20、个方面 产品:各种文档和程序 过程:各种软件开发活动 资源:各种资源如人员、费用等b.二个层次 内部属性 软件产品,过程和资源本身所具有属性,如软件产品的复杂度、程序长度等 易于度量 外部属性 软件产品,过程和资源与外部环境(用户、管理人员等)间的关系如成本、效益、可靠性、可维护性等难以度量,但由内部属性所决定4. 软件度量的方法 【简答题】a. 面向规模的度量b. 面成功能的度量c. 项目成本和工作量估算d. 软件质量度量5. 比较面向规模的度量和面向功能的度量 【基本原理和方法】评价代码行技术和功能点方法面向规模的度量:优点:简单易行,自然直观缺点:依赖于程序设计语言的表达能力和功能 软件
21、开发初期很难估算出最终软件的代码行数 对精巧的软件项目不合适 只适合于过程式程序设计语言面向功能的度量:优点:与程序设计语言无关, 在开发前就可以估算出软件项目的规模(事前)不足:没有直接涉及算法的复杂度,不适合算法比较复杂的软件系统 功能点计算主要靠经验公式,主观因素比较多 数据不好采集6. 软件规模估算、工作量估算和成本估算之间的关系 a. 软件项目成本和工作量估算极为重要b. 计算机系统中软件成本占总成本的比例很大c. 用户和项目管理人员对软件成本和工作量估算都很重视d. 软件项目成本估算比较困难e. 软件是逻辑产品,软件开发是一个逻辑思维的过程 f. 涉及多方面因素g. 软件项目成本和
22、工作量估算常用方法h. 参照和依据已完成项目的历史数据i. 将大项目分解为小项目j. 将项目按照软件生命周期分解k. 根据经验估算公式l. 上述方法可以同时、单独或者组合使用7. McCall软件质量度量体系: 质量要素: 定义了与软件质量相关联的一些要素质量要素的评价准则: 定义了能够对质量要素进行度量的一些准则软件质量度量: 定义了如何基于对质量要素的定量描述对软件质量进行度量的方法8.软件度量的定义及作用 定义:软件度量是对软件开发项目、过程及其产品进行数据定义、收集以及分析的持续性定量化过程。作用:a. 通过软件度量增加理解;b. 通过软件度量管理软件项目,主要是计划和估算、跟踪和确认
展开阅读全文