软件质量保证与测试考试复习资料.doc
《软件质量保证与测试考试复习资料.doc》由会员分享,可在线阅读,更多相关《软件质量保证与测试考试复习资料.doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、优质文本第一章 软件质量1.软件定义:软件是计算机系统中与硬件相互依存的另一局部,它是程序、数据及相关文档的集合。【简答】2.软件特点a.软件是开发产生的,而不是用传统方法制造的;b.软件不会像硬件一样有磨损;c.很多软件不能通过已有构件组装,只能自己定义。3.软件分类:按照使用范围不同,把软件划分为工程软件和产品软件。4.IEEE软件缺陷的定义a.从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;b.从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。5. 软件缺陷产生的原因a. 工程期限的压力;b. 产品的复杂度;c. 沟通不良;d. 开发人员的疲劳、压力
2、或受到干扰;e. 缺乏足够的知识、技能和经验;f. 不了解客户的需求;g. 缺乏动力。6.IEEE的软件质量定义【简答】a.系统、部件或过程满足规定需求的程度;Crosby 1979b.系统、部件或过程满足顾客或客户需求/期望的程度。(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缺陷被修复的时候由开发人员填写。解决方法 resolut
18、ion 由开发人员修复缺陷的时候填写。verified in反映缺陷的修复在哪个版本被验证了附件 attachment 附加的屏幕截图、效劳器或客户端日志等相关文件,便于开发人员定位缺陷的原因。2. 软件缺陷生存周期规律 【根本原理与方法】3.常见的软件缺陷度量指标 a.缺陷数量b.缺陷消除率c.缺陷潜伏期d.缺陷损耗e.缺陷密度4.缺陷消除率、缺陷潜伏期、缺陷密度5. 常用的软件缺陷管理系统BugFree 开源软件BugZilla 开源软件IBM Rational ClearQuestTestDirector第三章 软件度量1. 软件度量、软件测量的定义 【简答】软件度量(Metrics)是
19、指对软件产品、软件开发过程或者资源等对象的简单属性的定量描述。软件测量(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. 通过软件度量管理软件工程,主要是方案和估算、跟踪和确认;c. 通过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 质量保证 测试 考试 复习资料
限制150内