ATDD整体研发流程

有了前面的基于story的敏捷基础,接下来来介绍一下验收测试驱动开发的整个流程。

敏捷测试(8)--ATDD整体研发流程-LMLPHP

名词解释:

ATD,即验收测试设计(acceptancetest design)

PM,即需求整理方(product manager)

RD,即开发人员(Research and Development)

QA,即品质保证人员(quality assurance)

如上图所示,整个流程被分为三个粒度,分别是:项目、迭代、story。

一个项目被划分为若干个迭代;

每个迭代由若干个story组成。

Ø  项目粒度(图中水平向右的箭头)

1.    一系列需求催生了一个项目;

2.    项目启动后,将已有的需求拆分成若干可独立上线的story,或补充新的story;

3.    每个story都有一个优先级,将story按优先级从高到低排序;

4.    把一段固定的时间(比如两周)作为一个迭代;

5.    将一定量的高优先级story进行需求澄清;

6.    按团队的研发能力(参照前文提到的“昨日天气”原则),将澄清后的高优先级story纳入到当前迭代中;

7.    完成迭代,并上线(可不上线);

8.    重复2到7,直到所有需求均上线。

Ø  迭代粒度(图中标有“迭代”的圆形箭头)

1.    迭代启动;

2.    ATD编写&&详细设计(如果必要),同步进行;

3.    并行的story开发和测试;

4.    Showcase;

5.    PM线下验收;

6.    上线清单准备&&上线;

7.    迭代回顾;

Ø  story粒度(图中标有“story”的圆形箭头)

1.    story启动

开始一个高优先级的story(如果该story较大,可先开始一个优先级稍低但估点较小的story,以提高测试并发度)

2.    review详细设计(如果有的话)

3.    ATD的review和完善;

4.    RD开发并根据ATD编写自动化(所有单测+大部分集成测试),并标记;

5.    RD签章通过大部分ATD;

6.    提测;

7.    QA进一步完善ATD;

8.    QA对未签章部分进行测试(手工+编写少量集成测试,及必要的系统级测试);

9.    QA进行探索性测试(如高风险点的二次确认、整体流程,以及回归等);

10.  并行地重复1到9,完成所有迭代中的story。

从以上三个维度的解释,以及整体流程图,对整体的ATDD有了大概了解,具体细节后面会详细介绍。

04-30 11:29