标准和证书
多个国家和国际标准机构、专业和行业组织都参与了SQA标准的制定。
以下机构和组织是 SQA 和软件工程标准的主要制定者 -
- IEEE(电气和电子工程师协会)计算机协会
- ISO(国际标准化组织)
- DOD(美国国防部)
- ANSI(美国国家标准协会)
- IEC(国际电工委员会)
- EIA(电子工业协会)
这些组织为软件开发和维护组织中执行的专业和管理活动的质量提供最新的国际标准。
他们还通过独立的专业质量审核提供 SQA 认证。这些外部审计评估 SQA 系统开发及其实施方面的成就。定期审核后授予的认证仅在下次审核之前有效,因此必须更新。目前,ISO 9000 认证服务是欧洲和其他国家最著名的 SQA 认证提供商。
它们还提供用于自我评估组织的 SQA 系统及其运行的工具。由软件工程研究所 (SEI)、卡内基梅隆大学开发的容量成熟度模型 (CMM) 和 ISO/IEC Std 15504 都是这种方法的示例。
质量保证标准
软件质量保证标准可分为两大类 -
软件质量保证管理标准,包括认证和评估方法(质量管理标准)
软件项目开发过程标准(项目过程标准)
质量管理标准
这些重点关注组织的 SQA 系统、基础设施和需求,同时将方法和工具的选择留给组织。通过质量管理标准,组织可以稳定地确保其软件产品达到可接受的质量水平。
示例- ISO 9000-3 和能力成熟度模型 (CMM)
项目流程标准
这些重点关注实施软件开发和维护项目的方法。这些标准包括以下内容 -
- 应采取的步骤
- 设计文件要求
- 设计文件内容
- 设计审查和审查问题
- 待执行的软件测试
- 测试主题
当然,由于其特性,此类中的许多 SQA 标准可以充当软件工程标准,反之亦然。
下表总结了这两类标准的特征。
特征 | 质量管理标准 | 项目流程标准 |
---|---|---|
目标单位 | 软件开发、维护和特定 SQA 单元的管理 | 软件开发和维护项目团队 |
主要焦点 | SQA 系统、基础设施和要求的组织 | 执行软件开发和维护项目的方法 |
标准的目标 | 要实现“什么” | “如何”执行 |
标准的目标 | 保证供应商的软件质量并评估其软件过程能力 | 确保供应商的软件质量并评估其软件过程能力 确保特定软件项目的质量。 |
例子 | ISO 9000-3 SEI 的 CMM | ISO/IEC 12207 IEEEStd 1012-1998 |
ISO 9001 认证
ISO(国际标准化组织)是一个由国家标准机构组成的全球联盟。ISO 技术委员会制定国际标准。ISO 与国际电工委员会 (IEC) 在电工标准化的所有事务上密切合作。
国际标准是根据 ISO/IEC 指令第 2 部分中给出的规则起草的。技术委员会通过的国际标准草案将分发给成员机构进行投票。ISO 9001 由 ISO/TC 176 质量管理和质量保证技术委员会、SC 2 质量体系小组委员会制定。
过程方法
本国际标准提倡在开发、实施和改进质量管理体系的有效性时采用过程方法,通过满足顾客要求来提高顾客满意度。为了使组织有效运作,它必须确定和管理众多相互关联的活动。使用资源并进行管理以便将输入转化为输出的一项或一组活动可以被视为一个过程。
通常,一个过程的输出直接形成下一过程的输入。组织内流程系统的应用,以及这些流程的识别和交互,以及对它们的管理以产生期望的结果,可以称为“流程方法”。
流程方法的优点是它提供对流程系统内各个流程之间的链接以及它们的组合和交互的持续控制。当在质量管理体系中使用时,这种方法强调以下内容的重要性 -
- 了解并满足要求
- 需要从附加值的角度考虑流程
- 获得流程绩效和有效性的结果
- 基于客观测量的流程持续改进
ISO 9001 - 软件应用:TickIT Initiative
TickIT 于 20 世纪 80 年代末由英国软件行业与英国贸易和工业部合作推出,旨在促进开发一种使 ISO 9001 适应软件行业特征的方法,称为 TickIT 计划。
此外,TickIT 还专注于信息技术 (IT)。它涵盖了整个商业软件开发和维护服务范围。TickIT 现由 BSI(英国标准协会)的 DISC 部门管理和维护,获得英国和瑞典 IT 组织的认证认可。
其活动包括 -
出版 TickIT 指南,支持软件行业推广 ISO 9001 认证的努力。当前指南(5.0 版,TickIT,2001 年)包含对 ISO/IEC 12207 和 ISO/IEC 15504 的引用,已分发给所有 TickIT 客户。
对软件质量体系进行基于审计的评估,并就软件开发和维护流程及其管理的改进向组织提供咨询。
进行 ISO 9000 认证审核。
进行基于审核的评估和认证审核的 TickIT 审核员均已在国际注册审核员协会 (IRCA) 注册。除其他外,注册 IRCA 审核员必须具有管理和软件开发经验;他们还必须成功完成审计员课程。
注册首席审核员必须具有进行和指导 TickIT 审核的丰富经验。