行为驱动开发(BDD)能够用于改善测试人员、开发者和业务人员之间的沟通。举例来说,你能够使用以given-when-then方式表述的场景开发测试脚本,同时定义系统的需求。在敏捷测试日荷兰2015大会的某场演讲中,Nick van Giessel探讨了使用BDD改善沟通与协作的方式。

\\

van Giessel说道,只有当我们把软件发布到生产环境之后,才能获得它的价值。而敏捷能够帮助你将软件更快地推向生产环境,并且更早的获得反馈。如果在开发软件时,开发者和测试人员依然无法打破壁垒,那么你只是在敏捷中继续使用传统的瀑布式开发罢了。van Giessel表示,你必须打破不同专业人员之间这堵无形的墙,让他们成为平等的团队成员,这样才能够实现真正的敏捷。

\\

van Giessel说道,使用BDD的主要目的在于让团队中的所有人达成一致的理解。他在演讲中表示可以通过不同的方式实施行为驱动开发,例如采用实例化需求方式、举办3 Amigos会议(又称为实例工作间)、定义验收标准或使用given-when-then场景等等。这些方式都需要将团队成员聚在一起,并帮助他们对这个项目进行思考。你也同样可以使用given-when-then场景开发自动化测试脚本。

\\

Nick van Giessel认为,使用同一种语言有助于帮助人们进行沟通,并更好地互相理解,这一点对于团队来说也是一样的。比如让开发者与测试人员使用given-when-then场景,他们就能够描述系统的行为。这些场景也可以用于设计测试脚本,并且用于定义系统的需求。

\\

InfoQ有幸采访了van Giessel,内容涉及团队之间的协作以及团队和业务人员之间的协作,如何处理沟通问题,以及行为驱动开发所能产生的价值。

\\

InfoQ:你提到让大家使用同一种语言对于团队来说是非常重要的,对于这一点你能否详细说明一下?

\\

\

van Giessel:在一个Scrum团队中存在着各种不同的专业,例如开发者、测试人员和业务人员。人们对于问题有着不同的思考方式,这本是一件好事,但它也会导致沟通的低效。团队工作的一个必要条件是共同的理解,而行为驱动开发描述了某个客户的实际行为。因此要通过BDD创建一种每个人都能够理解的语言。客户始终是最重要的人,因为是他在为你的IT项目买单。

\

\\

InfoQ:你能否举例说明一下,你曾看到敏捷团队中出现过哪些沟通方面的问题?

\\

\

van Giessel:我曾经在某些团队中工作过,这些团队中不同的专业人员之间形成了一道壁垒,他们不会在整个团队之内对问题进行沟通。这种方式好像是在Sprint中进行瀑布式开发一样,虽然我们尝试每两周一次交付承诺的工作,但使用的方法仍然是瀑布式的。由于这种方式延迟了获取反馈的时间,因此导致软件交付的延误与出错。当发现问题与错误的实现时往往为时已晚,因而导致了更多的返工。

\

\\

InfoQ:你是怎样解决这些问题的呢?

\\

\

van Giessel:我们将不同团队的成员混在一起,向他们详细地介绍了BDD。我们打破了成员之间的壁垒,在Sprint还没有开始之前就邀请每个人参与到会议之中,共同讨论我们的产品。这需要投入一些时间与精力,但经过几个Sprint后就会显出效果。这其实是一种心态,即每个人都对最终结果负责,我们都是同一专业的团队成员,而不是泾渭分明的测试人员、开发者或业务分析师。

\

\\

InfoQ:你能否分享一下你对行为驱动开发的看法?你认为它的价值体现在哪里呢?

\\

\

van Giessel:本质上,BDD是一种帮助敏捷以本来面貌进行应用的方式。它的一个主要价值(对于我这个软件测试人员来说)在于在开始创建软件之前,先从测试开始设计,并思考它的业务价值。这就减少了每个Sprint临近结束时团队中每个人的压力,尤其是负责测试的人的压力。与其它专业的成员进行沟通让我的工作变得更为轻松,最重要的是它给我带来了更多乐趣。

\

\\

Nick van Giessel是敏捷测试日荷兰2015大会中 “优秀的荷兰敏捷青年才俊”这一专题的演讲者之一。InfoQ之前也发表过这一主题中其它一些讲座的内容,包括“Scrum Master如何帮助团队增加敏捷性”以及“变得更透明有助于管理工作”。

\\

查看英文原文:How BDD Has Helped to Address Communication Problems and Improve Collaboration

