软件质量保证与测试考试复习资料.docx
- 文档编号:27112191
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:33
- 大小:132.33KB
软件质量保证与测试考试复习资料.docx
《软件质量保证与测试考试复习资料.docx》由会员分享,可在线阅读,更多相关《软件质量保证与测试考试复习资料.docx(33页珍藏版)》请在冰豆网上搜索。
软件质量保证与测试考试复习资料
第一章软件质量
1.软件定义:
软件是计算机系统中与硬件相互依存的另一局部,它是程序、数据及相关文档的集合。
【简答】
2.软件特点
a.软件是开发产生的,而不是用传统方法制造的;
b.软件不会像硬件一样有磨损;
c.很多软件不能通过已有构件组装,只能自己定义。
3.软件分类:
按照使用范围不同,把软件划分为工程软件和产品软件。
4.IEEE软件缺陷的定义
a.从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;
b.从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。
5.软件缺陷产生的原因
a.工程期限的压力;
b.产品的复杂度;
c.沟通不良;
d.开发人员的疲劳、压力或受到干扰;
e.缺乏足够的知识、技能和经验;
f.不了解客户的需求;
g.缺乏动力。
6.IEEE的软件质量定义【简答】
a.系统、部件或过程满足规定需求的程度;〔Crosby1979〕
b.系统、部件或过程满足顾客或客户需求/期望的程度。
(Juran1988)
7.Pressman的软件质量定义:
符合明确陈述的功能/性能需求、明确文档化了的开发标准和所有专业开发预期的隐含特性。
【简答】
8.Crosby,Juran,Pressman软件质量定义的比拟【根本原理和方法】(必考)
a.Crosby的定义指的是写好的软件符合由顾客和它的专业组编制的规格说明书的程度。
这也意味着包含在规格说明中的错误是不予考虑的,也不降低软件质量—显然这是缺乏的。
[1分]
b.Juran的定义旨在到达顾客满意度,这就要求对检查改正顾客的需求规格书投入大量工作。
但该定义的主要缺点是免除了顾客对软件规格书准确性、完备性的责任。
[1分]
c.Pressman定义为SQA提出了要由开发者满足的三个要求:
特定功能需求,它主要是指软件系统的输出;在合同中提出的软件质量标准;反映当今水平的专业方法的良好软件工程方法的开展水平。
实际上,Pressman定义提供了测试满足需求程度的操作方向。
[2分]
9.软件质量的内容;各维度下软件质量标准
a.产品质量,它的软件质量标准有McCall模型,Boehm模型,ISO9126模型;
b.过程质量,它的软件质量标准有软件能力成熟度模型CMM,国际标准过程模型ISO9000,软件过程改良和能力决断SPICE。
10.MaCall软件质量模型
11.应用MaCall模型分析软件质量参考试卷
MaCall软件质量模型中软件质量维度;各个维度软件质量因子的定义【简答】{【根本原理和方法】McCall软件质量模型的软件质量维度;各质量维度下软件质量因素有哪些?
}
a.产品运行维度:
正确性:
一个程序满足它的需求规约和实现用户任务目标的程度。
可靠性:
一个程序满足其所需的精确度,完成它的预期功能的程度。
效率:
一个程序完成其功能所需的计算资源和代码的度量。
完整性:
对未授权人员访问软件或数据的可控制程度。
实用性:
学习、操作、准备输入和解释程序输出所需的工作量。
b.产品修改维度:
可维护性:
定位和修复程序中一个错误所需的工作量。
可测试性:
测试一个程序以确保它完成所期望的功能所需的工作量。
灵活性:
修改一个运行的程序所需的工作量。
c.产品转移维度:
可移植性:
把一个程序从一个硬件或软件系统环境移植到另一个环境所需的工作量。
可重用性:
一个程序可以在另外一个应用程序中重用的程度。
互操作性:
连接一个系统和另一个系统所需的工作量。
12.软件质量管理的内容【简答】
a.软件质量保证(QualityAssurance)
建立起机构质量规程和标准的整体框架,这是生产高质量软件的保证。
b.软件质量规划(QualityPlanning)
从这个框架中选择适当的质量规程和标准,进行改写使之适应特定软件工程。
c.软件质量控制(QualityControl)
定义并设计软件过程,确保软件开发团队严格遵守工程质量规划和标准。
d.软件质量改良
14.软件质量本钱的定义、构成【简答】
定义:
质量本钱是为确保和保证满意的质量而发生的费用以及没有到达满意的质量所造成损失的总和,即包括保证费用和损失费用。
构成:
质量本钱=质量保证本钱+损失本钱
质量保证本钱:
为保证满意的质量而发生的费用
损失本钱:
没有到达满意的质量所造成损失
质量本钱=质量预防本钱+评价本钱+失效本钱
保证本钱=预防本钱+评价本钱
预防本钱:
预防产生质量问题〔软件缺陷〕的费用,是企业的方案性支出,专门用来确保在软件产品交付和效劳的各个环节不出现失误。
评价本钱:
是指在交付和效劳环节上,为评定软件产品或效劳是否符合质量要求而进行的试验、软件测试和质量评估等所必需的支出。
失效本钱:
分为内部的和外部的,如果在软件发布之前发现质量问题,而要求重做、修改和问题分析所带来的本钱属内部失效本钱,包括修正软件缺陷、回归测试等,以及因产品或效劳不合要求导致的延误。
15.软件质量标准的益处、分类〔包括认证标准和评估标准〕
{按照软件质量标准的内容和重点,把软件质量标准划分为认证标准和评估标准。
【简答】}
益处:
a.有能力应用最高专业级别的软件开发与维护方法学和规程;
b.开发组之间、尤其是开发与维护组之间更好的互相理解与协作;
c.软件开发者和外部参与方之间更大的合作;
d.基于采用著名开发与维护标准作为合同的一局部,使供货商和顾客之间能更好地互相理解与合作。
认证标准:
认证标准的范围是由认证的目确实定的,其目的在于:
a.使软件开发机构能够证实其有能力确保软件产品或维护效劳符合可接受的质量需求。
这是通过一个外部的实体做出认证实现的;
b.用作顾客和供货商对供货商的质量管理系统评价一致性的根底。
它可以通过由顾客实施的对供货商的质量管理系统的质量审计实现;
c.支持软件开发机构的工作,通过符合标准的需求来改良质量管理系统性能和增强顾客满意度。
评估标准:
a.用做软件开发与维护机构对其进行软件开发工程的能力的自我评估工具;
b.用做改良开发与维护过程的工具,标准指出过程改良的方向;
c.帮助采购机构确定潜在供货商的能力;
d.通过罗列资格认证与培训方案课程,指导评估人员的培训。
16.ISO9000-3质量管理系统的根本原理【根本原理和方法】
a.顾客关注。
机构依靠它们的顾客,所以应当理解当前的与未来的顾客需要;
b.领导--建立并维护一个积极的内部环境中行使领导权,以实现机构的目标;
c.人们的投入。
人是机构之本,他们在各机构层次的全身心投入使得他们的能力能用于为机构谋益;
d.过程方法--当把活动与资源作为过程管理的时候,就更有效地到达理想的结果;
e.管理理的系统方法--把过程作为一个系统管理;
f.持续改良--对全面性能正在进行的改良应当在机构的日程上优先;
g.决策制定的实在方法。
有效决策是建立在信息分析的根底上的;
h.相互支持的供货商关系。
一个机构和它的供货商是互相依赖时,相互支持的供货由关系增强双方创造增加值的能力。
ISO9000-3质量管理标准的认证过程{【根本原理和方法】如何通过ISO9000-3标准认证?
}
a.制订获得认证的活动方案
b.建立机构SQA系统
c.接受认证审计
d.维持ISO认证的规程
18.软件过程能力、软件过程成熟度、软件过程能力成熟度等级的定义【简答】
软件过程能力:
描述开发组织或工程组遵循其软件过程能够实现预期结果的程度,它既可对整个软件开发组织而言,也可对一个软件工程而言。
软件过程成熟度:
一个特定软件过程被明确且有效地定义、管理、测量和控制的程度。
软件过程能力成熟度等级:
软件开发组织在走向成熟的途中几个具有明确定义的表示软件过程能力成熟度的平台。
19.CMM的根本思想、作用、内容〔即软件过程成熟度等级的划分,各等级下软件过程的特点〕{【根本原理和方法】CMM的根本思想CMM软件质量等级}
思想:
a.由于软件危机等问题是由我们管理软件过程的方法不当引起的,所以新软件技术的应用并不会自动提高软件的生产率和质量。
b.能力成熟度模型有助于软件开发机构建立一个有规律的、成熟的软件过程。
改良的软件过程将开发出更高质量的软件,使更多的软件工程免受时间和经费超支之苦。
作用:
a.指导软件机构通过确定当前的过程成熟度并识别出对过程改良起关键作用的问题,从而明确过程改良方向和策略。
b.通过集中开展过程改良的方向和策略相一致的过程改良活动,软件机构便能稳步而有效的改良其软件过程,使其软件过程能力得到循序渐进的提高。
c.对软件过程的改良,是在完成一个又一个小的改良根底上不断进行的渐进过程,而不是一蹴而就的彻底革命。
内容:
CMM把软件过程从无序到有序的进化过程分成5个阶段,并把这些阶段排列形成5个逐层提高的等级,如下列图所示:
初始级:
软件过程是无序的,有时甚至是混乱的,对软件过程几乎没有定义,软件工程成功与否取决于个人努力。
可重复级:
建立了根本的工程管理过程(过程模型),可跟踪本钱、进度和质量特性。
已经建立了必要的过程标准,能重复早先类似工程的实践经验成功完成新工程。
到达2级的一个目标是使工程管理过程稳定,从而使得软件机构能重复以前在成功工程中所进行过的软件工程工程实践。
处于第2级成熟度的软件机构的过程能力可以概括为:
软件工程的筹划和跟踪是稳定的,已经为一个有纪律的管理过程提供了可重复以前成功实践的工程环境。
软件工程工程活动处于工程管理体系有效控制之下,执行着基于以前工程准那么且符合现实的方案。
已定义级:
已经定义了完整的软件过程,软件过程已文档化、标准化。
所有工程均使用经批准的、文档化的标准软件过程来开发和维护软件。
这一级别包含第2级的全部特征。
在第3级成熟度的软件机构中,有一个固定的过程小组从事软件过程工程活动。
当需要时,过程小组可以利用过程模型进行过程例化活动,还可以推进软件机构的过程改良活动。
在该机构内实施了培训方案,能够保证全体工程负责人和开发人员具有完成承当的任务所要求的知识和技能。
处于第3级的软件机构的能力成熟度可以概括为:
无论是管理活动,还是工程活动都是稳定的。
软件开发本钱和进度以及产品的功能都受到控制,而且软件产品质量具有可追溯性。
已管理级:
软件机构对软件过程、软件产品都建立了定量的质量目标,所有工程的重要过程活动都是可度量的。
该机构收集了过程度量和产品度量的方法并加以运用,对软件过程和产品都有定量的理解与控制。
这一级包含了第3级的全部特征。
处于第4级的软件机构的能力成熟度可以概括为:
处于4级成熟度的软件机构,软件过程是可度量的,软件过程在可度量的范围内运行。
这一级的过程能力允许软件机构在定量的范围内预测过程和产品质量趋势,在发生偏离时可以及时采取措施予以纠正,并且可以预期软件产品是高质量的。
优先级:
处于5级的软件机构的能力成熟度可以概括为:
软件过程是可优化的。
这一级别的软件机构能够持续不断的改良其过程能力,既对现行的过程实例不断改良和优化,又借助所采用的新技术、新方法来实现未来的过程改良。
第二章软件缺陷
1.软件缺陷的定义、属性:
定义:
a.从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;
b.从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。
属性:
属性名称
描述
缺陷标识(Identifier)
缺陷标识是标记某个缺陷的一组符号。
每个缺陷必须有一个唯一的标识。
缺陷类型(Type)
缺陷类型是根据缺陷的自然属性划分的缺陷种类。
缺陷严重程度(Severity)
缺陷严重程度是指因缺陷引起的失效对软件产品的影响程度。
缺陷优先级(Priority)
缺陷的优先级指缺陷必须被修复的紧急程度。
缺陷状态(Status)
缺陷状态指缺陷通过一个跟踪修复过程的进展情况。
缺陷起源(Origin)
缺陷起源指缺陷引起的失效或事件第一次被检测到的阶段。
缺陷来源(Source)
缺陷来源指引起缺陷的起因。
缺陷根源(RootCause)
缺陷根源指发生错误的根本因素。
缺陷摘要(Summary)
用一句话概要地描述缺陷的现象
缺陷描述(Description)
详细的描述缺陷重现的环境、前置条件、步骤、期望结果、实际结果等。
指定的负责人(owner/assignee)
通常是负责修复该缺陷的开发人员,在有的系统中也支持开发人员修复好缺陷修改其在缺陷跟踪系统中的状态后把它指定〔assign〕给相关的测试人员。
foundin
缺陷被发现的版本
fixedin
缺陷被修复的时候由开发人员填写。
解决方法〔resolution〕
由开发人员修复缺陷的时候填写。
verifiedin
反映缺陷的修复在哪个版本被验证了
附件〔attachment〕
附加的屏幕截图、效劳器或客户端日志等相关文件,便于开发人员定位缺陷的原因。
2.软件缺陷生存周期规律【根本原理与方法】
3.常见的软件缺陷度量指标
a.缺陷数量
b.缺陷消除率
c.缺陷潜伏期
d.缺陷损耗
e.缺陷密度
4.缺陷消除率、缺陷潜伏期、缺陷密度
5.常用的软件缺陷管理系统
BugFree开源软件
BugZilla开源软件
IBMRationalClearQuest
TestDirector
第三章软件度量
1.软件度量、软件测量的定义【简答】
软件度量(Metrics)是指对软件产品、软件开发过程或者资源等对象的简单属性的定量描述。
软件测量(Measure)是对软件产品、软件开发过程和资源复杂属性的定量描述,它是简单属性度量值的函数,软件测量用于事后或实时状态,如软件可靠性。
2.为什么需要软件度量?
a.任何工程化的工作都需要度量,软件工程也不例外
准确了解工程的实施情况
b.工程实施之前
辅助制定软件工程的方案
估算本钱和工作量,以便制定方案
c.工程实施过程中
提供软件开发的可视性
跟踪和控制软件工程的开发
评估软件开发质量,进行质量控制
加强风险管理
d.工程实施之后
对工程的实施情况进行评估
为后续工程的积累经验数据
3.软件度量的内容
a.三个方面
产品:
各种文档和程序
过程:
各种软件开发活动
资源:
各种资源如人员、费用等
b.二个层次
内部属性
软件产品,过程和资源本身所具有属性,如软件产品的复杂度、程序长度等
易于度量
外部属性
软件产品,过程和资源与外部环境(用户、管理人员等)间的关系如本钱、效益、可靠性、可维护性等
难以度量,但由内部属性所决定
4.软件度量的方法【简答题】
a.面向规模的度量
b.面成功能的度量
c.工程本钱和工作量估算
d.软件质量度量
5.比拟面向规模的度量和面向功能的度量{【根本原理和方法】评价代码行技术和功能点方法}
面向规模的度量:
优点:
简单易行,自然直观
缺点:
依赖于程序设计语言的表达能力和功能
软件开发初期很难估算出最终软件的代码行数
对精巧的软件工程不适宜
只适合于过程式程序设计语言
面向功能的度量:
优点:
与程序设计语言无关,在开发前就可以估算出软件工程的规模(事前)
缺乏:
没有直接涉及算法的复杂度,不适合算法比拟复杂的软件系统
功能点计算主要靠经验公式,主观因素比拟多
数据不好采集
6.软件规模估算、工作量估算和本钱估算之间的关系
a.软件工程本钱和工作量估算极为重要
b.计算机系统中软件本钱占总本钱的比例很大
c.用户和工程管理人员对软件本钱和工作量估算都很重视
d.软件工程本钱估算比拟困难
e.软件是逻辑产品,软件开发是一个逻辑思维的过程
f.涉及多方面因素
g.软件工程本钱和工作量估算常用方法
h.参照和依据已完成工程的历史数据
i.将大工程分解为小工程
j.将工程按照软件生命周期分解
k.根据经验估算公式
l.上述方法可以同时、单独或者组合使用
7.McCall软件质量度量体系:
质量要素:
定义了与软件质量相关联的一些要素
质量要素的评价准那么:
定义了能够对质量要素进行度量的一些准那么
软件质量度量:
定义了如何基于对质量要素的定量描述对软件质量进行度量的方法
8.软件度量的定义及作用
定义:
软件度量是对软件开发工程、过程及其产品进行数据定义、收集以及分析的持续性定量化过程。
作用:
a.通过软件度量增加理解;
b.通过软件度量管理软件工程,主要是方案和估算、跟踪和确认;
c.通过软件度量指导软件过程改善,主要是理解、评估和包装。
软件度量对不同的实施对象,具有不同的效用。
9.软件度量的内容
按照度量主题划分,包括产品度量、过程度量、资源度量。
10.软件度量的层次
内部度量,外部度量。
11.简要描述软件本钱估算的过程
规模度量-->工作量估算-->本钱估算
12.比拟功能点方法和代码行方法
功能点方法:
a.“功能〞不能直接度量,需要依靠其他度量结果导出
b.功能点度量涉及多种因素
c.工程开发初期就可估算出
d.功能点计算目前主要基于经验公式
代码行方法:
优点是简单易行、自然直观。
缺点:
依赖于程序设计语言的表达能力和功能;
软件开发初期很难估算出最终软件的代码行数
对精巧的软件工程不适宜
只适合于过程式程序设计语言
13.CoCoMo模型的三个层次【简答】
a.根本CoCoMo模型,系统开发的初期,估算整个系统的工作量(包括维护)和软件开发和维护所需的时间;
b.中间CoCoMo模型,估算各个子系统的工作量和开发时间;
c.详细CoCoMo模型,估算独立的软构件,如各个子系统的各个模块的工作量和开发时间。
第四章软件质量保证
1.软件质量保证的定义【简答】
一个有系统的、有方案的行动集合,它提供软件产品开发、维护过程符合已建立的技术需求、跟上方案安排和在预算限制之内进行管理上的需求充分信任所必需的。
〔Daniel〕
2.软件质量保证体系结构〔其中包含哪些SQA部件;各SQA部件之间的关系〕
包含的SQA部件:
【根本原理和方法】
工程前SQA部件
工程生命周期SQA部件
SQA根底设施部件
软件质量管理部件
标准化、认证和评估部件
SQA组织部件
各SQA部件之间的关系:
SQA总是由一系列范围很宽的SQA部件组成,这些部件都被用来挑战软件错误的各种来源,并到达可接受的水平的软件质量。
vSQA的任务在质量保证任务领域中是独特的,这是由软件的特性决定的。
v此外,进行软件开发与维护的环境直接影响SQA部件。
3.工程前SQA部件——建议草案评审、合同草案评审、工程开发方案、软件质量方案等。
【根本原理和方法】
4.软件生存周期SQA部件——软件设计评审、专家观点、同行评审、软件测试、软件维护,以及针对外部参与方的质量保证措施等【根本原理和方法】
5.软件质量根底设施部件
a.软件维护规程和工作条例;
b.支持性软件质量手段;
c.维护组的培训和认证;
d.预防性和改正性措施;
e.配置管理;
f.软件维护文档和质量纪录。
6.软件质量管理部件
a.性能控制—通过定期报告、定期员工会议和访问维护支持中心来实现;
b.改正性维护的质量度量;
c.改正性维护的质量费用;
d.完善性维护和适应性维护的管理性工具主要应用于软件控制开发工程使用。
7.软件标准——认证标准和评估标准;常见的软件标准
认证标准:
ISO9000-3标准
评估标准:
SEICMM评估标准
8.软件质量保证组织部件
a.Management管理
b.SQAUnit软件质量保证单元
c.SQATrustees软件质量保证委托人
d.SQACommittees软件质量保证委员会
e.SQAForums软件质量保证座谈会
9.适用外部参与方使用的质量保证部件【根本原理和方法】
应用于外部参与方大多数SQA控制是在有关各方之间签署的合同中规定的。
10.规程和工作条例之间的关系
11.为什么需要定义规程和工作条例
a.以最有效、高效的方式执行任务、过程或活动,而不偏离质量需求;
b.软件系统开发与维护所涉及人员之间的有效、高效的交流。
执行的统一性、到达符合规程与工作条例,较少导致软件出错的错误理解。
c.简化机构中各种实体执行的任务与活动之间的协调。
较好的协调意味着较少的错误。
12.模板的定义、作用{【简答】模版的定义}
定义:
在软件工程领域,模板指的是小组或机构创立的用于编辑报告和其他形式文档的格式。
作用:
对于开发组:
a.方便文档的编制过程,因为节省了详细构建报告结构所需的时间和精力。
大多数机构许可从SQA公共文件拷贝或者从机构的企业内部网下载模板,这样甚至可以不用键入新文档的目录。
b.确保开发人员编制的文档更完善,因为文档中的所有主题都已经定义好了,并且被使用这此模板的大量专业人员反复评审过。
不太可能发生诸如漏掉主题这样的常见错误。
c.新组员的参加更容易,这是因为对模板熟悉。
由于新成员已经在其他机构单位或小组工作过,他们从前面的工作中可能已经了解模板,而文档的标准结构是根据模板编制的,从而寻找信息变得简单得多。
它同样可以使正在进行的文档编制工作顺利,不管编制了文档某些局部的那位小组成员是否已经离开。
d.方便文档评审,如果文档是基于一个适宜的模板建立的,就不需要研究文档结构和确定其完备性。
它同样简化已完成文档的评审工作,因为文档的结构是标准的,并且评审者熟悉评审的预期内容(章、节和附录)。
出于这种一致性.评审将会更彻底而又不那么费时。
对于软件维护组:
更容易找到执行维护任务所需的信息。
13.对于员工进行培训和认证,其目标是什么?
a.使新员工均掌握以足够的效率与有效性水平执行软件开发和维护任务所需的知识与技能;
b.这种培训有利于新小组成员的融入;
c.通过传授风格、结构规程和工作条例,确保软件产品(文档和代码)同机构标准相符;
d.和同机构风格、结构规程及工作条例的符合性;
e.传播SQA规程的知识;
f.确保关键软件开发和维护职位的候选者是有适宜资格的。
14.培训和认证的实施过程
a.确定每个职位的专业知识要求;
b.确定专业培训和更新需要;
c.方案专业培训工程;
d.方案专业更新工程。
e.确定需要认证的职位;
f.方案认证过程;
g.发布培训、更新、认证工程;
h.跟踪已培训和已认证人员。
15.改正性措施和预防性措施的定义【简答】
改正性措施:
一个常规使用的反应过程,包括质量不符合性信息收集、非常规源的识别和分析以及改良的习惯做法与规程的建立和吸收,连同对它们约执行的控制和对它们的结果的测量。
预防性措施:
一个常规使用的反应过程,包括潜在质量问题信息的收集、偏离质量标准的识别与分析以及改良的习惯做法与规程的建立与吸收,连同对它们执行的控制和对它们的结果的测量。
16.软件配置、软件配置管理的定义【简答】
软件配置是软件生存周期各个阶段活动的产物。
软件配置管理是一个负责应用(计算机化的或非计算机化的)技术工具和管理规程、使之能够完成为维护SCI和软件配置版本所需任务的SQA部件。
17.软件配置管理的工作内容、作用【
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 质量保证 测试 考试 复习资料
![提示](https://static.bdocx.com/images/bang_tan.gif)