软件质量保证过程(SQA)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件质量保证过程
软件质量保证过程作为一种独产的审查活动贯穿于整个软件开发过程.质量控制人员类似于软件开发过程中的过程警察,其主要职责是:检查开发和管理活动是否与制定的过程策略、标准和流程一致;检查工作产品是否遵循模板规定的内容和格式。此文档从软件开发过程的各个阶段来描述软件质量保证过程。
1.计划阶段
目的和范围:
项目计划过程的目的是计划并执行一系列必要的活动,以便在不超出项目预算和日程安排的前提下,将优质的产品交付给客户。项目计划过程适用于公司的所有项目,但每个项目可以根据各自的不同情况对该过程进行裁剪。
进入标准:
⏹项目启动会议已经结束;
⏹在项目的生命周期中,根据项目的跟踪结果,需要对项目计划进行修改和完善。
输入:
⏹项目启动报告;
⏹项目提案书;
⏹项目相关文档;
⏹组织财富库中以往类似的经验文档。
退出标准:
项目计划已通过评审、批准并确立。
输出:
评审后的项目计划文档包括:
⏹软件开发质量计划;
⏹软件配置管理计划。
过程描述:
项目计划包含3个需要在项目中执行和管理的主要计划,如下:
⏹软件项目管理计划;
⏹软件项目质量管理计划;
⏹软件配置管理计划。
软件项目管理计划涉及项目中所有与项目管理相关的问题(从项目开始到结束)。
软件项目质量管理计划涉及与质量相关的需求,这些需要在产品中实现,并保证用于构筑产品的项目过程。由于质量是产品创建的一部分,所以将软件项目管理计划和软件项目质量管理计划合成一个计划文档,称为软件开发质量计划。
软件配置管理计划用于管理与配置管理相关的需求,这些需求与工作产品和可交付产品有关。该计划的目的在于:为执行软件工程相关活动提供依据,并在整个开发和维护过程中对软件项目进行管理。
可以使用不同的检查表来制定软件开发质量计划和软件配置管理计划。如下每个计划都将包含以下3点:
⏹目标;
⏹执行方法;
⏹当前状态。
前两点不会经常变更,但第三点则被认为会在执行跟踪时被修改。因此,前两点通常被直接放到计划中,而第三点则以链接的方法放到计划中。
(1)制订软件开发质量计划
软件开发质量计划包括软件项目管理计划、软件项目质量管理计划。
①制订软件项目管理计划
软件项目管理计划的主要内容包括基础设施计划,进度计划(包括各种类型的估算)、风险管理计划、项目培训计划、执行计划、客户管理计划。
⏹基础设施计划
基础设施计划包括项目开始执行前必须到位的所有需求,它需要解决以下问题:软件工程需求、基础设施需求、角色和职责、内外部接口、过程需求、知识和技能需求。
⏹进度计划
进度计划涉及制定合理可用的项目进度。
在制定项目进度时,需要进行下面的估算:规模(Size)、工作量(effort)。
项目进度需要描述以下内容:执行的活动、估算的人时、投入的人员、责任人和时间线、里程碑事件的标识。
⏹风险管理计划
风险管理包括:标识风险事件(与管理相关的风险、与执行相关的风险,与客户相关的风险等)、评估风险并设定风险优先级、制订风险缓解和应急计划并跟踪该计划。
⏹项目培训计划
根据项目及人员结构制订项目培训计划,包括业务领域知识、技术、工具等方面的培训计划。
⏹执行计划
项目执行计划包含了与执行当前项目关系最大的生命周期模型。该计划对组织级执行模型进行了裁剪。项目生命周期模型通常包括:项目执行的阶段、各阶段的输入和输出、可交付的产品、需要迭代(反复)的阶段。
②制订软件项目质量管理计划
制订软件项目质量管理计划包含如下主要内容:
⏹项目设定的质量标准;
⏹同级评审计划:同级评审计划中描述了在不同的软件生命周期开发阶段,对不同的
工作产品所采用的同级评审类型;
⏹测试计划:测试计划包括对可执行文件/模块或整个系统将要进行的各种测试。根
据项目测试过程来制定测试计划;
⏹度量管理计划:通过裁剪组织级的度量过程来制定项目度量管理计划。
⏹缺陷预防计划:管理、开发和测试人员互相配合制订缺陷预防计划,防止已识别的
缺陷再次发生;
⏹过程改进计划:项目级过程改进的机会要记录到过程改进计划中。这些机会主要来
源于度量分析、缺陷预防分析和标识出的好的或可避免的实践。
(2)制订软件配置管理计划
软件配置管理计划主要包括以下内容:
⏹软件配置管理计划组织;
⏹角色和职责;
⏹开发/维护配置管理计划,包括可配置项的标识、命名约定、目录结构、访问控制、
变更管理、基线库创建、放入/提取(Check in/Check out)机制、版本控制;
⏹产品配置管理,包括产品中部件的可跟踪性,产品的版本设定和发布、交付的配置
管理(标识出要交付的产品构成)、需求配置管理(需求基线的确定、产品版本与
划定基线的需求版本之间的关系)、配置审计。
验证:
同级评审人员和软件质量保证人员必须对项目计划进行评审,批准后项目才能付诸实施。
配置控制:
项目经理保管所有项目计划文档。对所有项目计划文档都要进行配置管理。项目结束后,所有的项目计划文档都要保存到组织财富库中,仍受配置控制。
QA检查清单:
QA检查清单包括:
⏹软件开发质量计划;
⏹软件配置管理计划。
该阶段要确保制定了软件开发质量计划和软件配置管理计划。
2.需求分析阶段
目的和范围:
需求说明和需求管理过程的目的是为了保证开发组在开发期间对项目目标和生产出最后产品的目的有一个清晰的理解。软件需求规格说明书将作为产品测试和验证是否适合需要的基础。对于需求的变更,它可能在开发项目期间的任何时间点发生,需求的变更将要影响日程和承诺的变化,这些变化需要和客户所提出的要求相一致。
进入标准:
⏹计划已经被批准,并且项目整体的基础设施是可用的;
⏹软件的需求已经被需求收集小组捕获;
⏹对已经形成了基线的软件需求规格说明书有变更的请求时。
输入:
⏹软件的需求说明书;
⏹变更需求的请求。
退出标准:
⏹软件需求规格说明书已经经过评审并形成了基线;
⏹对已经形成基线的软件需求的变更进行了处理;
⏹形成基线的软件说明书已经经过客户批准;
⏹验收标准已经完成;
⏹所有评审的问题都已经解决。
输出:
⏹经过批准并形成基线的软件需求规格说明书;
⏹对受影响组件的重新估算文档;
⏹验收测试标准和测试计划。
过程描述:
这个过程主要处理以下两种活动:需求说明和需求管理。
需求说明指的是需求过程中形成基线的主体,它是以后进一步的设计和测试的基础。另