当前位置:首页 >> 正文

软件项目经理工作必备

[ 日期:2020/7/24 ]

恒佳PMP培训中心

软件项目会定一个计划发布日期,然而这个项目有个隐藏的实际合理发布日期。因为软件开发并不是一个直接添加资源就可以加快速度的过程,所以这个实际合理发布日期是在现实资源合理利用前提下一个客观存在的最可能早的完成时间。项目进展的过程,其实也是发现这个隐藏的合理发布日期的过程。 

从管理的角度来讲,当然是尽可能的赶上计划的发布时间,或者尽可能快的完成项目。但是因为多方面因素的影响,项目管理是一个欲速则不达的过程。如果这个计划发布日期早于这个实际合理发布日期,那你越往这个不合理的日期赶,工期内积累的问题就越多导致后期收尾的时候爆发,结果反而可能连合理发布日期都赶不上。

给项目组定一个个合理的看得见的小目标,步步为营,一步一步朝着看得见的并且合理的每一个小目标前行,每一个小目标的积累,才能最终走向项目的成功。

所以务实的项目经理应该认识到如下几点:

一、项目成功四原则

1、项目组可以以快节奏的步伐在前行。

但是项目经理本身一定要清晰的认识到,我们明面上是在赶那个计划发布日期,但是项目组实际的目标应该是那个客观存在的合理发布时间。

2、随着项目的进行,那个客观存在的合理发布时间会逐渐明朗。

它与计划发布时间的差异也逐渐显示出来。此时有些项目经理往往会通过加资源的方法来尝试缩短这个合理发布时间。但是真实的情况是,除非你前期的资源配置不合理,不然在这种情况下加资源,对项目帮助不大。

3、项目经理必须有一些坚持。

领导或者业务部门经常会有一些压力下来,要求你想尽任何办法去赶上计划发布时间。而现实状况下,你要么此时报喜,后期报忧,要么此时报忧,后期不忧。掩盖问题往往可以让人开心,但是不代表问题不存在。

4、项目经理能做好的其实就5点:

1)控制好了需求;
2)及早的发现问题,报告出来并解决;
3)不出现资源空闲的状态;
4)利用好每个资源去做擅长的事,快速有效的推进各种任务;
5)不浪费资源去做一些对项目目标总体没有帮助的工作,或者一些后期会推翻的需求。

二、必备品质 

1、项目责任感

项目经理应该有责任感,你要为这个项目的任何一件事情负责。因为这会影响到整个项目的工期,而你为整个工期负责。作为一个对整个项目负责的项目经理,没有人会比你更在意项目的进展。让一个不负具体负责的人去帮你推进你的项目,远远不如你自己用心推进来得有效。

2、PM要做好打杂的心理准备

项目组里面的每个专业成员,他们都有擅长的领域,做他们擅长的事情是他们的快乐。而不属于他们擅长的事情,对他们来说就算是杂事一般。项目经理一定要有一个这样的意识:项目经理就是打杂的,帮助项目组成员把杂事处理掉,让他们可以专心的做他们擅长的事情,这样对项目组来说才是高效的。“为什么我的手下不能解决这么简单的问题?”这种想法千万是不可取的。你当项目经理的目的并不是管人,指使这人做什么那人做什么。“你的目标只是把项目快速推进完成。”

3、控制需求

在所有因素当中,需求对项目的影响力,至少占50%以上。能够控制好需求,项目就成功了一半。

控制需求,有如下几点:

1)产品经理的重要性
一个项目组当中,其实人人都可以影响需求。但是管理需求的,是产品经理这个岗位。如果你的项目组当中已经有一个很好的产品经理,恭喜你,项目经理可以轻松很多。作为一个对项目完成负责的项目经理,当你们组没有一个好的产品经理的时候,你必须意识到,你至少要扮演好一半的产品经理。

2)平衡工期和功能友好程度
需求其实有两个极端,一个是尽善尽美,尽可能的让功能更友好,用户体验更佳;一个是尽早交付,一切改善性的需求都可以牺牲。只满足前者,项目工期可能会不断的拖延,因为很多功能的工作量其实是在细节的优化,而不是主要流程的完成。只满足后者,很可能会出现一个让用户很不满意的产品。

