• 152465

    文章

  • 1250

    评论

  • 10

    友链

  • 最近新加了换肤功能,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

深度解读7个场景,破解研发效能障碍

伴随着数字化与信息化的发展,研发效能和降本增效日渐成为企业管理焦点。尤其对于研发型团队而言,快速地、保质保量地交付价值是优先级最高的任务,但在实际的开发过程中,我们总会遇到技术债务、并行冲突等影响研发效能的情况。

在告别野蛮生长,主张精耕细作的今天,企业/组织应该如何解读种种效能障碍,制定可复制的解决方案?本篇文章将从7 个常见的研发场景出发,分享有关研发效能提升的心得与经验。

场景一:并行开发导致代码冲突

组内/组间并行,或由代码回退/合并等造成的各种并行开发导致代码冲突是常见的效能问题之一。并行化的分支管理和版本管理是比较重要的议题,而合并策略、Feature分支管理、变更管理都可能影响研发效能。

解决这个问题,可以考虑以下三种优化方式:

1. 时序串行管理

以时间为轴,串起整个版本主线,代码对版本负责,版本对功能负责。

对同一系统而言,代码是并行开发的,但最终的交付物/发布物是顺序发布的;对不同系统而言,主要考虑相互间的依赖关系,影响面以及发布顺序。

2. 功能化整为零

按照敏捷迭代方式将大功能化整为零,更好地应对变化。 如遇到迭代周期内需求必须变更的情况,需要确定好变更的影响范围和需求优先级。

3. 需求分而治之

技术/优化需求和跟版迭代需求可能需要采用不同的发布策略和分支管理。 这样既可以保证业务目标按期、有效地达成,还能保障各种优化和支撑工作灵活地进行和并行。

场景二:技术债与架构腐化

技术债是一个老生常谈的话题。企业在平常的研发管理中,应重视「好习惯」的培养,若等到技术债堆积成山,系统病入膏肓才着手解决,恐怕就为时已晚了。

建议在日常的研发管理中,加强代码审核机制,实行代码的P3C规范化检查;前期对业务的技术方案也应作出合理取舍。

另外,架构设计应结合实际业务和资源进行充分考虑,谨防过度设计。 好的架构是演化而来的,没有一劳永逸的完美架构。

场景三:频繁的故障排除任务

并行协同时,配置和资源文件的不同步也是造成冲突和问题的重要因素。为避免额外的排除工作影响研发效能,企业可以考虑提升配置和资源的独立性以及简化性。

第一,尽量按时间顺序管理需求配置的唯一值;如果不能保证唯一配置,则推荐按分组逻辑管理各组的修改值(不冗余其他组的原有配置)。

比如,按时间序列管理或分组并列管理,待确定提测节点后再进行合并。这样可以较清晰地发现冲突项,防止互相覆盖。

此外,除公共配置外,考虑按功能进行分组配置,不要将全部内容写在一个配置文件里。

第二,配置合并时,签入签出流程要尽可能短。 配置的合并过程需要审核,但配置调整的流程时间窗口不易过长,以免造成额外的等待成本,诱发潜在的冲突。

场景四:生产问题排查与数据安全性

许多时候,生产环境的数据必须脱敏,但同时,研发团队又需要验证生产问题或缩小问题的影响面。这种情况应该如何解读和解决?

1. 用脱敏后的非敏感数据完成验证

生产环境的客户数据脱敏后,记录部分非敏感的ID参数、异常等日志仍可以作为有效数据,完成特定场景下的分析诉求。

2. 在Pre准生产环境同步非客户数据

准备一个与生产环境相对一致的「克隆体」——Pre准生产环境,同步并通过非客户数据完成生产环境的验证。

非客户数据包括部分生产测试的数据、经客户允许的可搜集的部分数据,以及经过合规完全脱敏后的数据等等。

3. 采用A/B测试,先行渗透运行

通过少量客户渗透,或对部分特定租户进行生产环境的短时渗透运行, 稳定后再投入大规模部署。

场景五:环境复杂度

研发过程中,开发环境和部署环境的复杂度也会影响研发效能。因此,建议尽可能地降低自测、联调、环境部署的复杂度,以及同一个服务的代码量和复杂度。

举个例子,有些系统仅是启动就要耗时 30 分钟,那么每位开发者每天花在应对环境、应对启动的时间成本也显著增加了。

场景六:生产问题和潜在问题

不可否认地,没有一款产品、一项服务能永远不出问题。因此,搭建有效、可快速反应的业务监控和运维监控体系非常重要。

不管选用哪种监控平台系统,核心目的都是监控核心目标,并实现关键指标的及时预警和通知。有效、直接、快速地反应和处理发现的问题,比丰富的监控方案更为重要。

其次,重视测试环节。 考虑补充多种测试手段,尽可能地发现问题,比如针对接口的自动化测试、针对场景的集成测试、对大型系统的压测环境等等。

场景七:非技术影响因素

在研发流程管理过程中,非技术因素也会对研发效能产生重要的影响。

  • 研发流程的简洁性与合理性
  • 产品持续输出与合理的需求粒度
  • 会议效率和沟通协调的成本及损耗
  • 性格不同导致的有效沟通方式的差异
  • 长期的紧绷状态

Liga总结

研发流程管理是研发效能提升领域中重要的议题。管理者可以以鸟瞰视图,分析和判断研发全生命周期的运转情况,并借助智能化的监控和预警工具,发现问题、解决问题、避免问题,做出更可靠的管理干预和引导。

了解更多敏捷开发、项目管理、行业动态等消息,关注我们 LigaAI@oschina 或点击LigaAI - 新一代智能研发协作平台,在线申请体验我们的产品。


695856371Web网页设计师②群 | 喜欢本站的朋友可以收藏本站,或者加入我们大家一起来交流技术!

自定义皮肤 主体内容背景
打开支付宝扫码付款购买视频教程
遇到问题联系客服QQ:419400980
注册梁钟霖个人博客