软件质量保证(SQA)是一套确保软件工程流程质量的活动.它确保开发的软件符合并符合定义的或标准化的质量规范. SQA是软件开发生命周期(SDLC)中的一个持续过程,它定期检查开发的软件以确保其满足所需的质量标准.
SQA实践在大多数类型的软件开发中实施,无论使用何种底层软件开发模型. SQA结合并实施软件测试方法来测试软件. SQA不是在完成后检查质量,而是在软件完成之前对每个开发阶段的质量进行测试.使用SQA,只有当前/上一阶段符合所需的质量标准时,软件开发过程才会进入下一阶段. SQA通常适用于一个或多个行业标准,有助于构建软件质量指南和实施策略.
它包括以下活动 :
流程定义和实施
审核
培训
流程可以是 :
软件开发方法
项目管理
配置管理
需求开发/管理
估算
软件设计
测试等
一旦定义并实施了流程,质量保证具有以下责任 :
识别流程中的弱点
纠正这些弱点不断改进流程
SQA系统的组件
SQA系统tem总是结合了各种SQA组件.这些组件可以分为以下六类 :
项目前组件
这确保了项目承诺已经明确定义,考虑到所需资源,时间表和预算;正确确定了开发和质量计划.
项目生命周期活动评估的组成部分
项目生命周期由两个阶段组成:开发生命周期阶段和运行维护阶段.
开发生命周期阶段组件检测设计和编程错误.其组件分为以下子类:评论,专家意见和软件测试.
在运营维护阶段使用的SQA组件包括专门的维护组件以及开发寿命循环组件,主要用于改善维护任务的功能.
基础设施错误预防和改进的组成部分
这些组件的主要目标在整个组织中应用的,是根据组织积累的SQA经验消除或至少降低错误率.
软件质量管理的组成部分
这类组件涉及多个目标,例如控制开发和维护活动,以及引入早期管理支持措施,主要是防止或最小化进度和预算失败及其结果.
standardiz的组件ation,认证和SQA系统评估
这些组件在组织内实施国际专业和管理标准.本课程的主要目标是利用国际专业知识,改进与其他组织的组织质量体系协调,并根据共同的规模评估质量体系的成就.各种标准可分为两大类:质量管理标准和项目过程标准.
组织SQA - 人体组件
SQA组织基础包括经理,测试人员,SQA单位和对软件质量感兴趣的人员,如SQA受托人,SQA委员会成员和SQA论坛成员.他们的主要目标是启动和支持SQA组件的实施,检测SQA程序和方法的偏差,并提出改进建议.
项目前软件质量组件
这些组件有助于改进项目启动前的初步步骤.它包括 :
合同审核
开发和质量计划
合同审查
通常,为与客户协商的合同或内部订单开发软件以开发固件嵌入在硬件产品中.在所有这些情况下,开发单位都致力于商定的功能规范,预算和时间表.因此,合同审查活动必须包括对项目提案草案和合同草案的详细审查.
具体而言,合同审查活动包括 :
澄清客户的要求
审查项目的进度和资源需求估算
评估专业人员执行拟议项目的能力
评估客户的能力履行义务
评估发展风险
发展和质量计划
在与组织或同一组织的内部部门签订软件开发合同后,将准备项目的开发计划及其集成的质量保证活动.这些计划包括额外的细节和基于先前计划的必要修订,这些计划为当前的提案和合同提供了基础.
大多数情况下,投标提交和签署之间需要几个月的时间.合同在此期间,员工可用性,专业能力等资源可能会发生变化.然后修改计划以反映过渡期间发生的变化.
项目开发计划中处理的主要问题是 :
时间表
所需的人力和硬件资源
风险评估
组织问题:团队成员,分包商和合作伙伴
项目方法,开发工具等.
软件重用计划
项目质量计划中处理的主要问题是 :
质量目标,以适当的可衡量术语表示
开始和结束每个项目阶段的标准
评论,测试和其他计划的验证和确认活动列表