陆怡颐简介:
陆怡颐,曾就职于上海航空航天计算机技术研究所,从事火箭、卫星、导弹嵌入式软件测试;担任过华为测试部质量代表,芯片部质量代表,产品线敏捷开发推行负责人,参与过两个大产品的质量工作;之后曾任酷宝网络质量经理,建立自动化测试及持续集成;并曾在银硕科技担任质量经理,负责建立测试及OA团队;现任51Testing高级讲师,主攻敏捷测试。
了解和认识敏捷
51Testing:您是从何时接触和认识敏捷的呢?
陆怡颐:08年的时候,华为公司开始大规模推行敏捷开发,我有幸参与其中,成为所在产品线敏捷推行的责任人。通过在敏捷能力中心系统学习了敏捷开发,也接触了业内的一些敏捷专家。09年我所在的产品线也正式开始推行敏捷,我带了两个试点项目,开始实践敏捷,虽然过程有点曲折,但是让我认识到了很多实践敏捷过程中的实际问题。之后我就一直在接触敏捷。
51Testing:在您看来,什么是敏捷开发呢?
陆怡颐:从起源来讲,敏捷其实就是一伙程序员被繁重的过程模型所束缚,为了能跳出来,而聚到一起发表的一份宣言。其实敏捷开发就是这一份宣言中强调的四条价值观:
个体与交互比流程和工具更有价值
可用的软件比冗长的文档更有价值
与客户的协作比合同谈判更有价值
对变化的响应比遵循计划更有价值
我们要正确认识敏捷,就要从这四条价值观触发。切忌把敏捷当做一种超越了瀑布、V&V等传统模型的新模型,只要照着它的流程做就会如何如何。
我从3个层次认识敏捷,首先是理念层次:
敏捷是一种思想,帮助我们跳出传统的模型束缚,解决积累的管理问题。当然它并不空洞,有很多具体的操作可供我们参考(敏捷实践)。
我把敏捷的四条价值观总结为3个敏捷理念——聚焦客户价值、加强团队协作、响应变化。
所谓聚焦客户价值,需要做到:
1、标识和消除软件开发中的浪费
2、交付刚刚好的系统
3、随时构建质量,不容忍缺陷
4、及时消除技术债务,持续保持快速响应
所谓加强团队协作,需要做到:
1、认清团队的基本事实
2、敏捷方式下的管理者转变
3、敏捷方式下的团队成员转变
所谓响应变化,需要做的:
1、认清“客户是逐步发现真正的需求”
2、小批量是快速交付的关键
3、通过迭代计划不断调整以适应需求变化
4、持续保持良好的软件架构
5、利用多层次反馈不断调整以逼近目标
这里就不展开讲了。敏捷就是围绕解决这些问题展开的。
其次是实践层次:
敏捷围绕上面的三大理念,发展出了很多的流派,每个流派又有很多优秀实践,比如在国内目前比较流行的SCRUM、XP两大流派中的优秀实践:持续集成、结对编程、测试驱动开发、用户故事、状态墙等等。通过这些流派、实践,可以帮助我们更深入认识敏捷,看到其他成功的案例是如何做的,他们是如何实现敏捷的3个理念的。
最后是应用层次:
在理解敏捷的基础上,公司根据自身产品先方面的特点,为产品开发定制合适的敏捷模型,包括流程、实践、工具、设备等,并能真正在产品开发中实现3大理念,这就是敏捷,更是公司自己的敏捷。
所以,我眼中的敏捷=理念+实践+应用。