项目过程管理分享

每个项目的生命周期,基本都大同小异。从项目立项,产品方案澄清,技术方案设计,开发落地,测试验证,上线灰度,效果复盘,持续改进,有大的改进项再重复一遍前面的过程。

如果我们完成了一个项目,作为一个项目负责人,要对项目的过程管理复盘,可以从如下三个方面展开来说:为什么要做、怎么来做、效果怎样。

为什么要做

在十年前我初入职场的时候,我记得当时领导就反复跟我们强调过这个问题,一定要反复追问这个问题,它代表着你为什么出发,你做这件事情的动力和价值。

经过这么多年后,在职场我却经常发现很多研发人员却不关注这个问题,他们会陷入只做事情,不愿意思考为什么要做,如果你问他们做这件事情的价值和意义?

经常会得到这样的回答:

  • 这是业务提的需求,他们要做。
  • 这是老板的要求,要完成老板的任务。
  • 这是谁谁谁的硬性指标,要完成的。

一旦得到这样的回答,其实就代表了你只是一个工具人,你根本就不知道做这件事情的初衷,那就更谈不上你能够把这件事情做得很出色。

为什么要做?要回答这个问题,可以思考的很深入,也可以很简单。随着你对不同行业的深入,你回答这个问题的层面也会不一样。

以自己多年从事软件开发的经验,回答这个问题会涉及以下几个方面:

  • 这个需求要解决什么问题?当前的现状是怎样,为何要当前解决。
  • 解决这个问题的成本和收益,投资回报率是否值得。
  • 对比行业内的解决方案,我们做的是否更有竞争力。

对于这个问题,越是优秀的人,越是卓越的人,回答的更是让人醍醐灌顶,耳目一新。而刚入职场的新人,往往只知道做事情,而容易忘记了为何要出发?

怎么来做

对于怎么来做?这是工程师的比较擅长的范畴,很多工程师也是到了这步才知道要做什么,从而更专注在怎么做的范畴里。其实知道要做什么,比怎么做要更有挑战性,这也是为什么很多公司越是靠近客户的职位,越能够得到快速的发展和升职的机会,因为市场的需求是从他们手里接过来的,而研发人员是做好稳定可靠的后勤保障。

下面聊聊怎么做好高质量,稳定可靠的后勤保障?

市场的需求接到后,一般会进行立项和需求分工。项目经理这个角色,就是负责需求的落地和最终上线。

  • 大公司由于各种人员比较齐全,会有专门来做项目管理工作的工种。
  • 小公司,一般不会专门设立一个项目管理的人,主开发就承担了这个角色,既承担开发的责任,也承担项目的过程管理。

作为一个主开发人员,既要有一部分开发任务,同时也要负责整个项目协同控制,如何来做好这个角色?

  • 前置沟通留空间。
    1. 项目前期沟通,先把需求任务的方向定好,给大家一定的思考和准备时间,确认大家对需求的目标达成一致。
    2. 需求澄清阶段,不讨论过细的任务工作,也不讨论具体的排期计划,有一个截止日期即可。
  • 整体架构明确职责。
    • 架构设计一定要明确各个部门要交付的开发内容。
    • 定义清晰各个部门相互配合的接口定义,这个会极大的减少后期相互拆皮的麻烦。
    • 整体上下游的交互流程要体现清晰,确保大家对整体的流程认知达成一致。
  • 任务拆分控偏差。
    • 任务拆分的粒度要足够细,确保每个任务的工作量不超过3人天,这样即使过程出现任何风险,也可以及时调整和控制。
    • 任务拆分要足够明确,每个任务是一个独立可以交互的原子能力。
  • 借助工具提效率。
    • 借助工具来提升项目管控的过程,让大家时时了解各自的任务,然后从整体上把控风险和进度。
  • 进度跟进控风险。
    • 基于日报的形式,让大家了解整体的情况,更新整体的风险,及时解决过程风险遇到的问题。

研发人员经常会陷入到具体的技术钻研上面,深入研究底层的技术实现和原理,但是这些终究很难创造价值,技术说到底依然只是工具,业务才是目的。

整个过程的管控,是为了更好的把业务给落地,以事情的闭环为目的。过程中我们得到的经验和沉淀是大家的成长和收获,大家在做事的过程中既帮公司实现了业务目标,同时自己也收获了成长,这才是公司做事的终极目标,让员工和公司达成双赢的局面。

效果怎样

一个项目上线对于研发人员来说是事情的结束,但是对于一个产品和业务人员来说事情还远没有结束,上线后结果要持续跟进和分析,是否达到了当初立项的目标。

这个时候就需要数据分析人员的介入,开发过程中的埋点数据,就是为后期上线的效果复盘准备的。

项目上线前期,可能会小范围试点,试跑一段时间后,分析这个试跑阶段的数据情况,看看是否符合预期?

  • 如果不符合预期:还得分析开发阶段的问题和方案,对项目进行迭代和修正,确保最终达成目标。
  • 如果符合预期:就可以放到更大范围来试点,通过更大范围的数据来分析效果,如果都没有问题,才最终全量上线。

从一个项目的角度来看,从立项到最后的复盘才算是一个项目完整的生命周期。而研发人员,在其中并没有看到全局,只是负责了中间的落地的管控过程,所以作为一个软件开发人员,我们要提升自己的全局视角,完成开发任务只是一个小的环节。只有你掌控了全局并且理解自己做的这个任务在整个项目中的意义,你才能够看得更远,想得更深。

相关推荐
uzong4 小时前
技术故障复盘模版
后端
GetcharZp4 小时前
基于 Dify + 通义千问的多模态大模型 搭建发票识别 Agent
后端·llm·agent
桦说编程5 小时前
Java 中如何创建不可变类型
java·后端·函数式编程
IT毕设实战小研5 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
wyiyiyi5 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
阿华的代码王国6 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
Jimmy6 小时前
AI 代理是什么,其有助于我们实现更智能编程
前端·后端·ai编程
AntBlack7 小时前
不当韭菜V1.1 :增强能力 ,辅助构建自己的交易规则
后端·python·pyqt
bobz9658 小时前
pip install 已经不再安全
后端
寻月隐君8 小时前
硬核实战:从零到一,用 Rust 和 Axum 构建高性能聊天服务后端
后端·rust·github