相对于其它行业,互联网是将项目管理运用的较为纯熟的行业之一,其中软件研发更是很早就开始以项目形式运行了。
尤其因本身的行业特性,更是很早就开始借助项目管理系统来协助流程步骤的管控。因为技术问题,研发项目涉及的内容较为繁杂,因此对于关键流程环节的管理更需谨慎。那么,接下来就简单说说软件研发型项目管理系统的关键步骤有哪些呢?
一、关于需要确认的内容,应多方达成一致
研发项目的目标不仅仅是完成项目上线交付,同时要确保项目交付产生效益和价值。因此项目启动时,必须和业务方就项目的目标和价值达成共识。
首先,业务规划阶段,明确新产品的价值和投入产出比;业务启动阶段,进一步分解该产品在实现后对组织的整体价值和意义,明确业务目标和业务预期价值,同时规划业务运营和推广方案。
然后,根据项目明确的业务规划及交付范围,确定里程碑计划、项目预算、质量要求等,让团队成员了解项目研发的目标,增强团队成员的责任感。
最后,通过项目启动会等关键会议,就项目的交付、价值等目标进行统一,最终在立项会上正式公布,与团队成员形成共识。
二、避免研发资源的不足,对需求进行分级
软件研发型项目管理系统的资源对于每个组织都是稀缺的,为了提高研发效能,聚焦核心价值交付,满足业务快速迭代的要求,项目组需要将需求分优先级处理。其实就是做好业务收集和定义,针对不同时点,不同成熟度的需求利用漏斗模型,将需求分为已提出、待排期和已排期,实现需求的滚动式确认,为研发交付提供有效的需求输入。
已提出:主要进行需求收集,根据业务特点按不同周期进行收集,业务方提报需求,该阶段不考虑业务和产品方案的成熟度,及依赖条件等。
待排期:主要进行业务范围梳理,业务方和产品经理开始沟通并确认业务及产品方案,评估需求实现和量化研发投入。
已排期:明确优先级,确认项目范围、资源投入及上线时间等。优先承接高优先级需求,工作量评估已完成,满足准入条件,投入研发。
三、及时发现解决问题,明确各方责任人
项目实施过程中,获得项目相关方对职责的理解和认同,才能最大限度的发挥他们的潜能。在项目中,我们通过三个方面进行项目相关方的职责管理:
首先,识别相关方,明确主责任人。项目立项阶段,团队明确各职能领域的负责人,如业务牵头人,主项目经理,主架构师、主产品经理,主技术经理、主测试经理、主UED经理,统筹各自领域的工作。
其次,明确项目组织架构,团队内公示。项目组一般分执行层和决策层,项目在执行层运行,信息定期通报至决策层,如出现争议或无法应对的风险上升至决策层。
最后,明确问题的响应机制,争议上升的处理机制。各职能负责人在处理问题时应该有主动处理的机制,沟通的层级提前确认。例如在本体系内的问题,应升级至对应中心的负责人;外体系的问题,应该升级至对接人的上级;无法解决的情况下升级至项目经理处。
四、完善风险管理,做好预防、控制措施
风险管理是日常项目管理中的核心环节,对于项目风险的管理,主要是利用措施进行预防与控制。
1、风险识别与跟踪应对
在项目启动前,团队需进行项目任务的准入检查,以提前识别风险。如立项阶段,我们需要从功能范围、技术难度、周边系统配合、资源、进度等方面识别风险;在项目的立项材料中,必须记录已识别的相关风险,纳入风险登记册进行应对和跟踪。
2、具体应对风险措施
通过组织晨会、例会、风险沟通会,与各系统的负责人及技术骨干,制定风险应对策略、明确责任人、解决时间。
对于低级别风险,通常应由项目执行层内解决,当出现以下两种情况时,需升级到项目决策层处理。一是,风险问题经过团队内部二轮以上应对无明显改善,超出了团队的能力范围,如涉及项目范围基线的变更、资源的协调等;二是,风险问题影响不止一个项目或需要更高层面的授权才能解决,在决策层面管理这些风险更加有效,如公共环境冲突,新增成本的投入等。
五、运用会议沟通,实时了解任务进度
项目从一开始就伴随着无数的不确定性,随着团队的研发进展,任务被一项一项完成,为了避免进度偏差,日常管理中,项目经理应组织多层级的沟通会议,实现对项目整体进度的有效控制。
每日晨会或日常会议。主要沟通项目成员的当前工作及即将开展的工作,通报存在的困难,项目经
理及各领域负责人,应有效识别团队成员当前任务与计划的偏差,及时进行纠偏。
总结例会或任务阶段节点会议。由主项目经理发起,子项目经理及核心成员参与,通报项目组整
体的进度、下一步计划及项目风险问题与应对等。
决策讨论或风险会议。一般由主项目经理或业务方发起,主要由项目决策委员会成员和核心相关方
参与,进行阶段进度汇报,重大风险问题决策,绩效报告和运营规划等。
软件研发型项目管理系统是较为复杂的,因时不时可能会有bug的出现,以及可能会需要进行迭代研发等,项目管理流程不会顺畅到底,其中的变量因素太多,所以保障好关键性步骤的成功,是对项目整体成功的一个保证。