本文大纲
《我的敏捷软件项目管理实践》
混合模型执行流程
研发流程的5个阶段
软件研发类项目,基本上都要经历以下5个阶段。
- 需求阶段
- 设计阶段
- 编码阶段
- 测试阶段
- 上线阶段

混合模型执行流程
本文把这5个阶段细化,明确每一步做什么,实现上面提出的目标。
| 阶段 | 主导人-动作 | 工作内容 | 产出 | 难点 |
|---|---|---|---|---|
1需求阶段 | 产品经理-准备需求 | 1、产品经理调研需求,编写《需求文档》,画《产品原型图》。 2、产品内部评审需求。 |
产出《XXX项目产品原型图》 | 《产品原型图》有文字说明,交互说明,涉及“核心业务流程”的需要详细说明。 |
产品经理-发起需求评审会 |
|
| 一、影响分析:在“需求评审会”上项目经理带领研发团队,理解需求,并做“影响分析”,分析要改哪里?要关联哪些子系统。与产品经理就需求的合理性能进行交流。 二、需求评审会上,刚宣讲完需求,需求方立即问:什么时间能上线? 答:
| |
| 项目经理-立项 |
| 项目经理发出《XXX项目立项通知》邮件,收件人项目干系人。 包含:《软件设计时间计划》、项目组成员。 |
我还是习惯在禅道使用“项目”来管理一次迭代。一次小项目就是一次迭代。 | |
| 2设计阶段 | UI人员-设计 |
| 产出《XXX项目效果图》 | |
| 开发人员-设计 |
| 产出《XXX项目任务分工表》(粗略) 产出《XXX项目软件设计文档》 产出《XXX项目数据库设计文档》 |
| |
| 测试人员-设计 |
| 产出《XXX项目测试用例》或《XXX项目测试功能点》 |
| |
| UI-设计评审会 |
|
| ||
| 项目经理-软件设计评审会 |
| 会前:发出《XXX项目软件设计评审邀请》邮件。 会后:产出《XXX项目编码任务分工和排期计划》,并发出邮件通知 |
| |
| 测试人员-测试用例评审会 |
| 会前:发出《XXX项目Case评审邀请》邮件。 会后:产出《XXX项目测试任务分工和排期计划》,并发出邮件通知 |
| |
| 3编码阶段 | 开发人员-编码 |
| 产出《XXX项目任务分工表》(终版) |
|
| 开发人员-联调 | 前后端人员进行接口联调 | 开发人员要做自测,达到“自己满意”后再交付下一步。 | ||
4测试阶段 | 开发人员-提测 |
| 项目经理发出《XXX项目提交测试通知》邮件 测试人员发出《XXX项目Show Case通过》邮件 (冒烟测试) |
|
| 测试人员-测试 |
| 测试通过后,测试人员发出《XXX项目测试报告》邮件。 |
| |
| 产品验收 | 产品经理在测试环境验收 | |||
| 业务验收 | 需求提出人在测试环境验收 | 验收通过后,业务验收人员发出“《XXX项目》业务方测试验收报告”邮件。 | 对于一般性功能上线,预上线业务验收工作为非必须项,但对于重大功能或项目,因影响范围及意义较大,为保障上线质量,经产品经理/项目经理评估需要业务部门协助验收的,由负责项目的产品经理通知需求提出人进行预上线业务验收。对于产品经理/项目经理评估需要业务预验收的项目,预验收不通过的不可上线。 | |
| 5上线阶段 | 项目经理-上线计划沟通会 |
| 产出《XXX项目上线计划》 项目经理发出《XXX项目》上线计划、执行上线通知邮件 |
|
| 运维人员-上线 | 当收到"执行上线通知"后,按《上线计划》执行上线动作。 | 上线当天下午5点封包 停止上线的标准:(2021-3-29号加入) 上线超过当天22点未完成的,就停止上线,已上的内容回滚。 说明上线组织不充分,复盘并检查,第二天再上。 | ||
| 测试人员-验证 | 测试人员在生产环境验证。 | 验证完成后,测试人员发出《XXX项目线上验证通过》的通知邮件 | 上线的系统包含移动端小程序、App时,它们可以延时发布。 | |
| 业务人员-验证 | 需求提出人在生产环境验证。 | 验证完成后,需求提出人发出《XXX项目业务方线上验证通过》的通知邮件 | 由需求提出人进行线上验收,所有功能上线均需要业务进行线上测试验收。 | |
| 产品经理-验收 | 产品经理在生产环境组织项目验收。 | 产品经理对外发出《XXX项目上线成功通知》邮件。 | ||
| 项目经理-总结 | 项目经理组织项目总结会议,列出需要改进的方面。 | 产出《XXX项目总结》 | 可选 |
项目中产出的文档
| 文档 | 必须 | 负责人 | |
|---|---|---|---|
| 1 | 《XXX项目需求文档》 | 产品经理 | |
| 2 | 《XXX项目产品原型图》 | 是 | 产品经理 |
| 3 | 《XXX项目软件设计文档》 | 是 | 开发人员 |
| 4 | 《XXX项目数据库设计文档》 | 是 | 开发人员 |
| 5 | 《XXX项目开发任务分工和排期》(干特图) | 是 | 项目经理 |
| 6 | 《XXX项目测试用例》或《XXX项目测试功能点》 | 是 | 测试人员 |
| 7 | 《XXX项目测试任务分工和排期》 | 测试经理 | |
| 8 | 《XXX项目上线计划》 | 项目经理 | |
| 9 | 《XXX项目总结》 | 项目经理 |
项目中组织的会议
| 会议 | 必须 | 组织者 | |
|---|---|---|---|
| 1 | 需求评审会 | 是 | 产品经理 |
| 2 | UI设计评审会 | UI人员 | |
| 3 | 软件设计评审会 | 是 | 项目经理 |
| 4 | 测试用例评审会 | 是 | 测试人员 |
| 5 | 上线计划评审会 | 是 | 项目经理 |
| 6 | 项目总结会议 | 项目经理 |
项目中发出的邮件
项目流程相关的邮件–收件人是:项目组成员,抄送人是:项目组外的干系人,如上上级领导,跨部门同事。
| 邮件 | 必须 | 负责人 | 说明 | |
|---|---|---|---|---|
| 1 | 产品经理 | 已简化为直接在钉钉项目群中发通知消息 | ||
| 2 | 《XXX项目》需求评完成通知 | 是 | 产品经理 | |
| 3 | UI人员 | 已简化为直接在钉钉项目群中发通知消息,由产品经理跟进。 | ||
| 4 | 《XXX项目》立项通知 | 是 | 项目经理 | 收到此邮件表示:已立项 |
| 5 | 项目经理 | 已简化为直接在钉钉项目群中发通知消息 | ||
| 6 | 《XXX项目》编码任务分工和排期计划 | 是 | 项目经理 | 设计完成、评审完成后,以可评估出开发时间,此时发时排期计划。 |
| 7 | 测试人员 | 已简化为直接在钉钉项目群中发通知消息 | ||
| 8 | 《XXX项目》测试任务分工和排期计划 | 测试人员 | 当有多名测试人员时,需要明确分工 | |
| 9 | 《XXX项目》提交测试通知 | 项目经理 | 收到此邮件表示:编码完成、联调完成 | |
| 10 | 《XXX项目》Show Case通过 | 是 | 测试人员 | 收到此邮件表示:冒烟测试通过,提测成功 |
| 11 | 《XXX项目》日常测试报告 | 是 | 测试人员 | 日常的测试报告,最终测试通过报告收件人需包含产品经理和需求提出人 |
| 12 | 《XXX项目》在测试环境验收通过 | 产品经理 | 收到此邮件表示:产品经理在测试环境验证通过,可以上线了。 | |
| 13 | 《XXX项目》上线计划、执行上线通知 | 项目经理 | 已简化为直接在钉钉项目群中发通知消息 收到此通知,开始向生产环境部署代码,各方配合起来,执行《上线计划》 | |
| 14 | 《XXX项目》线上环境回归完毕 | 是 | 测试经理 | 收到此邮件表示:上线成功,大家可以回家了。 |
| 15 | 《XXX项目》投产通知 | 产品经理 | 向外部业务需求方发出通知,展现生产力的重要时刻 | |
| 16 | 《XXX项目》风险遇警 | 项目经理 | 当项目出现延期风险时,应发出此邮件 |