软件开发项目管理小结
- 明确项目目标、投入产出价值、人员、时间
- 明确项目目标、范围边界
- 人员分工明确,责任边界清晰
- 有明确的项目完成时间,时间安排清晰可预期
- 拆解到0.5~2天周期的任务颗粒度
- 新人经验不足时,估时适当放宽,且可请有经验的同事协助一起估时
- 以上事项明确后,可通过项目启动会让所有相关方知晓项目信息及参与人
- 启动会(kick off)需要产品、开发、测试、运营,及相关的各级领导参与,以示对项目的重视,以及对齐大家对人力投入和项目成果的预期
- 需求要以文档和交互稿形式明确所有需求点
- 开发、测试、产品一同评审需求,明确各项细节及技术可实现性
- 任务拆解、排定到人、安排时间
- 分层、分功能、分模块开发,拆解任务,尽量并行
- 测试可用先做接口测试,再做功能测试;功能按模块提测,也是并行手段
- 开发产出技术设计文档,包括模型存储设计、缓存使用、接口设计、服务调用等
- 完成后提交技术组内或资深开发来做技术评审
- 测试产生测试设计文档,可以用脑图、表格、文档或其他测试用例工具
- 完成后发起测试方案评审,由开发、产品、测试共同参加
- 微信、企业内部IM或当面沟通,对于需求细节问题及时、快速沟通,实时解决
- 每日站会沟通当前状态进展,暴露项目中存在的问题和风险,寻求及时解决
- 日报、周报邮件,汇总项目进展、排期、预期上线时间等,周知到所有相关方
- 测试介入后期可以做每日bug triage,确保bug顺利推进解决
- 有需要时需要向上沟通寻求内部资源或跨团队协作上的支持
- 比如tapd、禅道等对需求任务进行拆解,并可指派到人、时间,可视化项目进度
- 需求和缺陷也都可以有个跟踪
- 项目组内及时沟通所有项目相关信息,保持信息透明
- 项目需求、技术设计、测试设计等都需要周知到相关方进行评审
- 中间发现项目有未考虑到的地方或延期等风险尽早暴露出来周知到相关各方
- 项目中有任何的变更,不管大小,都需要周知到相关各方
- 开发上借助代码Review提升代码质量
- 开发完成后,需要产品体验来验收需求实现的一致性和交互的易用性
- 新人参与项目最好由有经验的同事带着做进度和任务质量的把控
- 上线前可以通过预发布环境来验证线上数据情况下的系统可用性
- 上线前准备发布预案,做好周知,让相关方提前准备
- 因为业务发展压力,往往优先级不高
- 技术项目往往解决的是系统稳定性、可扩展性、易用性的问题,效果是长期的
- 立项时要明确项目价值,是否在当时是优先级比较高的项目
- 可以结合产品需求来推进,在产品也有很大的痛点正好可以通过技术项目的推进解决时,往往项目推进就比较顺利,不需要太多地去说服产品,更多的是水到渠成
- 相对来说,技术对需求和交互设计的参与度更高,往往现有技术方案,再配套交互,让产品来完善产品需求和交互细节
- 产品和业务先明确大部分需求和交互设计,再找开发讨论可行性,OK了就可以完整提出需求进入需求评审等项目流程
今天做了一下项目管理方面的小结和相关交流讨论,做一点梳理
立项要求
项目目标
项目分工
项目周期
项目估时
项目启动
需求评审
项目排期
技术设计与评审
测试设计与评审
项目沟通
项目管理工具
风险控制
技术主导型项目
业务、产品主导型项目
还没有人抢沙发呢~