BDD怎样帮助你解决沟通问题并增进协作相关推荐

  1. 原来用手机就能进行语音翻译,一个工具,轻松解决沟通障碍

    如果说语言是能够表达出感情的方式,那么语言不通就是表达感情最大的障碍.当热恋的情人不再能表达爱意:久别重逢的挚友不能再表达相见的欣喜:我们何时才能完成世界语言的大同?来看看下面的这个方法吧,能够实时完 ...

  2. 如何画好一张架构图?(内含知识图谱)

    作者 | 箫逸 阿里文娱高级技术专家 关注"阿里巴巴云原生"公众号,回复 架构 即可查看清晰知识大图! **导读:**架构图是什么?为什么要画架构图?如何画好架构图?有哪些方法?本 ...

  3. 如何画一张架构图(内含知识图谱)

    简介:架构图是什么?为什么要画架构图?如何画好架构图?有哪些方法?本文从架构的定义说起,分享了阿里文娱高级技术专家箫逸关于画架构图多年的经验总结,并对抽象这一概念进行了深入地讨论.内容较长,同学们可收 ...

  4. 阿里高级技术专家箫逸:如何画好一张架构图?

    中生代技术 链接技术大咖,分享技术干货 全文:10000字 阿里妹导读:架构图是什么?为什么要画架构图?如何画?有哪些方法?本文从架构的定义说起,分享阿里文娱高级技术专家箫逸关于画架构图多年的经验总结 ...

  5. extjs实现组织架构图_如何画好一张架构图?(内含知识图谱)

    什么是架构图? 如何画好一张架构图,要做好这件事情首先要回答的就是什么是架构图.我们日常工作中经常能看到各种各样的架构图,而且经常会发现大家对架构图的理解各有侧重.深入追究到这个问题,可能一下子还很难 ...

  6. 画一手好的架构图是码农进阶的开始

    作者:蔺瑞军(箫逸) 一.什么是架构图? 如何画好一张架构图,要做好这件事情首先要回答的就是什么是架构图?我们日常工作中经常能看到各种各样的架构图,而且经常会发现大家对架构图的理解各有侧重.深入追究到 ...

  7. 如何画好一张架构图?

    简介: 架构图是什么?为什么要画架构图?如何画?有哪些方法?本文从架构的定义说起,分享阿里文娱高级技术专家箫逸关于画架构图多年的经验总结,并对抽象这一概念进行了深入地讨论.较长,同学们可收藏后再看. ...

  8. 如何画好一张架构图? | 凌云时刻

    凌云时刻 · 洞见 导读:深入浅出,从底层逻辑开始演示一张架构图的形成路径. 作者 | 阿里巴巴文娱技术 来源 | 凌云时刻 什么是架构图? 如何画好一张架构图,要做好这件事情首先要回答的就是什么是架 ...

  9. 如何解决各部门之间沟通协作的障碍

    现代社会是信息化的社会,沟通作为信息传递的媒介起到了越来越重要的作用,有效的沟通也越来越受到了重视.在企业内部也是如此.尤其是在企业分工细化.部门设置增多.组织结构趋于扁平化的情况下,跨部门沟通逐渐频 ...

最新文章

  1. APUE-文件和目录(八)文件时间
  2. BZOJ2339: [HNOI2011]卡农(dp 容斥)
  3. Python中的除法 整除 非整除
  4. 分布式键值系统Amazon Dynamo简介
  5. VTK初始化New返回Null问题
  6. 期货与期权(part8)--市场报价
  7. 全志A33-ARM开发板通过NFS与Ubuntu共享文件
  8. 利用ASP .NET Core的静态文件原理实现远程访问Nlog日志内容及解决遇到的坑
  9. python logging使用_Python实战之logging模块使用详解
  10. MFC实现打开、保存文件对话框和浏览文件夹对话框,把代码直接拷贝到要响应的按钮函数下面就行了
  11. vue.js能美化界面吗_美牙真的能变美吗?刘涛花百万美化牙齿,容貌大变样,网友:太神奇了吧...
  12. [数据预处理] onehot编码:是什么,为什么,怎么样
  13. session的基本原理
  14. 专业术语常用名词缩写中英文对照
  15. 二、 jQuery带本地时间的日历代码
  16. wifi物理地址怎么改_安卓手机修改wifi物理mac地址的三种方法
  17. 人工智能Logo设计师Brandmark
  18. 在VS2017中添加WTL窗口
  19. 自己做量化交易软件(7)通通量化回测设计2-双均线策略回测
  20. 欢迎使用CSDN-我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:markdown编辑器

热门文章

  1. 4. OD-去除烦人的nag窗口(去除提醒用户购买正版的警告窗口)
  2. python 线程的使用
  3. S3C2440 偷学
  4. Hibernate初探之单表映射——Hibernate概念及插件的安装
  5. Largest Number 179
  6. 7个习惯可以改变一个人和他的一生
  7. day5 JavaEE实战班
  8. 全球金融中心最新排位:深圳重回前十,大连杭州飙升
  9. 了解这些坑,再也不会出现诡异的BUG了~
  10. 不就是SELECT COUNT语句吗,竟然能被面试官虐的体无完肤