软件开发项目快速研发整理总结
无论项目过程中发生了什么,任何讨论,会议等只针对项目,不针对个人。因为一个项目是一个整体,一个人的不足就是整个项目的不足,共勉~
介绍
? 写此文档目的有两个:
-
帮助自己梳理项目管理中该注意流程以及问题 -
帮助想转项目管理或者入门软件开发项目管理一些事项
说明
? 软件研发项目(如Android、IOS、Web等)过程基本通用,不理解的可先套用,按照步骤理解每一步每个职位在每个时间节点该做什么,明确任务目标,合理分配任务,达到快速交付项目的目的。
过程
? 软件项目研发过程包含:立项、业务功能梳理、定义产品原型、定义项目测试大纲、确定项目开发计划、开发过程、测试过程、质量验收、项目交付。以上是项目开发主要内容,细节后续说明。一般涉及功能职位(产品经理,产品负责人,UI,测试人员,开发人员,质量)
立项
? 无论是外包项目或者自家公司项目,项目需求来源无非三方或者自家的市场调研或者反馈。一旦确定,召开立项会,确定项目内容以及方向和相关人员。
? 由于我们参与项目未必是从头参与,故立项单独拎出来说明。
其它
阶段 | 内容 | 责任人 | 备注 |
---|
功能列表 | 由产品经理主导,产品负责人为辅,根据市场或者三方要求或者反馈,整理相关需求,确定项目功能列表。 | 产品经理 | 产品负责人为辅 | 产品原型 | 由产品经理负责,根据功能列表整理。 | 产品经理 | | 测试大纲 | 由测试人员根据功能列表,部分可结合产品原型整理测试大纲。测试需考虑全场景覆盖等问题。 | 测试 | | 开发计划 | 由开发负责根据产品原型评估工作任务,确定开发各个模块开发负责人以及任务,完善开发计划。 | 开发人员 | | 开发过程 | 项目开发过程中,边开发边测试;开发分阶段开发;测试分阶段测试;所有功能开发完成后,进行全功能开发 | team | 具体看开发过程说明 | 质量验收 | 由项目负责人提交,由专业的产品质量来验收,确定成果是否合格达标。 | 产品质量 | | 项目总结 | 无论项目交付质量高低,后续必须进行项目总结。总结本次开发过程中的优缺点。 | ALL | |
举例说明:
? 假如我们现在要开发一款覆盖全平台(Android ios web)的商城项目(长期项目)。我们跳过立项和市场等因素,直接进入项目开发过程。那么我们具体任务:
-
整理当前收入的需求;讨论确定第一阶段交付任务目标(由于是长期项目,我们每个迭代暂定2个月。简单说,2个月一个版本);根据交付任务目标确定完善具体项目功能列表; 需求(1-2天内完成):
1. 增加秒杀功能
2. 增加代付功能
3. 增加优惠券功能
-
确定功能列表后,组织会议讨论。目的: 功能列表同上面需求(1-2天内完成)
* 项目相关人员了解项目内容
* 确定需求是否合理,以及功能等能否实现,或者实现需要额外条件等。
* 项目的每个功能必须要有统一认知,因为认知不同可能会导致项目开发功能方向偏离,导致项目事故。(次要求较高,需慢慢磨合)
* 重复此条,直到完全确定功能列表,大家的认知基本一致。
-
产品根据功能列表,设计原型。会议讨论: 原型不画了。根据任务量,确定完成时间。(一般2月项目周期,原型2天基本差不多了)
* 原型设计是否合理(交互等)
* 是否可以实现(存在认知偏差等因素)
* 重复此条,直到完全确定原型,大家的认知基本一致。
-
测试大纲(1-2天内完成),次任务与产品原型并行,过程中可与产品和开发讨论细节。主要根据功能列表编写测试大纲。会议讨论: * 确定测试大纲是否合理
* 确定测试场景是否覆盖完善
* 明确测试阶段,测试时间。
* 重复此条,直到完全确定,大家的认知基本一致。
-
开发计划(1-2天内完成)(四端:Android IOS WEB 后端),于测试大纲并行。根据功能列表,产品原型,测试大纲,以及自我功能拆分,评估工作内容以及时间,完善开发计划。会议讨论: * 确定任务分工
* 明确任务时间节点
* 功能拆分颗粒越小越好,开发过程中,根据情况调整,普通功能 2天左右提交,困难任务根据评估时间提交。每次提交后,由测试及时测试。
-
开发过程:
- 开发根据计划,在固定时间节点提交开发的功能。
- 测试根据计划,在固定时间节点接入测试。
- 开发主要内容:分功能开发,提测,以及分功能bug处理。(一般情况下,我们要求:分功能bug,尽量在开发下一阶段时修改完成。特殊bug(花费时间长,影响范围不大),可延后处理。)
- 测试内容:整个过程中,测试任务相当重,几乎整个开发过程中,一直在测试。目的是发现问题,解决问题,提升项目质量。
- 分功能测试(根据项目时间确定次数。2月项目周期建议3次分功能提测。),bug提测,bug验收。
- 开发完成所有功能后,进入全功能测试(2-3轮全功能测试,开发提测时间3天左右,根据实际情况调整),测试时间2-3天。
- 全功能测试后,评估项目质量,进入系统测试。
- 系统测试(一般2轮内,要求项目基本不能大的改动)确定是否合格,如果不合格则考虑砍掉不合格功能,保证任务时间节点,保证顺利通过质量验收。
- 系统测试合格后,由产品质量验收。
- 产品验收:根据测试报告以及测试大纲验收项目产品。
-
项目总结
- 总结项目过程遇到的问题
- 每个人发表项目过程中发现的问题和不足
- 讨论项目中问题的解决方案
- 发表项目过程中优点
- 由项目负责人总结优缺点。
-
其它说明:
根据现有项目时间节点,功能,评估需求优先级,根据优先级调整。原则是:时间盒子不变,项目开发功能替换,或者砍掉。
总结
? 项目开发过程中,无论任何事,都是人在做,是人做就有可能犯错,那么作为PO(项目负责人)应该时时刻刻关注项目中的异常情况,根据情况进行谈心或者调整。无论项目过程中发生了什么,任何讨论,会议等只针对项目,不针对个人。因为一个项目是一个整体,一个人的不足就是整个项目的不足,我们共勉~
注:
? 不擅长写文,个人心得,不喜勿喷。
|