需求子任务的数据管理提效实践
背景
公司目前通过 TAPD 对需求进行项目管理,公司的业务需要可视化的方式快速查看需求的资源情况,例如涉及人员、关键时间节点、耗时,我们选择将需求信息维护在 TAPD 上便于查看;
同时为了使项目排期更精准,推动大家通过拆分子任务的方式细化排期。
因为需求拆分子任务和维护需求字段的目的不同,业务同学维护的信息是有重合的,下面给大家介绍下 2 种通过技术手段减少相关同学的维护成本的方式。
一、子任务自动同步需求字段
子任务的字段和需求字段是有对应关系的,在需求上我们每次在子任务填写了预估工时,就要对照自己角色算一下,按照角色划分,QA、RD、FE 的预估工时分别同步到需求对应角色的「总耗时」,与此同理,处理人、预计开始、预计结束也按照角色同步相应字段上。
这就让大家维护子任务+需求本身两套字段,比较耗时。
为了通过技术自动实现上述内容,我们需要做到:
• 监听到子任务变动
• 子任务的信息和需求的信息达到整合
通过调研发现,TAPD 的 webhook 可以通过「触发条件 + 执行动作」支持监听,同步需求字段值逻辑可以在我们项目接口实现。
1.技术方案
我们需要在 TAPD 设置 webhook 的监听规则,当子任务的字段值变化,webhook 就会把变更信息推送到我们指定的 URL。
例如子任务的处理人变化时,就会请求到我们项目的接口,通过接口我们可以对子任务字段值进行处理。再利用 TAPD 提供的的 api,发送更新需求字段值的请求,交互就完成了。
2.设计流程
此处以更新角色为「QA」的 QA 预估工时、测试人员、QA 预计开始、QA 预计结束字段举例。
就这样,我们就实现了当子任务有字段值变动时,根据规则自动同步到需求字段上。
二、OmniPlan 文件批量同步 tapd 子任务
公司的很多业务团队的大项目在用 OmniPlan 排期软件规划排期、维护子任务。
使用 OmniPlan 的优缺点
• 优点:专业排期软件,适用于大项目或多需求迭代方式。
• 缺点:不是 TAPD 自带的软件,没有原生接口交互,无法做到信息实时同步其他人。
那么有什么办法可以把 OmniPlan 和 TAPD 关联在一起呢?
对此我们研究了一套实现方案,可以让 OmniPlan 文件自动生成子任务。
1. 技术调研
OmniPlan 默认保存的文件格式是「.oplx」,通过路径就会发现它下面还有几个文件。
打开 Actual.xml 就会发现它的字段值可以跟 TAPD 子任务的字段有映射关系。这样我们就可以通过解析 xml 的方式生成子任务的集合。
根据 xml 的规则对照 TAPD 的子任务字段一一对应解析,再把组装子任务的结果通过 TAPD 提供的 api 发送 TAPD 新建子任务的请求,新建子任务就成功了。
2. 实现效果
在页面上传排期文件,表格显示解析结果,可选择任务批量导入。
TAPD 子任务创建成功。
大项目使用 OmniPlan 排期后,通过上传页面解析的方式,再也不用一个个手动的新建子任务。
在调研过程中,发现其中还有好几种实现方式,例如可以把排期文件导出为 csv 文件,再把 csv 文件解析,但是这种方式需要用户多一步的操作,影响用户体验。
我们选用的是解析 xml 的方式,使用 xml 解析更加灵活,树形结构可存储关系数据。
总结
我们用 webhook 完成了子任务变更同步上需求字段,减少了大家维护两套字段的成本。
通过解析 OmniPlan 排期文件,完成了文件直接生成 TAPD 的子任务,节约了大家手动导入子任务的时间。
在工作中面对问题,善于发现其中的痛点,善于分析,找到对应的解决方法,做事将事半功倍。
本文介绍到这里就结束了,如果大家对本文感兴趣,欢迎大家点赞、收藏、转发。
作者:夏倩文
转转研发中心及业界小伙伴们的技术学习交流平台,定期分享一线的实战经验及业界前沿的技术话题。
关注公众号「转转技术」(综合性)、「大转转 FE」(专注于 FE)、「转转 QA」(专注于 QA),更多干货实践,欢迎交流分享~
版权声明: 本文为 InfoQ 作者【转转技术团队】的原创文章。
原文链接:【http://xie.infoq.cn/article/f537ce1f8a92efa2908bbe1ce】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论