敏捷开发测试,从0到1 的过程

743 阅读5分钟

目前,公司成立了一个新的项目团队,准备实施敏捷开发测试流程,如何从0到1实施敏捷开发测试流程,是目前团队的核心重点工作。

一、首先,得确定敏捷开发测试是什么,适用于什么样的团队项目,意义是什么?

1、什么叫迭代开发?在迭代开发中,整个开发工作被组织为一系列的短小的、固定长度(如2周)的小项目,被称为一系列的迭代,这叫迭代开发。每一次迭代都包括了定义、需求分析、设计、实现与测试。

而敏捷开发是以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。前者是软件开发的生命周期模型,是一种开发过程;后者是多种软件开发项目管理方法的集合,是一种开发方法。这是两者最根本的区别。 敏捷模型:

image.png

2、敏捷开发适用于什么样的团队项目?

  • 产品不断有新需求加入、调整。客户加需求,可将需求细化为一个个小任务,根据优先级,加入后续的迭代中,提高效率。
  • 需要快速高效、更早地出产品。

3、敏捷开发的意义?

  • 更早地出产品,可及时获得用户的反馈,然后完善。
  • 每次迭代都能看到不断完善的产品,非常有成就感,同时提升客户满意度。

二、在敏捷开发中如何开展测试工作以保证质量?

  1. 需求阶段--站在用户角度去考虑场景需求,是否存在需求缺陷;需求的可测性;测试需求;确定验收标准。

  2. 开发迭代中--根据开发迭代计划确定概要测试计划;提前准备测试环境、数据;在每次迭代测试过程中,进行当下迭代的测试和下一迭代用例的编写,有充裕时间进行自动化脚本的编写,并形成通用测试用例库。(目前采用的是使用xmind编写测试点的模式,工具Teambition)--注意用例和bug的优先级

    注意:

    • 测试用例尽可能简单,以验证业务为首要目标;
    • 在开发之前,先列出所需要的测试,并在开发中不断维护列表,避免遗忘一些必要的测试。
  3. 验收测试--需做现场验证,仅在测试环境测试通过不算交付完成(自动化+探索测试)。

  4. 用户反馈修改--主动积极跟踪用户反馈,及时响应解决--反思bug出现的原因,避免类似情况再次出现。

  5. 迭代总结

三、通过“4个会议、看板”进行过程管理

sprint计划会

挑出一个story为本次迭代完成的目标,这个目标的周期一般是1~4个星期,然后把这个story进行细化形成一个迭代任务列表。

每日站立会议

会议内容:昨天完成了什么,是否有困难需要帮助,今天计划完成什么;会议时间控制在15分钟左右,每个人都需要发言。

sprint 评审会

当一个Sprint完成,这时就要进行最重要的演示会议,也称为评审会议,产品负责人和客户都要参加,每一个开发团队的成员都要演示自己完成的软件产品,然后被判定产品合格、成功、需要修改还是重新做。

Sprint 总结会

总结会议以轮流发言方式进行,每个人都要发言,总结并讨论改进的地方,放入下一轮Sprint的产品需求中。

看板

直观反映工作进度,反映流程遵守情况,反映流程缺陷

四、敏捷团队原则、价值观

原则:

我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意--尽早交付、持续交付。

欣然面对需求变化,即使在开发后期也一样。善于掌控变化,帮助客户获得竞争优势--拥抱变化。

经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期--有规律的持续交付,获得反馈。

业务人员和开发人员必须相互合作,项目中的每一天都不例外--保持沟通,获得信息反馈。

激发个体的斗志,以他们为核心搭建项目。提供他们所需的环境和支持,相信他们能够达成目标--相信团队成员,帮助其工作。

团队定期地反思如何能提高成效,并依此调整团队的行为--定期反思总结。

价值观:

诚信负责、公开透明、专注、勇气、承诺、尊重

五、注意事项

1、即使是敏捷开发,也要尽可能的有详细的需求

2、在实际的开发过程中也需要写api文档,并且尽可能写上注释,以便于其他人的理解

3、需求拍脑袋随意改动

4、代码质量低劣不停出更新版本

5、不写正规设计文档

6、产品质量不靠设计靠测试的