1、项目经理在项目中的关注点,项目启动活动常见问题及对策:,笑话,毕业七年,总算接了个大工程,造根三十米烟囱,工期两个月,造价三十万,不过要垫资。总算在年底搞完了。今天人家去验收,被人骂得要死,更不敢提收钱的事!原来图纸看反了,人家要挖一口井!,不了解客户需求就开始盲目的开发,最终开发出来的产品并不是客户想要的。,项目计划活动常见问题:,袋鼠与笼子,有一天动物园的管理员们发现袋鼠从笼子里跑出来了,于是开会讨论,一致认为是笼子的高度过低。所以他们决定将笼子的高度由原来的十公尺加高到二十公尺。结果第二天他们发现袋鼠还是跑到外来,所以他们又决定再将高度加高到三十公尺。没想到隔天居然又看到袋鼠全跑到外面,
2、于是管理员们大为紧张,决定一不做二不休,将笼子的高度加高到一百公尺。 长颈鹿和几只袋鼠们在闲聊,你们看,这些人会不会再继续加高你们的笼子?长颈鹿问。 很难说。袋鼠说:如果他们再继续忘记关门的话!,案例练习,案例背景:重庆市某行业关键应用IT系统(A系统)的建设工程由希赛信息技术有限公司(CSAI )中标,CSAI是国内一家大型IT系统集成商,企业通过了ISO9000质量体系认证和CMM3级认证,对信息系统工程建设有着比较成熟丰富的经验。 CSAI总部设在长沙,有软件研发中心。CSAI为A系统建设所组建的项目小组由两个部分组成:一是总部长沙负责进行软件开发工作;二是重庆现场负责进行信息系统的本地
3、化实施,本地化实施的内容包括网络系统建设、主机系统安装调试、应用软件的运行环境建设、现场测试、客户需求跟踪、客户关系协调等。其中,应用软件开发的管理工作由长沙软件中心负责,A系统的配置管理工作由现场负责。 CSAI对A系统应用软件开发的控制非常严格,可是,由于A系统在实施的过程中,用户不断地提出新的需求,催促要CSAI满足,而且,A单位的领导对进度非常关心,经常突袭检查,要求CSAI演示所建设的应用系统的功能。CSAI现场项目经理李工也试图通过与用户进行沟通,以求解决需求的频繁变更问题,解决用户对进度的要求等。 CSAI对现场项目经理有关于维护良好客户关系的绩效考核指标,因此,李工不敢怠慢客户
4、所提出的要求,但为了达到A用户所提出的需求变更、进度变更,李工想法让长沙研究所满足客户的需求变更,这样,长沙研究所的软件开发工作量就大大增加,而且,常常赶不上客户对项目进度的要求。 在寄托于总部无望的情况下,李工为了在工程进度方面满足用户的愿望,于是决定将部分应用软件系统代码在现场进行开发。现场开发的目的主要是加快了软件开发的进度,李工的决定也确实很奏效,大大加快了应用软件开发的进度。但是,当应用软件系统投入运行后,系统故障的发生频率却非常高,经过对故障的分析,李工发现,这些故障当中,由现场所开发的软件与长沙总部所开发的软件在协同工作中所暴露的问题尤为普遍,比如,现场所修改的软件代码,在长沙总
5、部下发统一版本软件的时候常常被替换而丢失功能,A应用系统的本地化功能太多太偏而很难与统一版本融合。 另外,由于现场抽调人员参与应用软件开发,现场本应做的配置管理工作也被耽搁了,如网络系统的配置(设备访问权限、路由、IP规划等)、主机访问权限规划、应用系统访问权限规划、应用环境参数规划等,这些现场运行环境参数,按照B公司的管理制度,是应当编制文件存档的,但李工却没有安排人员来做这些工作。 由于网络系统庞大,中心机房设备繁多,参与工程建设的人员按照各自的习惯进行系统的配置,这样,在工程投入运行后,由于各部分配置的不规范,常常引起局部配置的变更给系统运行带来严重事故。曾经在一次配置变更过程中,由于应
6、用系统密码的修改,导致系统停止业务半天,给用户造成了严重的损失和不良影响。问题1:李工对所遇到的问题的处理方法是否恰当。李工所做出的决定的主要缺陷是什么?造成问题的原因主要是什么?问题2:团队协同工作时,在软件版本方面会造成哪些问题,应当采取什么措施以避免问题的出现?,参考答案,问题1:现场用户的需求是不可能有尽头的,但作为项目经理要能够把握住用户的需求,特别是要合理引导用户需求,切不可让用户怎么说就怎么做。 积极响应客户需求要从多个方面着手考虑,不要只从技术上考虑问题,技术引导、合同变更、人力资源等各个方面都应当考虑。 临时的现场开发工作,大多数都不可能与公司总部的软件开发融为一体,而且管理
7、工作常常是自上而下的,李工忽略了这点,顾此失彼,导致项目问题的发生。 造成项目问题的原因有以下几点:李工对需求把握随意;控制不严;李工与客户沟通不到位;李工没有向客户提交合理的进度计划,或没有按时提交进度报告;项目实施无计划,或计划不能得到客户认可,客户不满意。问题2:团队协同开发软件时,很容易出现软件版本管理不善带来的软件系统故障。同一软件系统代码不能同时由多人进行修改。 项目现场为应急而擅自更改软件代码,而常常没有将更改纳入统一的版本管理,很容易造成总部发行新版本软件时,替换软件而丢失了现场所进行更新的代码,从而造成系统故障反复出现。 李工如果一定要进行现场开发,应当委托现场合适的人员,或
8、亲自督促现场所进行的开发工作与总部所进行的开发工作在软件版本方面保持一致,处理本地过于偏激的需求要与总部协商一致的情况采取合理措施控制统一版本。可见配置管理中的版本控制是非常重要的。,项目风险活动常见风险及原因后果分析:,风险类型:需求风险 :对需求理解不够透彻或需求变更频繁。比如对产品缺少清晰的认识,缺少有效的需求变化管理过程等人员风险 :人员生病或离职,一时无法找到替代者。技术风险 :某个关键的技术问题无法快速攻克。对方法、工具和技术理解的不够,缺乏培训,新的技术和开发方法,应用领域的经验不够等管理风险 :管理人员协调能力和执行力能力不足,计划偏差,流程更改和沟通不良等。比如计划和任务定义
9、不够充分,不能落到实处,不清楚实际项目状态,员工之间的冲突,造成后果:项目延期和成本大幅攀升,原因分析:对风险的反应迟钝:经验不足,常常是太晚发现问题,以至于无法弥补或是弥补成本太大。对过程难以掌控:公司虽已有既定的流程,但由于项目负责人经验不足或对公司既定项目管理流程如何落到实处不知如何下手,项目日常管理很难照着流程走。,对策:需求风险:做好调研计划,尽量让客户多参与,需求评审,客户说明书文字尽量通俗易懂,核心需求识别,建立需求变更管理机制等。技术风险:在项目启动阶段对项目成员的技能进行摸底,对于薄弱技术进行有针对性的培训。对风险的反应迟钝:在做项目计划时为求实际,总会多估个20%到40%的
10、时间。如果项目需求清晰,或是团队做过类似项目,就用20%或多些;如果是新项目,或风险因素多便用30%到40%。对过程难以掌控:项目经理应该在项目立项就制定详细的总体开发计划(沟通,风险,实施等)和具体的执行计划(细化到各关键点各相关人要提交的成果并监控实际进展与计划的偏差,以使项目可控),监控项目的进度及成果检查,制定详细的与项目外部接口的协调管理工作计划。提高全员风险防范意识:如开发人员对于开发过程中碰到难题或作业无法按期完成,需尽早跟技术经理反馈。,风险管理案例练习,项目背景 2010年,国内一家省级电信公司(H公司)打算上某项目,经过发布RFP (需求建议书),以及谈判和评估,最终选定A
11、公司为其提供IP电话设备。B公司作为A公司的代理商,成为了该项目的系统集成商。B公司的李先生是该项目的项目经理。 该项目的施工周期是三个月。由A公司负责提供主要设备,B公司负责全面的项目管理和系统集成工作,包括提供一些主机的附属设备和支持设备,并且负责项目的整个运作和管理。A公司和B公司之间的关系是一次性付账。这就意味着A公司不承担任何风险,而B公司虽然有很大的利润,但是也承担了全部的风险。 3个月后,整套系统安装完成。但自系统试运行之日起,不断有问题暴露出来。H公司要求B公司负责解决,可其中很多问题涉及A公司的设备问题。因而,B公司要求A公司予以配合。但由于开发周期的原因,A公司无法马上达到
12、新的技术指标并满足新的功能。于是,项目持续延期。为完成此项目,宏达公司只好不断将A公司的最新升级系统(软件升级)提供给H公司,甚至派人常驻在H公司(外地)。 又经过了3个月,H公司终于通过了最初验收。在B公司同意承担系统升级工作直到完全满足RFP的基础上,H公司支付了10%的验收款。然而,2012年底,A公司由于内部原因暂时中断了在中国的业务,其产品的支持力度大幅下降,结果致使该项目的收尾工作至今无法完成。 问题1:请描述该项目存在的主要问题和原因。 问题2:结合你本人的实际项目经验,描述如何解决案例中所述问题的办法。,参考答案,【问题1】 该项目最终失败的原因主要在于风险控制和风险处理机制。
13、在很多IT项目中,由于竞争和其他原因造成了风险过度集中在某一个相对弱势的角色身上。在本案例中,B公司就处于这样的境地:一方面它需要依赖代理A公司的产品生存,另一方面要它还必须要满足用户的具体需求。【问题2】 一般情况下,如果项目经理在项目合同签订以前加入项目,可以充分了解自己公司在项目中的位置,对买方提出的RFP认真回答,规避潜在的风险,这是非常重要的。对于RFP中过高的要求不能完全满足时,应充分说明。最好采用“让利于人,风险共担”的策略。具体做法是,将已经识别的具有风险的部分外包(风险转移),或者单独与供货商签订补充合同。这样做可能损失了部分利益,但降低了风险,并且减少了很多额外投入。 在项
14、目的进行过程中,项目经理和项目的拥有人要将风险管理纳入日常工作的重要步骤。要明确成本与风险、成本与时间的关系。制定完善的风险管理计划。 还有一点需要注意:项目经理的确已经对风险进行了识别,并采取了应对措施,但并未对此风险带来的影响进行量化(通常可以以金钱或者时间损失加以估算)。量化过的风险是项目经理采用相应对策的前提。在本案例中,B公司了解A公司升级软件不能按时提供,这本身就需要量化。这个风险带来的就是10%的验收款和10%尾款的不能按时支付。如果一开始,B公司能够将付款和风险对应起来,就知道该风险是管理风险,并且是不能够接受的。,项目沟通管理活动关键点:,建立一套有效的沟通机制:项目例会机制
15、,信息发布机制,会议纪要机制,问题跟踪机制,阶段汇报机制,项目冲突管理等。 项目组内沟通。职责分配,授权,协调,状态报告 项目组与测试人员之间的沟通。双方如何打配合是难点,需要约定双方的工作配合要求 与高层和客户的沟通。需要明确以下内容:谁?为什么需要信息?需要什么类型的信息?详尽程度?频次?沟通方式? 强化沟通意识:每个项目成员都需要建立起主动沟通的意识。,三大原则:及时,准确,信息量恰到好处,项目沟通管理活动常见问题:,开发人员在开发过程中有问题不主动上报项目组与测试组之间不知如何打配合项目组与高层之间的问题沟通不畅,导致项目组必需的资源不能及时到位,影响开发进度。与客户沟通不畅,导致需求
16、有误或不明确。或只是了解到大体需求,对于具体的和细节的需求没深入。项目组内重要信息没有充分和有效沟通,意见反馈,技术难题,情况通报或成果没有与相关人沟通不足,造成各做各事,重复工作。有些人没有定时关注项目信息(邮件,项目群POPO)的习惯。技术经理忙于自己技术方面的事,忽略项目管理方面,造成项目人员有的闲,有的忙,任务不均,资源浪费。责任分工不明确,各项目组成员之间责任相互推卸。没有结果的会议,强化沟通意识:每个项目成员都需要建立起主动沟通的意识。项目一开始就需要建立一个沟通计划,明确规定与各干系人之间的沟通方式,沟通内容及频次等。建立一套明确的沟通工作流程(比如开发组与测试人员之间的工作流程
17、规定,明确开发组提交成果的时间点,提交的内容,以及需说明的注意事项,解决缺陷的时间限制等要求,测试组需要依照迭代计划制定测试计划,并明确各时间点提交的测试成果等)。先沟通好做法,方法,标准,再进行作业。重要问题,发布完后,一定要口头再说明项目会议事前有议题,并做好准备,事后有会议记录项目问题(尤其是横展开观点),客户评价(尤其是好的)要全员共享。,如何提升,时刻保持良好的质量意识;逐步培养高效的团队沟通;尽量运用标准的基于迭代的开发模式;严格遵守各阶段的规约、规范、要求(代码规约,测试rule,完成基准等等);技术/经验累积,不但能提高产品的质量,也能提高我们的生产效率,降低产品成本。好的品质意识就是你把事情做对,并对结果负责。我们要争取第一次就把事情做对。,最大程度提高项目品质和生产性,有利于控制开发时间和进度,明确工作量和责任 。,好的编码规范可以尽可能的减少一个软件的维护成本 ,增强其可读性;良好的遵守项目规则可以促进团队的合作效率;良好的测试规约可以很好的锻炼一个人思维的严谨性。,学历代表过去、能力代表现在、学习力代表未来 。一定要确定自己的发展方向,并为此目的制定可行的计划。,有效提高团队工作效率,高品质的沟通是把注意力放在结果上而不是情绪上。,谢谢观看!,