作为研发实践的主要形式,研发项目遵循PDCA管理循环的基本思想,以项目计划为龙头,牵引着项目执行、项目控制、项目变更、项目复盘等后续环节,进而推动研发活动的有序开展。
编制项目计划时,借助工作分解结构、网络计划、关键路径法、甘特图等项目管理工具,可以确保项目计划的结构化、直观性和可行性。
一、管理工具
任何一个管理体系,具体到实践环节,应该以“简单有效”为主要原则。因为简单,才容易被人们所理解、接受和遵循,然后才能发挥其应有的作用。管理体系落实到具体实践,要想确保“简单有效”,必须借助管理工具的应用。研发项目实践中需要用到的管理工具包括:工作分解结构、网络计划、关键路径法、甘特图,等等。
1. 工作分解结构
工作分解结构(Work Breakdown Structure,简称WBS),是以可交付成果为导向,将项目的目标和范围分解成任务,任务分解成工作,工作分解成日常活动,并为活动分配其所需资源的管理方法和工具。
应用WBS对项目工作进行分解时,应该遵循以下几个基本原则:
1)百分之百原则。WBS需根据项目的范围,百分之百地包含内外部交付物;每一级的子任务,百分之百地覆盖其父任务的工作内容。
2)相互独立原则。WBS结构中的各个元素相互独立、完全穷尽(Mutually exclusive and collectively exhaustive,简称MECE),相同任务只能在WBS的一个节点上出现,不能出现工作重复的节点内容。
3)80小时原则。也称两周制原则,指的是最小工作包的颗粒度不宜太粗,也不宜太细,以一个人80小时(双周)内可以完成的工作量为参考。工作包的工作量如果比它还大,就需要继续分解。
4)独立责任原则。单个工作包应该只分配给一个责任人,以避免多个责任人之间的推诿扯皮。
5)信息透明原则。WBS的最小,或是最底层工作包应确保“完成工作包所需时间”、“验收标准”、“资源分配”、“成本”等信息的可视透明。
从用途角度看,WBS是一个梳理工作思路的规划工具,是一个清晰表示项目工作之间相互关系的设计工具,是一个展示项目全貌和工作量的计划工具,是一个以里程碑等形式报告项目完成情况的报告工具。
2. 网络计划和关键路径法
网络计划是以网络图的形式描述项目中各项任务的相互关系和时间顺序。在网络计划中,对于每一项任务,可以设置4个时间参数:最早开始时间、最晚开始时间、最早结束时间、最晚结束时间,任务之间还可设置B任务必须在A任务完成之后,或是完成之后的多长时间(延迟时间),才能开始等形式的依赖关系。
网络形式的任务计划,意味着由多个任务所形成的项目路径有多条,其中,至少有一条路径的预计完成时间最长,此路径也被称为项目的关键路径,关键路径上任何一个任务的延期,将导致整个项目完成时间的延期。因此,关键路径就是项目时间管理的主要变量,通过关键路径的管控来进行项目整体周期的管控,又称关键路径法。
在项目执行时,项目的关键路径是动态的,任何一个任务完成时间的延期,都将可能导致原本不是关键路径的路径变成了关键路径。由此可见,项目的时间管理,要远比单路径、流水线生产的时间管理要复杂得多,研发团队需要对项目执行的进度进行实时地审视。
从用途角度看,网络计划和关键路径法是应用运筹学方法对项目任务的时间进行排程和优化,类似于生产运营领域的高级计划与排程(Advanced Planning and Scheduling,简称APS)。
3. 甘特图
甘特图(Gantt Chart),又称横道图、条状图,是通过条状图等形式显示项目进度、项目任务之间的依赖关系等信息的目视化管理工具。
甘特图的框架是二维表格,横轴是时间展望(时间单位可以是小时、班次、日、周、月、年),纵轴是任务列表(包含任务之间的上下级层次关系),表中展示了每一个项目任务的时间跨度、当前进度、与其他任务的依赖关系、任务所需的资源,等等。
借助专业软件的支持,还可以甘特图作为框架,以“拖、拉、拽”等方式对项目任务的时间安排、任务的资源分配、项目计划,等等,进行动态模拟,以进行项目计划的优化。
二、项目计划
图8.5 项目计划的编制步骤
项目计划编制时必须考虑市场需求、技术现状、开发规范和资源约束,编制完成并得到批准后予以正式发布,随后进入执行和监控等环节,必要时,还需根据项目的实际进展,对项目计划做必要的修订。
1. 明确目标与范围
通常,在项目任务书的开发和立项评审环节,已经确定了研发项目的目标;编制项目计划时,需要对其进行理解和确认,并以项目范围的形式予以细化。项目范围可以分为两个方面:其一是项目的交付成果,准确来说,就是以产品数据来表述的产品定义;其二是项目的约束条件,包括项目的周期、成本、质量,等等。
2. 编制工作分解结构
工作分解结构的编制,就是本着以终为始的原则,以交付成果或产品定义为导向,将项目的工作内容,从结果到任务,从团队到个人,从粗到细,从近到远,进行逐级地分解,直至分解成最底层的、项目成员个人的日常工作。
理论上讲,WBS的编制方法有产品分解、功能分解、过程分解、地域分解、职能分解、部门分解,等等,笔者推荐用产品分解法为主,局部辅以其他分解法。另外,编制WBS时,还需贯彻前文所说的:百分之百、相互独立、80小时、独立责任、信息透明等原则。
3. 编制网络计划
WBS编制完成以后,需要进一步指定每一个工作包的开始时间和完成时间,以及工作包之间的依赖关系。为了便于项目计划的优化,指定工作包的时间安排时,可以进一步为它们指定最早开始时间、最晚开始时间、最早完成时间、最晚完成时间。
指定WBS工作包的时间安排时,可以参考类似项目的历史数据,或是邀请专家进行评估,或是与任务责任人进行协商,或是将项目周期按任务数进行比例化拆分。
为WBS中每一个工作包指定完它们的时间安排和相互之间的依赖关系之后,就可以形成网络图形式的网络计划,从中找出持续时间最长的工作路径,它就是项目的关键工序和关键路径,也是项目时间管理的重要对象。
借助项目管理软件,可以基于上述内容绘制出项目计划的甘特图,以结构化、目视化的形式展示项目的WBS和网络计划,并对此进行模拟和优化。
4. 分配项目资源
为了按时完成WBS工作包所规定的工作内容,需要有相应的资源投入,它们也是项目预算和项目成本的主要构成要素。研发项目所需的资源,包括人工、设备、材料、服务、场地,等等,尤其以人工所代表的项目团队成员最为关键。
管理就是在有限资源的约束下寻求产出的最大化。虽然,项目计划的编制是以结果为导向,但稀缺资源得不到保障时,就可能需要对项目计划进行必要的调整,以错开资源需求的“波峰”,或是为资源获取预留必要的提前期。
项目资源的分配得到确认以后,相关资源将为项目预留,或是转为资源需求计划,进而触发以采购申请、招聘申请等形式的资源供应请求。
至此,项目计划的编制工作就基本完成,项目管理将进入到计划的发布、执行和监控等环节。
三、项目执行
在研发项目的执行阶段,除了根据项目计划的安排,进行具体工作包的开展和执行,相关管理工作还包括进度跟踪、任务跟催和工作协调,这需要借助项目看板、项目会议等形式来进行。
1. 进度跟踪
很多管理者常说这么一句话:管理者的工作要点就是盯、跟、关。其中,所谓的“盯”,是紧盯工作进度;所谓的“跟”,是跟催延期任务;所谓的“关”,是及时发现并关闭工作差距。对于不确定性大、任务弹性高、涉及部门多、持续周期长的研发项目,尤其需要发扬“盯”的作风,需要对项目进度保持实时跟踪。
图8.6 数字化项目看板的示意
对于已经延期,或是可预测即将延期的项目任务,需要进行任务跟催等形式的问题清零和任务关差。清零和关差的手段包括:赶工、串改并、提高优先级,等等。
1)赶工,指的是以增加最小费用的形式最大限度地压缩时间,具体做法包括:加班、增加工资、补充外部资源、工作外包、从非关键路径上抽调人员、取消或延迟某些重要程度低的任务、重新安排任务责任人,等等。
2)串改并,是在充分评估和管控任务风险的前提下,根据任务的依赖关系,将串行任务改为并行操作,以此来加快项目进度。
3)提高优先级,是通过提高资源请求优先级的方式,优先或提前获得研发项目所需的材料、设备、服务等外部资源,以此来加快项目进度。
3.工作协调
研发项目执行时,共识的达成、工作的对齐等协调工作,都需要以项目会议的形式来进行。项目会议的具体形式有日清会、周例会、月例会、评审会、里程碑汇报会、专题会议,等等。尤其是常态化的项目日清会和周例会,如果能高质量召开,对于项目的有序推进具有很大的辅助作用。
研发项目执行中的会议沟通,其具体形式和要求,可参见“沟通方式”一节中的相关介绍。