测试部门独立于开发部门。这种模式可能源于传统制造行业的QC和生产部门的分开。其目的是为了保证测试过程和测试结果的客观性和有效性。这种模式相当于把测试和开发分成两个泾渭分明的活动,并没有过多的考虑两种活动之间的互为补益。在这种模式下,很可能演变成测试和开发之间的对立,或者增加测试和开发之间的沟通成本。

  边测试,边开发。这是XP的轻量级开发过程所倡导的,现在的测试驱动开发理论是符合了这种模式。采用先设计测试,再进行开发,当开发的软件通过了所有的测试,软件完成了。这种方式其实并没有规避自己测试自己代码所产生的局限性问题,只是将思维的顺序作了些改变,降低了思维定式对软件开发产生缺陷的影响。

  测试部门属于研发中心,但独立于项目组。这种模式保证了测试与项目组之间的终目标的一致性(高质量的软件产品),能有效的降低沟通成本,又能保证测试人员有一定的独立性,不会过分的受产品经理的控制,避免测试失效现象产生。但在这种情况下,相比两个部门独立,测试的结果有可能不会被项目组所重视,需要频繁的进行协调,才能及时处理缺陷。