TMM——测试成熟度模型
与软件能力成熟的模型CMM类似,测试成熟度模型TMM也是由5个成熟度等级组成,而且从成熟度等级二级开始,每个等级也都有各自特定的成熟度目标。
使用TMM可以帮助组织确定当前所处的测试过程成熟度级别,同时也可以明确下一步的改进目标,以达到更高级别的测试成熟度等级。
TMM的5个成熟度等级具体如下:
初始级(Initial)
TMM 初始级的特点是测试活动混乱无序,没有明确定义测试过程。这时的测试仅仅是调试的一部分,测试目的只是为了证明软件是可以运行的。通过测试的软件产品仍然可能存在巨大的风险。测试缺少计划,也缺乏测试资源、工具以及训练有素的测试人员。
TMM初始级没有定义任何成熟度目标。
阶段定义级(Phase Definition)
TMM 阶段定义级定义了测试过程,并且明确将测试与调试区分开。满足该成熟度等级的测试,已经有了一个明确、详细、合用的测试计划,而且也会把正式的测试设计技术应用到测试过程中。但是,测试只被定义为软件开发生命周期中的一个阶段,它紧随在软件设计甚至是编码阶段之后。阶段定义级测试的主要目标是验证软件满足了规定的要求。
TMM阶段定义级有3个成熟度目标:
制定测试与调试目标。
启动测试计划过程。
制度化基本的测试技术和方法。
集成级(Integration)
TMM 集成级将测试完全集成到软件开发生命周期中,而不仅仅是软件开发生命周期中的一个阶段。这时的测试活动包括了软件开发生命周期V模型的所有测试级别,测试计划在项目的早期就开始制定,测试策略会采取基于风险的测试,会成立专门的软件测试组织,并开展测试培训,测试经常将关注点放在正面测试上。
TMM集成级有4个成熟度目标:
建立软件测试组织。
开展技术培训。
测试与软件生命周期集成。
监控测试过程。
管理和度量级(Management and Measurement)
TMM 管理和度量级将测试定义为全面的可测度的过程。测试活动覆盖了软件生命周期的所有工程活动。测试活动能够为软件产品质量提供保证。组织会建立测试用例库,测试用例会在测试用例库中进行收集、保存和管理。测试活动也会被有效的度量,这些度量信息能够确保测试活动正常有效地进行,确保软件产品能够满足预期的质量目标。
TMM管理和度量级有3个成熟度目标:
在组织范围内开展评审。
开展测试度量。
软件质量评估。
优化、缺陷预防和质量控制级(Optimization,Defect Prevention, and Quality Control)
TMM 优化、缺陷预防和质量控制级会对测试技术和方法进行优化,并且进行测试过程的持续改进。
测试过程的改进通常是基于对测试过程有效的测量结果来进行的。大量、合理地采用测试工具是测试过程改进的有效方法。
TMM优化、缺陷预防和质量控制级有3个成熟度目标:
应用过程数据预防缺陷。
质量控制。
测试过程优化。
对于实施GJB5000A的组织来说,测试的成熟度基本上与CMM是一致的:有些组织在没有实施GJB5000A之前,测试的目的就是为了证明软件可以正常运行,处于测试初始级;实施GJB5000A二级之后,会有测试阶段,会编写测试计划,这时就是测试的阶段定义级;实施GJB5000A三级,会有测试培训,会有更多的测试级别,测试有专门的过程控制要求,这时基本上就是测试的集成级……
虽然如此,对于实施GJB5000的组织来说,TMM仍然有它存在的意义:它可以帮助组织更好地进行测试过程的改进。
这正是:
测试成熟有模型,也有五级可区分
学习模型为改进,更好测试有望成
参考书目:软件测试管理,作者:郑文强,马均飞,出版社:电子工业出版社