在ArchSummit深圳2019大会上,孟雷讲师做了《如何通过结对编程进行高质量的软件开发》主题演讲,主要内容如下。
演讲简介:
移动互联网时代,越来越多的公司选择采用更加灵活更加高效的敏捷开发模式。敏捷开发在带来了高速的产品交付的同时也引入了非常棘手的质量问题,移动互联网产品更是如此,一边要满足日新月异的需求变化,一边又要针对种类繁多的移动平台进行全面高效的测试。于此同时,作为创业公司,缺兵少将,招人困难,缺乏测试领域的专家也是非常常见的现象。如此一来加班加点便成为了很多人的家常便饭,无数开发和测试人员也都在速度和质量中挣扎。
因此,一个既能快速满足需求变化,又能维持产品的高质量,还能持续地进行上线交付的方法便成为每个公司都迫切追求的目标。
常见痛点:
很多情况下的敏捷,只是理论和流程上面的敏捷,真正的软件开发理念以及效率,并未能够从这种貌似敏捷的流程当中受益,反而有时候会适得其反。
在强调交付速度的过程中,开发非常容易急功近利,为完成手头的工作而在架构方面做很多的妥协和折中,从而为日后的维护升级埋下很多隐患,同时也给测试带来了很多不便。
软件的模块化,通用化以及代码风格在人员经常流动的情况下难以得到统一,同时大量的开发文档缺失。
研发过程当中的团队分工角色较多,因此从上游到下游的过程中,会有很多沟通方面的损耗,团队管理消耗更多。
本次演讲将结合触宝的主力产品触宝电话的敏捷开发实践,谈一谈移动互联网公司如何能够利用结对编程的方式进行高质量的软件研发。在采取了本方案之后,半年以内,触宝电话在海量用户的前提下能够高质量地从一月一版本的发布周期逐渐提高到一周一发布的快速迭代。同时,线上 P1 级 bug 数量减少至原来的 5%,代码架构更加合理,模块化程度较高,团队也更加精简高效。培养了一批精通移动互联网前后端,客户端开发的高素质研发团队。
演讲提纲:
软件研发模式的几个主要阶段;
开发和测试的困境,常见痛点;
多角色情况下的团队沟通问题,以及团队培养的问题;
关于结对编程,与传统软件开发流程的主要区别;
结对编程最佳实施方法,如何利用结对编程来解决代码架构,代码风格,以及测试开发文档方面的问题;
在结对编程模式下的全新团队结构与团队人才培养;
适用场景,成功案例,具体数据分析。
听众受益点:
能够深入理解敏捷开发的实质;
高素质全栈工程师培养心得,团队管理方法和技巧;
面向全栈的代码开发流程及架构优化方法;
如何在海量用户的基础上进行高质量的快速迭代。
讲师介绍:
孟雷
触宝 研发总监
触宝个性化工具与内容事业部研发总监,曾先后就职于微软中国,EMC 中国,担任软件研发相关工作,专注于敏捷开发及分布式自动化测试的实践与团队管理。曾独立负责微软 SCCM 软件分发体系的测试,主导微软内部云测试和云部署服务 NOVA。在 EMC 任职期间成功推进 Pivotal 内部的敏捷开发转型,从头开始参与了 Pivotal Hadoop 的最初三个版本,并主导研发了适用于 Hadoop 系统测试的分布式测试框架 laphone。对于传统企业级软件如何进行敏捷研发的转型有丰富的经验。
任职触宝期间,推动和建立触宝电话完整的研发测试流程,加速产品迭代,在高质量的前提下,达到一周一发布的快速迭代周期。并培养了一大批精通移动互联网前后端,客户端开发的高素质研发团队人员。
完整演讲 PPT 下载链接:
https://archsummit.infoq.cn/2019/shenzhen/schedule
评论