4、举例:系统测试阶段针对此功能进行深入的测试,并且对整套基本功能进行了覆盖,未能发现此问题。
分析:系统测试阶段做了这么多事情,但没有发现问题,这是个很重要的问题,是需要进一步深入去分析其中的原因的,但作者就此打住了,这样的回溯就达不到找出问题根因并改进的效果。
5、举例:开发阶段分析,此问题是开发人员对此需求进行开发时,对Xxx流程(某个业务流程)了解不够,在代码中进行了XXX操作,导致了问题的引入。(前提:在需求分析阶段的回溯中并没有提及这个业务流程)。
分析:从上述分析描述可以看出,开发人员引入问题的原因是对业务流程不了解,但业务流程应该是需求分析时就应该明确的,在上下文都没有提及需求分析阶段有没有明确这个业务流程的情况下,就要怀疑,是不是业务流程本身没有定义清楚了,要去深入了解需求分析阶段是怎么定义这个流程的,有没有二义性。这个问题也是我们在回溯过程中经常遇到的一种情况:开发人员态度超好,积极承认错误,觉得他应该搞定所有的事情,但实际上,可能很多问题并不在他,而在需求分析或设计人员身上。
6、举例:与5是同一个回溯,对测试阶段的分析:测试人员验收测试时缺少了Xxx测试用例,导致泄露。
分析:首先,验收测试往往是客户方来主导的,这个地方真正想表达的是团队内的用户故事验收活动,所以,第一个问题是用词不准确,容易误解。第二个问题是测试用例为什么会缺失没有进一步说明,理论上,需求描述是编写测试用例的重要依据,如果需求描述清晰,测试用例不应该遗漏。再结合5的分析,不难看出,这很可能是一个需求分析阶段的问题。