3)懂得对不重要的需求说不
如果你不能平衡好工期跟功能改进的话,有一点你一定要意识到,就是你一定要懂得对不重要的需求说不。这很简单,你对一个需求说不,只要这个需求不是一个会造成其他功能依赖的核心需求,就算这个需求后面发现必须实现,你可以补上,总体工作量并没有增加。

但是如果你花资源去完成了这个需求,后面却发现这个需求是不重要的或者可以简化的,那你已经浪费了一些工作量。两者的代价相比,明显前者的代价比较小。

4)理好需求优先级

需求的优先级应该满足如下几点:

a.确定不变的需求应该先完成,如果项目组去完成了一些功能,结果后面发现需求要改,那前期的一些工作量已经浪费了。
b.被其他需求依赖的需求应该先完成,只有这样,才能不挡住依赖它的需求的开发。
c.主流程,或者核心需求应该先完成,改善性的需求应该后完成。

四、风险管控

风险管控是项目经理一个非常重要的技能。

一个好的项目经理应该尽量在早期把所有的风险都列出来,一个一个解决。一个流畅的项目,从前期到后期风险点应该是倒三角形的,就是前期风险很多,后期风险越来越少。

而项目管理不畅的,则是一个正三角形,上面风险少,到后期风险就多了。项目经理应该尽可能的找出所有的风险点。

假设有一个点,你不确定他是不是有风险的,那早期我们需要也把它当做一个风险点重视起来,带来的代价也远远小于在后期等它爆发出来的时候再处理。

五、外部依赖最不可控

风险管控还有个要点要记住,项目组能处理的问题,算是小问题。需要项目组外的人员处理的,才是大问题。因为项目组外的人员不受你调配,他应承你的时间不一定是你满意的时间;即使是你满意的时间,也不一定真的就能确保在那个时间完成;就算真的完成了,也不一定就达到你想要的效果。

六、必要的时候,任务要步步紧跟

项目经理并不是把任务简单分出去就可以不管的。如果你的开发人员不是很有经验,或者技术实力很强,思维很缜密,那你应该紧紧的跟进你分发出去的任务。

具体步骤
1、跟进开发人员的任务的开发程度。可以的话,让他运行给你看一下。
2、经常提问。很有可能他就有个问题在纠结,而其实你因为经验或者了解更多的背景,很简单就为他指出简单的解决方案。
3、时刻检查任务进程。任务的完成进度和完成质量,是影响项目进展的一个重要因素。项目经理的一个主要职能,就是帮助每个任务的快速推进。

七、做当前、看后续

当我们把当前的做的迭代的需求,流程,依赖以及其他的疑问理清楚让项目组可以顺利推进的时候,项目经理不应该再专注在当前的迭代,而是要开始想整理下一个迭代的事情,让大家在完成当前迭代的时候,不需要暂停在那边,去等待梳理下一个迭代的问题。

八、固定的项目组成员

这是一个很简单的要求,但是并不是所有的人都会重视。正如随便加一个开发人员进来并不能够立刻让整个项目进展加快,换一个人的话,整个进展肯定也会受影响。

九、组员潜力

每一个程序员,测试人员,美工,产品经理,都比你想像的要聪明。如果你没有对你组员的能力有个清晰的认识,那你可以尝试给他的任务增加一些难度,超过你原来的预期一点点。他能完成,你以后可以再增加一些难度。直到他直接跟你说他搞不定。如果你觉得你已经有个清晰的认识了,那你也应该记住,这些只是你觉得。

十、人人看到全盘

项目经理能够很好的分配好任务,让各个组员可以较独立的工作,这是不错,但也不见得就是好事。因为软件开发是一个团体的工作,各个人做的事情之间都有交叉。我做的功能,接下去就要调用你的接口。你做的页面,接下去就要跳转到我的。项目组的每个人,可以重点在自己手头的任务,但是思路必须是在全盘。

大家脑子里面都要经常去想想,整个系统是什么样子的,我的功能前后的依赖是什么样的。项目经理平常要引导大家这样想。

十一、一定要分成小迭代

步伐迈得太大了,你就不知道你迈得对不对,迈得够不够快。

“项目是不可能一步到位的。把一个大目标分解成每一个小目标,整个项目工期分成若干个短迭代,一个一个的完成。

