做软件质量管理需要哪方面的知识,度量要如何开展?

发表于:2022-2-15 09:27

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:胡杨树    来源:知乎

  非高手,纯属个人理解;先了解下软件与传统制造业的区别如下图:
  在制造业中,生产活动占有不可忽视的地位,它所需要的成本投入、人员、场地等都是设计工作无法相比的,而软件恰恰相反。软件开发相当于制造业的产品设计;而软件的生产是指软件开发完成以后将代码往各种介质上拷贝,这部分工作无论是技术含量还是投入的人力、物力都极为有限,特别是在批量生产的条件下,这种差别更为明显,主要表现如下:
  1.传统的制造业在得到产品后,必须在运输和仓储方面做出相应的安排,付出必要的代价。而对软件来说,这些需求是微乎其微的,甚至可以忽略不计。 
  2.软件产品的功能度和复杂性要比制造业产品高得多,它在投入使用后,所能发挥的功能也是其他任何硬件产品无法相比的。 
  所以,制造业或硬件的质量问题主要反映在生产和储运过程中,而软件产品的质量问题主要来自开发过程。国外很多的大公司,QA的职责就是测试(主要是系统测试)。最初,几乎所有的公司都是这样的。后来,由于需求越来越多又缺乏有效的项目计划和项目管理,留给系统测试的时间很少。另外,需求变化太快,没有完整的需求文档,测试人员就只能根据自己的想象和经验来测试。这样一来,产品的质量就参差不齐,事先预防的QA职能就应运而生。 针对软件方面也就有了SQA的工作,由于分工的细致化,管理体系的复杂化,这些SQA人员将逐渐的转化为SEPG人员,并且更加了解管理知识,而SQA工作渐渐成为他们的兼职工作。
  软件质量管理大致就是SQA的工作,那就要了解软件工程理论;了解高成熟度的软件开发过程的实施要求及方法;对项目日常活动与规程的符合性进行检查;收集有效方法和项目经验,提供过程改进依据;发现过程中存在的与标准软件过程不符合问题,及时采取纠正措施,以确保项目过程的质量;对生命周期过程中创建的工作产品进行审计,验证工作产品在格式和内容上是否符合适当的标准,来保证项目实施过程中产生的工作产品的质量;对处理过程改进意见和建议,负责流程文件的制定、试点和维护工作(每个公司的SQA的工作都有差别,所以就简单说说通用的)。
  需要的知识:
  1 编程语言(这是废话),一定要参与软件测试,只有这样才能了解软件的质量问题。
  2 国家标准、行业标准、企业标准(这个你自己搞定):GB/T19000-2000 idt ISO9000:2000 质量管理体系 基础和术语、GB/T19001-2000 idt ISO9001:2000 质量管理体系 要求、GB/T19004-2000 idt ISO9004:2000 质量管理体系 业绩改进指南、 《GB/T11457-1995 软件工程术语》、《GB/T12504-1990 计算机软件质量保证计划规范》、《GB/T8566-1995 信息技术软件生存期过程》、《GB/T8567-1988 计算机软件产品开发文件编制指南》、《GB/T1526-1989 信息处理数据流程图、系统流程图、程序网络图和系统资源图的文件编制符号及约定》、《GB/T12505-1990 计算机软件配置管理计划规范》、《GB/T17544-1998信息技术/软件包/质量要求和测试附录A / 附录B / 附录C》、《GB/T16260-1996信息技术/软件产品评价/质量特性及其使用指南 附录A》等等(加上你们公司内部标准就差不多了)。
  3 质量方面的书。
  如何度量:推荐ISO/IEC 9126(大致如下图):
  还有个Mccall质量度量模型(大致如下图):
  如何展开:推荐CMMI模型。也可根据上文中如何度量展开。
  观点:在开发过程中有效防止软件产生缺陷,主要措施就是“不断提高技术水平,不断提高规范水平”,其实就是“软件过程改进”。当软件刚刚产生时马上进行质量检验,及时找出消除软件中的缺陷,最常用的方法是技术评审、软件测试和过程检验(无论制造业还是软件业的质量问题,都是越早发现损失就越少的)。
  职责:质量人员负责制定质量计划(细分为:质量要素分析、质量目标、人员与职责、过程检查计划、技术评审计划、软件测试计划、缺陷跟踪方法、审批意见)、过程检查(找出不符合规范的工作过程和工作成果,及时与开发人员沟通解决)、技术评审、软件测试、软件过程改进。任何与软件开发、管理工作相关的人员都会对质量生产影响,都要对质量负责。所以不能把质量问题简单推到质量人员和测试人员那,谁的权力越大他的质量责任就越大。
  随便写写,最后一句话:开发软件产品或发展传统制造业都是为了赚钱,那么提高软件或传统制造业的质量,所付出的代价是有上限的,所以不要太吹毛求疵了。利润才是王道(开玩笑,哈哈)。欢迎有兴趣的知友继续回答。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号