《研发效能提升“双流模型”解读-茹炳晟.pdf》由会员分享,可在线阅读,更多相关《研发效能提升“双流模型”解读-茹炳晟.pdf(35页珍藏版)》请在三个皮匠报告上搜索。
1、研发效能提升研发效能提升“双流模型双流模型”解读解读茹炳晟茹炳晟茹炳晟n中国计算机学会(CCF)TF 研发效能SIG 主席n“研发效能宣言”发起人及主要内容起草者n“软件研发效能度量规范”标准专家组核心专家n年度IT图书最具影响力作者n业界第一本研发效能领域专著软件研发效能提升之美作者n畅销书软件研发效能提升实践作者n畅销书测试工程师全栈技术进阶与实践作者n高效自动化测试平台:设计与开发实战作者n新书软件研发效能权威指南主编(即将出版)n极客时间软件测试52讲-从小工到专家的实战心法作者nCertified DevOps Enterprise Coach讲师简介时代变了,底层逻辑也变了大鱼 吃
2、 小鱼快鱼 吃 慢鱼研发效能的“灵魂拷问”!#$!#$%&%&()*()*+,-.+,-.重要性(高)紧迫性(高)重要性(低)紧迫性(低)灵魂拷问1-研发团队的忙碌能代表高效率吗?灵魂拷问2-敏捷是研发效能提升的银弹吗?灵魂拷问3-自动化测试真的提升软件质量了吗?皇帝的新装灵魂拷问4-研发效能的提升一定是由技术驱动的吗?时间业务增长的趋势软件架构的复杂度与软件规模的复杂度人员规模期待的研发效能实际的研发效能研发效能的鸿沟灵魂拷问5-研发效能真的可以提升吗?各大行业龙头企业为什么都开始关注“研发效能”产品层面的“烟囱效应”持续开发持续集成持续测试持续交付持续运维流动速度长期质量客户价值数据驱动研
3、发效能提升的“第一性原理”顺畅、高质量地持续交付有效价值的闭环研发效能提升的“双流模型”需求阶段(开发开始前)的效率提升实践需求阶段(开发开始前)的效率提升实践需求优先级原则(KANO 模型)用户满意度高用户满意度高用户满意度低用户满意度低功能实现程度高功能实现程度高功能实现程度低功能实现程度低基础功能基础功能亮点功能亮点功能期望功能期望功能无差别功能无差别功能反向功能反向功能个人本地开发和测试阶段的效率提升实践个人本地开发和测试阶段的效率提升实践高效获取开发环境高效获取开发环境个人本地开发和测试阶段的效率提升实践高效获取开发环境个人本地开发和测试阶段的效率提升实践IDE精准代码提示个人本地开
4、发和测试阶段的效率提升实践IDE精准代码提示n IDE自带推荐功能需要的按键次数:311n 基于大数据智能推荐功能需要的按键次数:56Python示例示例(Tensorflow)https:/ Cover)个人本地开发和测试阶段的效率提升实践Java单元测试用例的自动生成(Diffblue Cover)被测代码https:/ Cover)个人本地开发和测试阶段的效率提升实践(本地)单模块功能测试个人本地开发和测试阶段的效率提升实践代码合流阶段的效率提升实践代码评审(Code Review)代码评审CR的普遍困惑:u“政治正确”的代码评审活动为什么看起来像是再走过场u自己的开发任务还没完成,哪有
5、时间和精力认真评审别人的代码u你可能对要评审对代码的设计上下文一无所知,不知道该从哪里看起u当认真评审的时候,因为编码风格和你不一致而感觉备受折磨,甚至引发矛盾uCR响应时间过长,不能即时反馈u为了达成CR评审的度量指标要求而凑数代码合流阶段的效率提升实践代码评审的核心理念:n代码评审必须算工作量n保证代码逻辑正确,是设计者的责任n审查者避免根据自己的编程习惯来评判别人的代码响应快找对人合适的Reviewer多批次Review要频繁发生小批量每次Review的代码量要少代码评审的最佳实践代码评审(Code Review)代码合流阶段的效率提升实践代码评审可以及时发现一些容易发现的BUG,而不必
6、将发现BUG的时间点推迟到测试阶段,但是代码评审的最大好处却是纯社会属性的。编码者视角良性的社交压力维护者视角代码可读性的保证全局视角知识传播设计共识代码评审(Code Review)代码合流阶段的效率提升实践知识传播和设计共识的佐证代码评审(Code Review)代码合流阶段的效率提升实践基于观察而非考核的CR度量指标Author角度:l单次变更的代码行数(主要指标)l变更的频度(参考)Reviewer角度:l响应时间(参考)l评论数(参考)l一次通过率(参考)l拒绝率(