腾讯TAPD合作动鱼数码:“次元召唤师”的版本管理之路
(1)客户介绍
旗下手游“次元召唤师”项目组从早期的十几人的团队到功能研发密集期的五十几人的团队,从混乱的版本管理到有计划、有效率地完成各阶段的开发,整个项目组经历了艰难的蜕变之路。
(2)项目背景
第一阶段:项目初期(2014-2015)
项目主要通过Excel形式跟进版本需求,每个版本发布时间存在不确定性,在制定计划初期无法评估最终发布版本的时间,每次版本节点会因为部分功能开发的延迟而推后。
第二阶段:磨合期(2015-2016)
项目组进入了功能开发集中时期,同时进行iOS和Android开发,此阶段项目组主要运用Excel、邮件和Mantis进行版本需求跟进。Mantis的缺陷在于无法直观地把需求和缺陷区分开来,在测试和开发并行时期会使开发人员对功能的优先级产生疑惑。
直到2016年12月初项目组接触并使用TAPD对项目开发进行管理,版本迭代管理、缺陷独立管理和报表统计分析等模块对我们的项目管理颇有益处。需求和缺陷的关联方便开发人员和测试人员记录问题,不会因为个人原因遗忘或者遗漏缺陷,每个需求的状态流转可以实时进行验收反馈,降低了沟通成本。
第三阶段:测试阶段(2017)
随着项目功能不断完善,项目进入测试阶段,版本发布的节奏稳定在两周一次,开发团队在合作中对TAPD的使用逐渐得心应手。每个版本制定计划时按照人日计算工作量,按照优先级从高到低进行开发,确保每个版本发布前2个工作日的稳定版本时间。如果当前版本中存在优先级低的未完成项,延后至下一迭代,并作为最高优先级进行开发。通过TAPD的帮助使团队中每个成员的目标性更强,团队合作精神得到提升。
(3)解决方案
2017年开始,项目组的iOS和Android开发基本稳定,在此基础上,针对海外业务,项目组提出了多语言版本开发的需求,虽然现阶段还未进行版本测试,但已在TAPD建单并完成开发,可根据计划随时进行功能发布。
项目组采用2个迭代开发,1个迭代进行优化的方式稳定开发,由于开发人员有限,采用的措施为全员开发完成一个版本后拉取分支,再从主干上继续开发,如果要修改测试版本(完成时间不能超过1人/日),由相应的开发人员对负责的功能进行修改,再根据具体延迟时间,对后续功能进行调整,确定主干完成时间。项目组在主干开发的过程中,同时只维护一个分支开发。
在制定一个版本开发内容后,产品经理、客户端主程序会和相关功能开发人员确定当前功能的完成时间,并在TAPD上建立功能开发的截止期,在截止期前2天会再次确认是否可以按时完成,对于不能完成的情况会在TAPD单上写明延迟的原因及延迟至几日完成。在一个功能开发完成后首先由策划验收,对于不符合功能的情况进行说明,开发进行修改,直到验收合格后将TAPD单转至测试验收,测试根据已完成的测试用例进行验收,最后合格后进入版本。
TAPD给团队带来的便利
1、按照优先级进行版本规划
每个版本的内容不会总是按照计划进行的,对于必须加入的内容、需求开发的延期、美术资源的修改,版本发布时产生的bug,如果没有有效的进行管理,就会造成版本的延迟。
TAPD优先级的使用对于新加入的功能开发时间段进行了明确,对于优先级低的功能在制作人、产品经理和主策划商量后会延后至下一版本,保证每一版本迭代能准时发布。
2、并行开发时需求明确
项目组中期存在沟通问题,会把应该传至分支的开发内容在主干中修改,这为策划验收功能带来了额外的沟通成本。使用TAPD后每一个迭代和分支的开发内容一目了然,面对各方提供的需求,只要记录在需求池中,相关的开发人员、验收人员和测试人员都可以根据记录进行需求跟进。
3、项目组人员职业素质考核
通过缺陷分布图、趋势图统计分析可以看到每个阶段各个项目组成员的bug产生数量,需求统计分析也可以直观的看出每个版本开发周期每个员工的工作完成数量,使项目组可以有针对性的提升员工的职业素养。
(4)价值体现
在TAPD的帮助下,“次元召唤师”项目组实现了蜕变,不仅稳定了开发节奏,而且提升了团队成员沟通协作的效率。期待未来在TAPD的陪伴下,我们可以实现更多突破!