企业的经营战略是由很多IT项目落地,IT项目管理的规模由几十人到几百人,甚至上千人,项目人员结构包括自主研发型、自主加外包混合型和全外包型,IT项目类型涉及到软件开发、硬件集成、系统集成等,但总体特点需求模糊变化快、专业领域强、跨多部门协调、智力密集型,投入大,要求在规定的时间内交付出高质量的成果,在整个管理过程中项目的时间、成本、质量需要相互博弈和决策,项目规模越大对于项目管理者的计划、组织、协调、控制、指挥提出更高的要求。作为企业的技术负责人和项目负责人,若无法有效掌握IT项目管理的方法可能加大项目的失败风险,任何失败的项目都将会给公司能够带来重大损失。企业的IT项目更多站在甲方的项目管理,与乙方的项目管理项目流程还是有差异,主要是项目的每个阶段的关注角度不同。虽然很多项目管理的书籍讲述很多理论知识(范围管理、时间管理、成本管理、质量管理、人力资源管理等),这些理论知识与项目实战存在落差,把理论知识应用到实践中还需要消化和理解的过程,如果直接照本宣科会执行会导致IT项目无法运转,甚至项目面临失败。寻找即实用又能更好控制项目风险的方法突显重要,本文提出IT项目管理的核心要素包括4个阶段、8个关键点和4个要点。这些项目管理核心要素有效控制项目的风险,它让项目组的成员在项目管理上快速达成共识,避免重大的错误,管理者有效控制项目的整体节奏。
IT项目管理核心要素结合多年企业的IT项目管理经验和项目理论知识总结的最佳实践,它包含4个阶段、8个关键点和4个要点,4个阶段包括方案阶段、立项阶段、实施阶段、收尾阶段;8个关键点包括明确目标、提出方案、定义组织、制定计划、快速执行、跟踪进度、周期复盘、双次验收;4个要点包括实时追踪、处理问题、快速决策和责任清晰。
一般项目管理定义五个阶段(启动阶段、规划阶段、执行阶段、监控阶段、收尾阶段),但真实的情况企业IT项目管理里最重要是4个阶段包括方案阶段、立项阶段、实施阶段和收尾阶段。主要是站在甲乙方的不同角度看问题,五个阶段更多站在乙方角度管理项目,前提是项目合同的签订都完成,项目的实施已确定。但站在甲方的企业IT项目管理考虑,项目立项是关键步骤,没有项目立项是无法调集各部门的资源,因为企业的资源是非常有限,在有限的时间里优先做哪一个项目需要决策,毕竟每个企业都希望项目投入与产出最大化,不希望项目失败,但任何项目都存在失败风险,所以为项目立项提前要做大量准备工作,这需要方案阶段。
方案阶段重点梳理项目的目标,论证项目的价值和技术可行性,此阶段最重要,也很耗费时间,在某些项目管理里把它归属到立项阶段里,但在这里单独强调此阶段,主要引起技术负责人和项目负责人高度关注,往往不靠谱的目标和方案就此阶段产生,所以方案一定要做扎实。此阶段主要做好两件事情,为后面立项的决策做好准备。
第一、重点明确项目的目标,理解业务需求的重点,这需要业务方和技术方开会认真讨论,业务的需求讨论基本围绕业务的痛点优化业务流程、竞品分析和业务模式创新,有时业务觉得自身的需求理解很清晰,但实际讨论后发现很多问题,甚至导致初衷的意愿发生明显的变化,这都很正常。但这样的一个过程是非常必要,一方面通过讨论把项目的范围梳理清楚,技术的复杂度、业务的逻辑都搞清楚;另一方面明确项目的真实目标,预计投入与产出、大体上线计划。项目的目标必须要明确,往往很多项目的目标都很理想化,导致项目的实施阶段全面无法推进,出现很多扯皮事情,这就是项目没有充分讨论和论证而拍脑子决定。
第二、明确产出解决方案包括业务解决方案、技术解决方案,业务的解决方案要量化项目的投入与产出,解决业务哪一些问题;技术解决方案提出应用架构、软件架构、集成架构、硬件架构、项目的计划等,解决方案不是一次就能确定,它是业务和技术人员反复讨论努力的结果,解决方案既不能太细又不能太粗糙,重点要表达出项目的业务发展和技术思路,投入与产出。
此阶段最需要“业务懂IT,IT懂业务“的人,只有这样大家的讨论效率才是最高效,否则需要双方花费很多时间相互理解自己的领域,讨论结果的解决方案也许不是最佳的方案。
IT项目立项决定项目的未来走势,只有立项通过才能得到资源包括预算和组织等,重要的IT项目立项需要参加公司的高层会议审议,所以工作汇报很关键,这个阶段做好三件事情:
第一、项目立项的汇报会议,业务方和技术方一定要一起汇报,很多事情要放到台面上讨论,前期的需求方案阶段产出的业务方案和技术方案发挥及其重要的作用,同时汇报人员也最重要,把项目的价值准确传递给所有高层领导需要下很多功夫。这样的一个过程在很多公司非常严肃,稍有不严谨项目可能就不通过。重要的IT项目一般投入都很大,公司高层对待IT项目审批也非常认真,除非存在能虚做假的项目,毕竟任何项目都存在风险,前期需要大家要尽可能严谨审核,才避免公司投入不必要的人力和财力。
第二、预算要尽量准确和详细,一般高层领导非常看重投入与产出,汇报材料要进可能量化,预算费用结构详细,每一种费用的计算方式清晰,业务逻辑要严谨,在高层审议很多背景是领域专家,他们看到预算提出很多比较尖锐的问题。
第三、组织架构要清晰,高层非常关心项目组织架构,组织架构明确项目的总负责人和各项目组责任人,这是对IT项目管理很重要,一旦领导确定组织架构,一定要通过邮件公布,项目出现了问题,这个邮件将是关键的证据。一般项目组都包括业务组、产品组、研发组、测试组、商务采购组、PMO、架构组,基础架构组等。
项目的审议往往都是多次不通过,需要反复修改方案,多次汇报,这样的一个过程也是很耗费时间,需要汇报人员更加耐心,每次需要理解高层领导的意思,修改方案的反馈速度要尽快。
项目的实施阶段是最危险的阶段,前面方案、组织架构和预算都已决定,考验项目负责人的计划、组织、协调、指挥的能力,项目的形式可能是自主研发,也可能多个供应商实施项目,无论谁实施项目负责人要把握这四个环节。
第一、项目设计规划环节主要完成产品的设计和评审,量化各组的工作量,PMO协调和统筹项目资源与预期的计划有多大差距。根据项目的目标和方案,业务组和产品组要细化流程,产品依据需求设计产品的原型和理解业务流程逻辑抽象产品服务,同时架构团队也准备技术选型方案,待整体PRD设计全部完成后,产品组、技术组和测试组要进行产品PRD评审工作,确定开发功能点和接口的工作量,测试组要确定测试工作量包括测试用例、压力测试准备等的排期,基础架构团队提交硬件的配置要求,同时联系商务组进行招标,架构师与技术团队进行评审技术框架定义和系统之间集成关系,这个研讨过程需要严谨和经验,但现实中往往很多项目都是倒排期,这需要PMO统筹管理好项目的资源和排期,把所有任务和负责人记录到系统中,项目管理软件,并把每次讨论会议进行记录和每天进行复盘。
第二、开发联调环节主要跟进研发的进度和解决研发中的实现问题,一般研发团队划分若干小组,每个小组按照计划进行推进开发任务,这里难免会遇到业务理解不清楚和技术难题,这需要产品组和技术组进行协调,架构组要把控更多技术架构,甚至进行架构验证,帮助开发工程师解决代码结构问题。PMO每天通过燃尽图跟进所有的开发任务,有时候受到资源影响,PRD的交付和评审可能排序优先级,开发任务一定要有,每个团队每天开发完成率要有通过数据体现,通过数据反映项目的进度,通过进度了解项目遇到的困难。开发完成后需要联调的一个过程,这样的一个过程很艰苦,代码的问题、数据的问题和环境的问题都会导致接口调试不通,需要这个项目组一个个攻克难点,往往研发人员身心疲惫,这样一个时间段需要各个组长和PMO要坚定信心。
第三、测试发布环节主要跟进产品质量和问题修复速度,针对业务的场景,测试团队准备测试用例,通过测试用例进行全链路测试,使用工具记录整个Bugs,这些Bugs按照优先级别进行分类,Bugs记录到研发负责人,PMO通过管理Bugs工具追踪解决Bugs进度。研发人员精神压力是非常大,Bugs的上涨的速度大于修复的速度,加上Bugs引发变更需求不断折磨研发团队,若无法有效控制节奏,长时间得不到解决,项目可能处于崩溃边缘。在这样的一个过程中,测试团队能够正常的使用自动化工具来测试场景,提升测试整体速度和质量。
第四、准备生产环境和压力性能测试,应用测试进行中,基础架构的团队紧密锣鼓准备生产环境,传统的做法准备生产环境通过采购硬件包括计算、网络、存储,同时规划IDC机房的设施,进行组网和联调。现在的做法通过公有云购买服务,规划网络和安全设置。如果测试环境有版本发布,能持续部署到生产环境,同时针对性能有要求的场景,进行压力测试,架构团队和研发团队进行性能调优。
收尾阶段是产品已经发布到生产环境,除了测试通过外,产品人员和相关业务人员验收。产品人员和相关业务人员检查是不是达到预期产品和流程的设计,是不是具备上线条件,一旦验收完成,可以让一部分关键用户进行参与公测,完成这部就可以全用户进行开放。同时项目的复盘很重要,复盘主要是针对项目的问题,包括技术和流程等,准备下一次迭代过程。如果项目有供应商参与实施,业务人员和产品的验收结果会影响后期供应商的结算。。
一、 明确目标,项目的整体要制定目标,项目的阶段中也需要制定目标,目标越明确,执行就越有效率,最好有数据作为支撑例如项目目标投入与产出,项目预期支撑交易量和用户数等。如果目标换成口号,那么项目实施完成后,就会出现很多扯皮事情,站在每个人的立场对目标理解出现差异,同样在四个阶段都要设立目标,例如方案阶段需要明确需求和方案的目标,立项阶段需要明确相关的汇报目标,实施阶段需要明确整个工作量等。
二、 提出方案,为完成这个目标,在不同阶段需要提出解决方案,项目组通过方案讨论让大家思想达成一致。在需求方案阶段要确定业务解决方案和技术解决方案,在立项阶段,解决方案让领导审核方案的成熟度和风险,在实施阶段中,项目碰到的问题,需要明确解决方案,最后递交项目组进行决策和审议。收尾接阶段中,需要项目的复盘,针对项目的问题进行确认和修改完善意见,防止下次再出现同样的问题。
三、 定义组织,项目组必须明确组织结构,项目负责人必须很明确,相关组长要明确,工作职责要定义清楚,项目组员需要全职参与整个项目,因兼职导致项目工作执行能力弱化,项目组织汇报关系清晰,最终项目的决策人要明确。任何项目存在失败的可能性,一旦项目出现一些明显的异常问题,根据组织架构要追责。项目组组织架构一定要公开,项目启动时对项目组公布。
四、 制定计划,项目一定要制定计划包括项目整体计划和各个阶段子计划,计划要公开透明,PMO使用计划进行追踪项目进度,明天针对项目计划复盘项目例会,整个计划尽可能量化数据,通过数据反应项目整体的活动状态,评估风险和问题。
五、 快速执行,项目组一旦明确目标和计划,需要团队快速执行所有任务,拒绝任何不执行和消极怠工的项目成员。快速执行好处尽快给项目组反馈项目的存在问题,为项目的推进赢取更多时间,项目执行中存在很多不确定的任务,只有团队快速执行完成才能得到决定依据,为项目组下一步执行做好铺垫。如果项目组执行力不是很强,导致项目的计划不断拖沓,最后导致失败案例很多。
六、 跟踪进度,项目在不同阶段,有不同的度量方法,合理评估工作量和跟踪进度很重要。从整个项目要跟踪进度和每个项目组跟踪自己的任务进度,例如开发任务,每个项目组跟踪项目的总任务数和达成目标数,正确评估项目是否按照计划进行,重要问题是不是得到一定效果解决。
七、 周期复盘,项目组重要成员要形成日复盘、周复盘和项目复盘。日复盘判断是否按照计划进行和每日工作进度,做到日清日结的效果。周复盘要将整个项目进度,与项目的最高决策者要进行汇报工作,找到核心问题,提供方案需要领导作出决策。项目复盘主要是整个项目结束,对项目的问题和发现优点进行复盘,防止下次项目迭代再次发生。
八、 双次验收,在实施最后验收阶段,必须要经过双次验收,产品对整个产品的研发结果进行验收,是否按照产品最初设计完成,相关业务人员对产品也要验收,整个业务的需求是否按照预期完成,双次验收是产品团队、研发团队、相关业务团队的达成共识一个核心标准,不然后期产品上线运营会出现很多扯皮现象。
一、实时追踪,PMO和各级组长要养成实时追踪任务的习惯,对项目出现的问题重要性实时追踪进度,很多项目的重要问题是需要按照小时级别进行跟进,盯住处理问题的负责人,往往解决这一种问题都要承受压力,往往一个问题可能阻塞整个项目的进度,项目组想尽办法突围这类的问题,实时追踪的习惯往往会营造团队的紧张工作氛围,让大家处于分秒必争的状态。
二、处理问题,优先解决实际问题是项目组成员重要的思想意识,很多时候项目出现的问题,不是抓紧时间解决实际问题,而是抓紧研究躲避责任,让项目处于停滞状态,这时候需要有人打破责任界线承担压力找方法解决问题,假如慢慢的出现问题把责任看十分重要就不能有效快速推进项目。
三、快速决策,项目推进过程中一定会遇到不确定的问题,需要各级相关领导快速决策,很多中大型项目,层层汇报,各级领导不决策,导致项目组推进的计划不断调整,项目整体的节奏感全部打乱,这会种项目很危险,即使项目上线留下很多问题。
四、责任清晰,项目推进的过程中时间紧任务急,对于项目组的成员要发挥自己的专业特长,在某个领域承担起自己的主要责任。例如:产品的设计过程中,技术能提建议,最后还是产品承担主要责任,技术不能过多干预产品的设计。每个团队要把握自己的主要能力和主要责任,这样团队才能背靠背向前推动项目前进。
掌握IT项目管理的核心要素对于技术负责人和项目负责人很重要。4个阶段让项目组控制好节奏,着重关注每个接阶段的重要事项;8个关键点贯穿整个项目管理周期,牢牢抓住这些关键点,掌控项目的主动权,降低项目失控的风险;4个要点让项目的负责人养成良好的工作作风和工作态度,只有这种工作状态在实践中才能不断克服项目的各种困难获取成功。