当软件被测试时,为了获得最好的质量和最小化缺陷或错误,会有如此多的过程。测试成熟度模型是具有一系列结构化级别的模型之一。TMM现在被测试成熟度模型集成(TMMI)所替代,这是一个5级模型,它提供了一个框架来衡量测试过程的成熟度。换句话说,这个模型的主要目标是优化测试过程。它由伊利诺伊理工学院开发,现由TMMI基金会管理。
在本文中,我们将讨论该模型的所有5个层次,同时,我们将分析TMM应用于软件测试时的重要性。
初始化(Initialization):这是TMM的第一级。在此级别中,没有定义测试过程。将对软件进行探索性或ad-hoc(特定目的)测试。这个级别的主要目的是确保软件运行正常,没有障碍。在交付产品之前,没有质量检查。
定义(Definition):顾名思义,此级别是关于定义要求的。在第二级TMM中,测试策略,测试计划和测试用例开发根据客户开发软件所给出的需求而定。这个级别的主要目标是确保产品按照需求运行,并实现测试用例和测试计划文档的创建及严格遵循。
集成(Integration):这是TMM的第三级。顾名思义,在这个级别的测试与软件生命周期集成,并成为它的一部分。例如,V模型具有开发和测试阶段。测试是在开发结束后,被测软件交给专业测试团队,独立进行测试。整个测试目标是基于风险管理。
管理和测量(Management and Measurement):管理和测量要求在此级别的TMM中得到了关注。在第四级别,测试成为软件生命周期中所有活动的一部分。从审查收集的需求和软件的设计,到确定质量标准都包含在里面。这为组织建立了一个更为清晰的画像,从而帮助他们实现所需的质量。
优化(Optimization):这是TMM的最后一个级别。第五级负责优化测试过程本身。也就是说,对测试过程进行了测试,并采取了相应的措施,通过迭代来提高测试的迭代率。这个测试主要是通过不同工具来帮助进行的。此外,在此级别中,通过在整个软件生命周期中改进过程来防止缺陷,因此主要的焦点是缺陷预防而不是每个阶段的缺陷检测。
我们详细地看到了所有五个级别的TMM。每个级别都有特定的作用和重要性。每个级别的主要目标是明确的,并有自己的结构。TMM的主要思想源于能力成熟度模型(CMM),它基本上是一个应用于软件开发的结构化工具,也作为一个模型来帮助不同的业务流程。这里的“成熟度”是通过优化过程的程度来衡量的。它从ad-hoc(特定目的)实践开始,然后定义正式步骤和文档,管理结果和审查文档,以优化流程并达到预期结果。
让我们看看在组织中使用测试成熟度模型的一些好处。
TMM的优点:
有组织:我们讨论了TMM的所有5个级别。每个级别都有明确的定义,并有一个特定的目的实现。这使得TMM成为一个组织良好的模式,即具有明确的目标。
质量保证:当我们将测试与软件生命周期的所有阶段相结合时,可以实现更高的质量。测试过程的测试将优化结果,从而为优质产品提供保证。
缺陷预防:如前所述,TMM通过使测试过程成为软件生命周期的所有阶段的一部分,侧重于缺陷预防而不是缺陷检测。这将确保最大限度地避免缺陷,最终产品几乎无明显缺陷。
明确要求:当需求和设计得到审查,测试计划和测试用例根据需求进行测试时,主要测试目标更加清晰,因此测试更准确。
结论:
测试成熟度模型(TMM)与能力成熟度模型(CMM)相比是一个相当新的概念,但是两个模型的主要目标仍然保持不变,即向我们展示如何通过优化流程来提供一组结构化的级别,从而获得高质量的预期产出,组织的行为与实践。这些模型可以根据业务进行推广,并可以应用于增强的结果。我相信,未来几年,大多数软件组织将开始选择TMM进行软件测试,因为它的好处正开始收获成果。