今年2月份完成本书的阅读,书不厚,如果快的话,一晚上就能看完。整本书是借鉴了凤凰项目的方式,用小说的样子记录了一个传统金融公司进行敏捷项目转型的历程,把敏捷的各种知识点穿插在书里的各个章节。读起来还比较轻松,不像过去的敏捷书籍。这样的文体来介绍敏捷,让读者比较有代入感,方便理解敏捷中个中实操方法的适用场景。毕竟其他敏捷书籍的介绍经常缺少上下文,只是作者经验或脑补的场景,还有国外的环境文化因素等等,有时候敏捷实践并不是太好理解。
有几个实践,之前没有很好理解的,这里记录一下。
BDD,行为驱动开发
BDD是TDD的进一步演化,TDD是开发人员从开发的角度先想好要做什么,写好测试代码,然后根据测试代码再来实现代码,然后不断重构,直到测试脚本通过的过程。
BDD的软件研发过程是这样的:
产品经理(业务人员)通过具体的用户故事使用场景来告诉软件需求分析人员他(她)想要什么样的软件产品。使用软件产品的使用场景来描述软件需求可以尽可能的避免相关人员错误理解软件需求或增加自己的主观想象的需求。
软件需求分析人员(BA)和研发团队(研发人员、测试人员)一起对产品经理(业务人员)的用户故事进行分析,并梳理出具体的软件产品使用场景举例,这些场景举例使用结构化的关键字自然语言进行描述,例如中文、英文等。
研发团队使用BDD工具把用户故事场景文件转化为可执行的自动化测试代码,研发人员运行自动化测试用例来验证开发出来的软件产品是否符合用户故事场景的验收要求。
测试人员可以根据自动化测试结果开展手工测试和探索性测试。
产品经理(业务人员)可以实时查看软件研发团队的自动化测试结果和BDD工具生成的测试报告,确保软件实现符合产品经理(业务人员)的软件期望。
BDD行为驱动开发关键链
看到这个,我还蛮惊奇的。关键链在之前PMP的学习中是个重点。在前面敏捷的接触实践过程中,有些刻意的把PMP中的一些知识经验进行屏蔽。但是看到这个后发现敏捷和PMP之间并不互斥。只要是能帮助迅速的达到项目目标,哪种方式其实并不重要。终究是要Be Agile,不要纠结于形式。
网友评论