大数据时代如何提升研发效率

作者:刘楚蓉

团队:腾讯移动品质中心TMQ

随着大数据时代兴起,越来越多新领域业务兴起,如智能推荐、内容搜索、机器人对话等,通过传统手段测试无法快速反馈新领域业务质量,本文旨在提供一种解决问题定位效率,提升研发效率的方法思路,可以尝试用于解决功能数据链路长,难以快速定位问题,耗费人力的问题。

一、解决方案思路

传统测试手段可能存在后台服务log不够完善,缺乏上下文信息,且测试与问题解决流程分离,存在问题复现环境构造成本高等问题,本文分享的解决方案核心内容主要是一体化流程解决发现问题-定位问题-解决问题效率问题,通过梳理各层链路功能,对于问题定位的关键信息进行打点,通过平台化展示各层链路的定位信息,发现问题时可即时提bug单,并把bug信息统一收敛到平台,在平台进行问题记录及解决,整体形成信息聚类及bug闭环分析。可作用于搜索、机器人对话、智能推荐等链路复杂的领域,不管是业务体验、功能测试、bug定位、badcase定位,都可以通过平台统一流程化提升研发效率。

二、测试流程

该方法应用于AI对话、搜索、智能推荐等产品中,在平台中,可详细查看功能链路各层处理逻辑及数据,如用户画像、算法逻辑、排序逻辑、分词逻辑等,发现时可在平台直接提bug单并快速解决。

大体测试流程如下:

三、实现框架

数据埋点:主要进行后台模块逻辑梳理,在各环节模块打点,这里跟业务相关,需要分析业务中发现问题时的分析流程及分析信息,进一步尝试把这些信息可视化。

后台交互:主要进行输入请求,拉取结果信息,以及辅助分析的后台各模块log详细信息。需要根据后台服务通讯协议进行交互。

信息管理:主要管理测试过程拉取的上下文信息、log信息、提bug单时的上下文状态、bug单信息。

页面展示:展示测试流程页面、log信息、问题列表、日志字段说明等信息。

四、举个实例

以AI对话为例,本小节分享在AI对话如何通过统一平台提升研发过程问题定位解决效率。

流程说明:

(1)后台信息埋点:主要对后台模块进行关键信息打点,例如控制模块、自然语言处理模块、机器人意图匹配模块等。为避免线上服务影响,后台服务收到请求时识别请求是否带debug标志,如果是,才输出埋点信息。

(2)数据请求:在页面输入对话信息,点击发送后,通过后台请求数据结果,同时拉取该请求在后台模块中处理的逻辑信息。点击log可展开详细的log信息,在不同人员体验过程,详情的log信息可以辅助提升分析效率,如下图所示(为让角色可理解log信息,log信息说明也通过平台化展示):

(3)一键提单:如果发现问题,可在对话界面中点击“记录问题”,输入case描述,便可进行问题记录。此时提单后会记录上下文信息,后台服务log等。

(4)定位解决:开发人员定位解决问题时,可以直接进入平台上问题列表看到提的单,点击可查看详情,且记录了上下文信息及详细的各模块信息辅助分析。

(5)其他分析工具:除了上下文log,在平台中,根据业务需求,也增加了其它辅助分析工具,如文本分析工具,可分析一句话的分词结果正确性,词组的相似词等,可进一步提升问题定位效率。

五、小结

本文分享的是针对目前大数据业务领域因链路复杂、交互服务多而出现的定位问题及解决问题效率低下问题,可以如何通过平台一体化流程实现发现问题-定位问题-解决问题在项目中的快速落地,有效解决传统测试流程中发现问题与定位问题环节隔离,定位效率及解决效率低,投入人力大的问题,进而提升研发效率。平台可以根据各业务不同扩展不同能力,如利用信息聚类实现问题批量分析能力、评测语料管理、测试任务管理等能力。

关注微信公众号腾讯移动品质中心TMQ,获取更多测试干货!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯云安全的专栏

Android 9 Pie 正式发布,腾讯云应用加固完美适配

1371
来自专栏DevOps时代的专栏

一篇文章搞清楚 CI, CD AND CD

CI, CD AND CD 当我们在谈论现代的软件编译和发布流程的时候,经常会听到CI 和CD这样的缩写短语。CI很容易理解,就是持续集成。但是CD既可以指代码...

2978
来自专栏程序员的SOD蜜

2010技术应用计划

导读: “2010技术应用计划”是去年3月中心部门头脑风暴“成果”的一部分,现在重新回顾一下,当时的许多计划或许对现在及以后还有一定的意义,故放在我的博客“朝花...

2026
来自专栏SDNLAB

微服务:数字化未来的基石

毫无疑问,数字化迁移(DX)正在彻底改变业界开展业务的方式,而云计算则是数字化迁移的关键。云的弹性确实可以帮助数字企业更快地进行沟通,增加企业的创新。但为了充分...

3396
来自专栏非著名程序员

Android新手必须重视的5个开发误区

Android新手必须重视的5个开发误区 非著名程序员 作为Android开发的新手,要想学好一门语言的开发,必须重视学习方法和养成一个良好的开发习惯。一个好的...

1895
来自专栏云计算D1net

基础设施即代码让混合多云管理更为复杂

对于任何一个力,都存在着一个与其大小相等方向相反的反作用力。这个物理学上的牛顿第三定律也同样适用于IaC:虽然这一服务是有优势的,但它也带来了一些问题。 本文是...

2668
来自专栏云原生架构实践

分解模式 - 按业务领域分解模式划分微服务

使用微服务架构开发一个大型复杂的应用程序,我们需要将应用程序细致,合理地分解为一组松散耦合的微服务。微服务架构的目标是通过实现持续交付/部署来加速软件开发。

1462
来自专栏java一日一条

5个可以帮你优化App的优秀网站

也许现在有一款App可以提供所有你需要的,你不需要的,或者你可以想象到的内容。但是,有多少App真的可以不仅满足需求而且还能提供很好的用户体验呢? 相信很多AP...

582
来自专栏WeTest质量开放平台团队的专栏

WeTest+微信:小程序云端测试系统上线

两天前,微信新增小程序测试系统,可便于开发者检测小程序缺陷,评估小程序产品质量。在小程序发布之前,开发者可将小程序代码提交到测试系统,在不同型号的手机真机上运行...

1712
来自专栏SDNLAB

网络团队还是DevOps:应用程序交付究竟应该由谁管理?

毫无疑问IT技术和基础架构在过年几年当中实现了快速发展。而网站系统也已经从最初的“脚本和文件的简单组合”发展成为“由可重用代码组件构成的复杂模块化应用系统”——...

28110

扫码关注云+社区