购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

四、敏捷与过程改进

软件质量保证业内提到的各种过程改进的模型、方法众多,根据我们在淘宝研发团队里的经验,从解决问题、保证产品质量的角度出发,针对不同团队的现状实施适宜的改进策略尤为重要,特别是在业务迅速发展、组织架构变动频繁的情况下,各部门的改进规划要既有长期的目标,也要尽可能看到短期的效果/评价。

解决问题的出发点:

●产品质量。

●团队效率。

●人员意识和能力。

我们对各种不同研发团队进行观察,发现虽然业务特点不同、团队管理风格不同,但是在相同的研发过程下,各个角色的关注重点/协作上的问题,存在一定的相似性,举例如下。

产品经理:

●开发资源的使用,项目/日常需求进度是否透明。

●开发是否能按计划完成项目。

●开发完成的功能是否符合预期。

●开发的版本质量是否令人满意。

开发:

●产品经理对商业远景和项目目标是否有很好的把控。

●产品经理对运营需求是否很好的疏通、整理、归纳。

●产品经理对项目效果是否有及时的分享和反馈。

●技术驱动项目是否能获得产品经理的支持。

●开发是否疲于响应运营抛出来的查问题的要求。

●打包发布过程是否顺畅高效。

测试:

●测试资源被浪费的现象是否明显(约定的提测时间不能提测、测到错误的版本、反复预发测试等)。

●WonfixBUG是否有计划地安排到开发计划里。

●是否存在未经测试就上线的行为。

SCM、安全、PE:

●对于安全漏洞开发同学是否能及时修复并推进上线。

●QA是否及时进行发布前后的确认。

●发布计划延期和变更是否频繁。

●上线手册是否正确和考虑周到。

综合各个角色对协作方的要求,我们能够明晰出各个角色的职责,通过建立研发流程、流程推行和培训、改进效果评价、持续改进的各项活动,让这些角色充分发挥作用。例如,我们在量子统计团队建立的项目管理流程就如下图所示。

流程出发点为解决问题、提高整体交付的质量、效率和人员平均能力,力求简洁清晰,避免形式教条。对于必须遵守的原则,我们也会明确要求,例如:

晨会—— 必须准时到,开发前期、测试阶段产品经理必须参加。

技术设计文档—— 必须覆盖需求文档中需要开发的所有技术点,对于数据指标计算和计算流程需要双人Review。

任务分解记录—— 建议任务的分解要低于一个人日,分解的人时必须是该工作的最终开发人员认可的,要选择一个好的形式:Scrum的任务墙是一个好方式,每天一定要更新。

进度图—— 是一个很好的仪式工具,大家一定要用。

上线计划和手册、技术运维手册—— 所有的项目必须要有这两个手册。

总结—— 是项目的一部分,利于每个参与人的成长。

文档融入代码—— 对于函数的功能说明,模块的功能说明,请加入到代码中,以后我们会进行自动的考核。

这里在研发部门整体层面上,我们通过制定产品月度计划流程(解决立项和项目资源分配)、项目经理指南、运维流程、安全规范、配置管理规范等流程,为研发团队铺垫好整体环境。研发团队通过月度计划,确定当月需求列表,从而快速进入开发阶段,借鉴部分敏捷实践,比如Scrum、XP等,不断尝试适合自己团队情况的方法。 3MmES9PyJeneJAFJtCFFQsFRg+D2szH9EUh7olZqXi5PWlzDlX0kwrtz+eMLExei

点击中间区域
呼出菜单
上一章
目录
下一章
×