每一个完成的小目标都能帮助你理清整个项目的进度,方向,帮助你审核一下目前的思路是对的还是错的,出错了,也能够及时的调整。

十二、不做一半的功能

如果我们做了2个功能,但是我们每个功能都做了一半没全部完成,那目前为止我们总计完成了多少个功能?1个?不是的,完成了0个。

一个功能除非真正完成并且通过产品经理的检查,不然你永远不能确定这个功能是不是还有一些遗漏的地方。100个完成度为90%的功能合起来,完成的功能还是0个。

半成品的功能:

1、工作量无法量化,因为已经“完成”的工作不能验证说是真正完成的。
2、你没法给业务部门或者客户做演示,因为这些功能没做完。
3、如果业务部门让你暂停一下,就先按照目前已有的功能去让客户测试一下,你会哑巴吃黄莲,有苦说不出。

所以我们做功能的时候,要确保我们在做的功能已经是真正完成了,我们再去接着做下一个功能。

十三、不让细节影响你的目标

项目组的人很容易沉浸在功能的细节当中,为一些炫丽的功能或者很酷的设计浪费大把的时间,忘记了这个项目的最终目标是什么。其他人可以投入,但是项目经理一定要能够抽身事外,专注在项目的全局。沉浸在细节当中很容易让人忘记工期,忘记项目的最终目标。

“我这个提示信息的颜色会不会太淡了?要不要再调深一些?”“我这个按钮是不是可以往左边移10像素,这样更好看?”“这个地方要不要来一个自动提示,这样会更友好一点?”“我这个面板的显示要不要使用渐变的?1秒内渐变完成会不会太快?用户会不会还没看够?”

先把功能完成再考虑其他问题。以后有的是大把的时间美化这些。

十四、正确的里程碑要点

我们碰过一个项目,项目经理的报告说,目前的状态是开发完成。结果一看,这样说的依据是分配到所有开发人员的任务,开发人员都认定为完成了。于是大家就认为目前是开发完成,进入QA测试的阶段。结果QA报怨测试不下去,流程都走不通。产品经理进去看了一下,也说很多地方功能缺失。根本不能认定为开发完成。

1、一个项目,或者一个短迭代,应该先列出一个所有人都认同的里程碑列表。
比如,分为框架设计完成;分解出来的需求已经可用于开发;子任务划分完成;子任务已经分配并预估完成;各子任务完成;开发人员整合测试完成;产品经理检查通过;QA测试通过。

2、每个里程碑的完成要有大家都认同的验证方式。比如如何判断开发人员整合测试完成,是不是开发人员坐在一起或者开发组长把所有流程都走过一遍,然后发现没有什么大的问题?

十五、自我管理

前面讲了这么多,好像项目经理很重要,缺了这个项目经理整个项目就不转了。

如果项目经理的手下是固定的,只不过做的项目不一样,那我建议项目经理在完成项目的基础上,一定要考虑这样一个目标:“建立一套流程,一套大家都熟悉并且会遵守的流程。”这个流程可以保证整个项目组在项目经理不在的情形下,也可以运转得很好。

目前项目处在什么阶段,这个阶段大家要做什么,下一个阶段是什么;这个阶段有什么任务要做;每个阶段碰到问题要怎么处理;每种任务或者问题由谁来处理。这些并不是很难学会的东西。项目的成员经历过几次,很容易就可以理解要怎么做。

项目经理除了推进项目以外,还要在项目的过程中把流程的思路,解决各种问题的思路教给大家,同时明确每个人的职责,达到项目组可以自我管理的程度。

“一个可以自我管理的项目组,才是一个稳定高效的项目组。”项目经理才可以抽身出来,同时去做一些其他的对部门,对公司同时也对自己有利的事情。

项目管理协会(PMI)推出的PMP(Project Management Professional,项目管理专业人士)考试认证已成为全球公认权威的项目管理专业资格认证,PMP认证在全球200多个国家和地区获得广泛的专业认可。

PMP证书作为项目管理专业人士的重要标志,是每一位项目经理职业发展生涯中不可或缺的证书。该证书在众多企业尤其是跨国企业中被认为是项目经理岗位的必备条件,同时也是许多重大项目招标中项目经理人员必备的资质证明。PMP证书,被誉为与MBA、MPA齐名的全球三大管理证书。

分享到: