软件开发质量管理层次模型
作者:网络转载 发布时间:[ 2013/3/5 9:57:52 ] 推荐标签:
2.1 黑盒测试
黑盒测试检验是否符合系统需求,也称功能测试或数据驱动测试。它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。
2.2 灰盒测试
灰盒测试介于白盒与黑盒二者之间,关注输出对于输入的正确性,同时也关注内部表现,但这种关注不像白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态,有时候输出是正确的,但内部其实已经错误了,这种情况非常多,如果每次都通过白盒测试来操作,效率会很低,因此需要采取这样的一种灰盒的方法。
2.3 白盒测试
白盒测试也称结构测试或逻辑驱动测试,它是在知道产品内部工作过程的情况下,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能。白盒测试的主要方法有逻辑驱动、基路测试等。
2.4 编译检查
使用开发工具所带的编译功能或专门程序对软件源码进行检查,分析和寻找源码存在的问题。
2.5 编程规范
通过人工源码检查判断源码是否符合企业已经制定的相关编程规范。制定编程规范,在企业内形成一个开发约定和规则,有利于整体风格统一、代码的可读性、可维护性和可扩展性。
2.6 编程逻辑
所编写的源码是否考虑周全,无矛盾或遗漏之处。常见问题如:忘记定义变量使用、变量没有赋值初直接使用、输入输出的数据类型与所用格式说明符不一致、没有注意数据的数值范围造成数组越界或数据溢出、输入时数组的组织方式与要求不符、循环语句可能会造成死循环、条件语句只考虑符合的情况而没有考虑例外的情况、读取文件或数据库中的数据没有考虑例外情况,等等。
2.7 编程优化
通过人工或软件检查判断是否可进一步提高源码总体性能和运行可管理性。总体性能如内存管理、数据库组织和内容、非数据库信息、任务并行性、网络多人操作、关键算法、与网络、硬件和其他系统接口对性能的影响等等;运行可管理性如便于控制系统运行、监视系统状态、错误处理;模块间通信的简单性等等。
3、文档质量管理层次
文档(包括模型)是软件开发过程中的中间成果,这些中间结果关系到软件需求的准确性完整性、设计的合理性,对软件系统的终结果有决定性作用。文档质量管理层次包括文档规范、文档语法、文档语义、文档逻辑、文档美学、文档优化。
3.1 文档规范
文档成果符合企业或业界已经制定的文档模板规范。企业甚至行业应当制定统一的文档规范,形成一个文档约定和规则,以统一文档内容与风格。
3.2 文档语法
文档成果正确使用通用的工具与术语、符合相关行业的技术标准。所有语言都有它的语法,所有质量合格的文档(包括模型)都应该是语法正确的,不正确的语法会影响规格说明和可视化的质量。
3.3 文档语义
文档成果表达正确、无歧义。所有质量合格的文档(包括模型)都代表它期望代表的语义,而且应该在代表这些语义的时候具有一致性。
3.4 文档逻辑
文档成果考虑周全,不矛盾,满足客户的关键要求,特别是要符合相关行业的业务标准。
3.5 文档美学
文档成果是佳表述,文字、图表是均衡和完整的。是追求平衡的美,每个组成部分应该不大不小,可解读、可变更、不同时代表太多的元素。
3.6 结果优化
通过检查判断文档成果(如项目计划、需求规格、设计方案)是否还有改进的空间,以尽可能达到佳方案。任何一项设计,都可以有许多不同的方案,通过“方案优化”选定一种好的方案。
任何一位设计师在做一项设计的时候总是选择他认为是好的方案,都有某种程度上的“优化”,因此他可以说他的产品是经过“优化”的。无论何种意义上的优化,都有一个共同的特点,是相对性。这个相对性有两方面的意义,一是优化是相对某种目标的,目标不同优化的结果不同。另一方面是在大多数的情况下,优化的结果并不是优的,只能是相对好的。
方法体系层次
1、措施质量管理层次
为提高软件质量企业所采取的相关措施。决定成败的不是目标,而是措施。任何好的规章制度或计划,终都需要具体措施才能落到实处。措施层次包括质量检查、质量保证、预防不合格品、完美无缺。
1.1 质量检查
保证质量的方式是进行临时性的后检查,然后消除次品。软件测试是软件质量检查的具体实现环节。把软件测试有效地组织进软件的生产流程,是软件质量控制规划的主要内容。
1.2 质量保证
质量目标仍主要通过生产部门或企业进行生产过程的优化和稳定化来保证质量目标的达成。从软件产业的发展初期到目前的大型软件开发过程,软件质量保证已经成为开发中的一个不可分割的部分。
1.3 预防不合格品
整个软件业项目属于需求分析和软件设计的错误和缺陷约占软件错误的64%,而属于程序代码的错误仅占36%。软件错误具有随着阶段的进展而产生积累与放大效应,因此应当尽早消除错误,否则“差之毫厘,失之千里”。所以在软件开发生命周期的前期通过对关键过程成果的评审控制来预防不合格品。
1.4 完美无缺
这一级上的企业都有一种内在的质量文化氛围,在此氛围下的方方面面工作都有助于质量的提高。每个员工都意识到质量对企业成功的重要性,都在寻求提高质量的新途径,都在为达到完美无缺而奋斗。同时,企业始终如一地面向外部客户,通过优越的设计质量来满足客户需要,并从供应商到客户形成一个优化的管理流程。
2、项目管理质量层次
软件开发任务一般是以项目的形式完成,项目管理质量包括组织资源、组建团队、设定目标、确定范围、确定优先级、管理风险、建立沟通机制等内容,其层次分为通用术语、通用过程、单一方法、基准比较、持续改进。
科兹纳博士对项目成功的定义,不仅要满足传统的项目时间、费用和性能的三大目标以及满足客户或用户定义的质量标准,还要满足具有少的或者双方同意的范围变更、没有干扰组织的企业文化或者价值观、没有干扰组织的日常工作进程等条件。
2.1 通用术语
企业了解了项目管理的重要性,并需要进一步了解对项目管理基础知识以及相关的语言和术语。在企业内部普及项目管理基础知识,使用业界通语言和用术语进行沟通,使大家形成对问题的正确理解。
2.2 通用过程
企业认识到自己需要定义和建立通用过程,以便在一个项目上成功之后,还可以将该过程及其成功经验重复地用于其他许多个项目。在这一层次上,还包括理解项目管理原则对公司所用其他方法的应用和支持。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11