• 【软件质量与软件测试 软件质量标准】


    第五章 软件质量标准

    5.1 软件质量标准概述
    5.1.1 国际标准
    • 由国际机构指定和公布供各国参考的标准称为国际标准。
    • 20世纪60年代初,国际标准化组织建立了“计算机与信息处理技术委员会”,专门负责与计算机有关的标准工作。
    5.1.2 国家标准
    • 由政府或国家级的机构制定或批准,适用于本国范围的标准, 称为国家标准。如
    • GB(GuoBiao) 中华人民共和国国家技术监督局是中国的最高标准化机构,它所公布实 施的标准简称为“国标”。
    • ANSI(American National Standards Institute) 美国国家标准协会。是美国一些民间标准化组织的领导机构,具有一定的权威性。
    5.1.3 行业标准
    • 行业标准是由一些行业机构、学术团体或国防机构制定,并适 用于某个业务领域的标准。
    • 中华人民共和国国家军用标准(GJB)。是由我国国防科学技 术工业委员会批准,适合国防部门和军队使用的标准。 例如,1988年发布实施的GJB473-88军用软件开发规范。
    • 美电气 和电子工程师学会(Institute Of Electrical and Electronics Engineers,IEEE),该学会成立了软件标准技术委员会 (SESS),开展软件标准化活动。
    • 美国国防部标准(Department of Defense-Standards, DOD-STD)。美国军用标准(Military-Standards, MIL-S)。
    • 另外,我国的一些部门(如信息产业部)也开展了软件标准化 工作,制定和公布了一些适合本部门工作需要的规范。
    • 这些规范的制定参考了国际标准和国家标准。这些标准的制定 对各自行业的软件工程起到了强有力的推动作用
    5.1.4 企业规范
    • 一些大型企业或公司,由于软件工程工作 的需要,制定适用于本部门的规范。
    • 例如,美国IBM公司通用产品部(General Products Division)1984年制定“程序设 计开发指南”
    5.1.5 项目规范
    • 一些大型企业或公司,由于软件工程工作 的需要,制定适用于本部门的规范。
    • 例如,美国IBM公司通用产品部(General Products Division)1984年制定“程序设 计开发指南”
    5.2 ISO9001和9000-3在软件中的应用
    • ISO 9001提供了一套关于质量管理的具体要求
    • 而ISO 9000-3则针对软件开发过程中的特殊要求进行了说明。两者相互结合,可以为软件开发建立完整的质量管理体系。
    5.3 能力成熟模型CMM&CMMI
    5.3.1 CMM质量思想
    • CMM提供了一种全面管理和改进软件开发过程的方法,它把软件开发过程中的各个阶段和活动划分为5个能力级别,通过逐步提高能力级别来保证软件开发过程的质量。
    5.3.2 CMM关键域
    • 初始级
    • 可重复级
    • 已定义级
    • 已管理级
    • 优化级
    5.3.3 PSP和TSP
    • PSP(个人软件过程)是SEI提出的一种针对个人的软件开发过程模型
    • TSP(团队软件过程)则是针对团队而提出的一种软件开发过程模型。
    5.3.4 CMMI——软件能力成熟度集成模型
    • CMMI是CMM继承者,强调了不仅要改进软件开发过程,还要把软件开发和企业战略目标相结合。
    5.3.5 CMM中的质量框架

    CMM中的质量框架包括过程改进、项目管理、支持过程、组织级过程等。

    5.4 IEEE软件工程标准
    5.4.1 IEEE 730:2001 结构与内容

    定义了软件测试计划应该包括哪些内容,以及这些内容的组成结构。

    • 目的
    • 参考文档
    • 管理
    • 文档
    • 标准、实践、约定和度量
    • 软件评审
    5.4.2 IEEE/EIA Std 12207——软件生命周期过程

    定义了软件生命周期的13个过程,包括需求、设计、实现、测试、维护等各个方面。

    • 主要过程:包括5个过程,这些过程供各主要当事方(如需方、供方、开发者、运行者 和维护者)在参与或完成软件产品开发、运行或维护时使用
    • 包括8个过程,其每个过程均有明确的目的支持其它过程,帮助软件项目获 得成功及良好的产品质量。
    5.4.3 IEEE Std 1012——验证与确认

    定义了软件验证和确认的活动,并提供了相关的标准和指南。

    • 验证是用来评价某一系统或某一组件的过程,来判断给定阶段的产 品是否满足该阶段开始时施加的条件。
    • 确认是开发过程中间或结束时对某一系统或某一组件进行评价的过 程,以确认它是否满足规定的需求。
    5.4.4 IEEE Std 1028——评审

    定义了软件评审的活动,并提供了相关的标准和指南。

    5.5 其它质量标准
    5.5.1 ISO/IEC 15504-2:2003软件过程评估标准

    是一种基于过程的评估模型,可以帮助企业评估自己的软件开发过程的效率和质量。

    5.5.2 Tick IT

    是欧洲计算机应用技术研究所(ECAT)开发的一套面向中小企业的软件质量认证标准。

    5.6小结
    • 从通用标准的概念、层次等方面展开,侧重于软件 质量标准的介绍,并从整体上了解软件行业标准体 系结构和内容。
      • CMM为软件过程改进提供了一个框架,将整个软件改进 过程分为5个成熟度等级,这5个等级定义了一个有序的 尺度,用来衡量组织软件过程成熟度和评价其软件过程能 力。
      • 在每一级中,定义了达到该级过程管理水平所应解决的主 要问题和关键域。
    • CMM成功与否,与组织内部有关人员的积极参与 和创造性活动密不可分,而且,CMM并未提供有 关子过程实现域所需要的具体知识和技能。
      • 因此,个体软件过程和团体软件过程应运而生
  • 相关阅读:
    【ffmpeg】视频解码器
    如何看待AIGC技术?【模板】
    Day08--自定义组件的插槽
    Qt项目实战 杂谈一二:中文乱码事情小,处理不好头发少
    MySQL高级SQL语句(存储过程)
    leetcode 698. 划分为k个相等的子集-状态压缩+记忆搜索的一步步实现
    计算机的发展史,让你想到了什么?
    批量删除docker过期停止的容器(全)
    机器学习(十一):KNN(K近邻)
    【从0-1成为架构师】性能优化的手段
  • 原文地址:https://blog.csdn.net/muzillll/article/details/130909790