SQA组件


软件质量保证(SQA)是一系列确保软件工程过程质量的活动。它确保开发的软件满足并符合定义或标准化的质量规范。SQA 是软件开发生命周期 (SDLC) 中的一个持续流程,定期检查开发的软件以确保其满足所需的质量指标。

SQA 实践在大多数类型的软件开发中都得到实现,无论使用何种底层软件开发模型。SQA 合并并实施软件测试方法来测试软件。SQA 不是在完成后检查质量,而是在开发的每个阶段进行质量测试,直到软件完成。通过 SQA,只有当前/前一阶段符合所需的质量标准后,软件开发过程才会进入下一阶段。SQA 通常遵循一项或多项行业标准,帮助构建软件质量指南和实施策略。

它包括以下活动 -

  • 流程定义和实施
  • 审计
  • 训练

流程可以是 -

  • 软件开发方法论
  • 项目管理
  • 配置管理
  • 需求开发/管理
  • 预估
  • 软件设计
  • 测试等

一旦流程被定义和实施,质量保证就有以下职责 -

  • 识别流程中的弱点
  • 纠正这些弱点以持续改进流程

SQA系统的组成部分

SQA 系统总是结合了广泛的 SQA 组件。这些组件可以分为以下六类 -

项目前组件

这确保了考虑到所需资源、时间表和预算,明确界定了项目承诺;正确确定了发展计划和质量计划。

项目生命周期活动评估的组成部分

项目生命周期由两个阶段组成:开发生命周期阶段和运维阶段。

开发生命周期阶段组件检测设计和编程错误。其组件分为以下子类:评论、专家意见和软件测试。

运维阶段使用的SQA组件包括专门的维护组件和开发生命周期组件,主要用于改进维护任务的功能。

基础设施错误预防和改进的组成部分

这些组件应用于整个组织,其主要目标是根据组织积累的 SQA 经验消除或至少降低错误率。

软件质量管理的组成部分

此类组件涉及多个目标,例如开发和维护活动的控制,以及引入主要防止或最大程度地减少进度和预算失败及其结果的早期管理支持行动。

标准化、认证和 SQA 体系评估的组成部分

这些组件在组织内实施国际专业和管理标准。该课程的主要目标是利用国际专业知识,改善组织质量体系与其他组织的协调,并根据通用标准评估质量体系的成就。各种标准可分为两大类:质量管理标准和项目过程标准。

组织 SQA——人员组成部分

SQA 组织基础包括管理人员、测试人员、SQA 部门以及对软件质量感兴趣的人员,如 SQA 受托人、SQA 委员会成员和 SQA 论坛成员。他们的主要目标是启动和支持 SQA 组件的实施,检测 SQA 程序和方法的偏差,并提出改进建议。

项目前软件质量组件

这些组件有助于改进项目开始前采取的初步步骤。它包括 -

  • 合同审查
  • 开发和质量计划

合同审查

通常,软件是为了与客户协商的合同或为了开发要嵌入到硬件产品中的固件的内部订单而开发的。在所有这些情况下,开发单位都致力于商定的功能规范、预算和时间表。因此,合同审查活动必须包括对项目建议书草案和合同草案的详细审查。

具体来说,合同审查活动包括 -

  • 明确客户的要求

  • 审查项目进度和资源需求估计

  • 评估专业人员执行拟议项目的能力

  • 评估客户履行义务的能力

  • 开发风险评估

开发和质量计划

与组织或同一组织的内部部门签订软件开发合同后,准备项目的开发计划及其综合质量保证活动。这些计划包括基于先前计划的额外细节和所需的修订,这些计划为当前提案和合同提供了基础。

大多数情况下,从提交投标到签订合同需要几个月的时间。在此期间,人员可用性、专业能力等资源可能会发生变化。然后对计划进行修订,以反映在此期间发生的变化。

项目开发计划中处理的主要问题是 -

  • 时间表
  • 所需人力及硬件资源
  • 风险评估
  • 组织问题:团队成员、分包商和合作伙伴
  • 项目方法论、开发工具等
  • 软件重用计划

项目质量计划中处理的主要问题是 -

  • 以适当的可衡量术语表达的质量目标

  • 每个项目阶段的开始和结束标准

  • 审查、测试和其他预定验证和确认活动的列表