;

项目经理认证PMP的意义

发布时间: 作者:系统管理员 访问量:83

  作为中国最早阶段通过PMP认证的老司机(2006年初通过认证),在后续项目管理分享中,很多人向我确认,还未通过认证的问:“通过PMP认证对工作有什么帮助”;通过认证的问:“通过PMP认证后发现对实际工作也没有什么帮助,也感觉没什么提高”。

  我们看看PMP认证依赖于什么,所有人都会条件发射的告知是PMBOK。在中国很多人通过PMP认证,很大程度上依赖于培训老师的培训,PMBOK的纸面理解,培训后模拟考题的练习。中国的PMP通过率应该远高于平均通过率,在一定程度上,我们的认证目的性很强,通过认证,并且快速的通过认证。一本很有价值的接近500页的书籍,为了认证,我们使用的方法可能记忆高于理解,可能在这种方式下,我们对PMBOK的价值理解是存在偏差的。本质上,PMBOK是一本帮助我们理解什么是项目管理的经典,仅仅用于认证,我们通过认证后,有多少人还去踏实的去理解这部经典,要求、方法、工具都没有理解,何谈运用,没有运用怎么提升自身能力

  我们通过一个方法说明,在书中317页讲述了一个工具,责任分配矩阵使用工具RACI(执行、负责、咨询、知情),例子如下:

 

  估计大部分人对此都没有感觉就通过了认证,并且考题中涉及该工具也不太多,结果变为该工具没什么价值。

  我们工作中,发现很多工作都处于依靠自觉在推进,出现的问题通常是延迟和推诿,几乎所有的项目经理在项目中都制定了日程计划,但日程计划中只有一个执行人,默认的负责人为项目经理或子项目经理,对于C(咨询)和I(知情)基本完全靠执行人去想象了,其实很多情况下,效率的低下最核心的原因是C不清晰,遇到问题需要指导或交流时无从下手,总是去问自己的上级好像不合适,最后的措施是不问,自己“专研”,结果可想而知。项目管理者联盟

  作为一个项目经理,如果利用这个工具,不用将所有的工作都定义到RACI,至少重要的、优先级高的工作需要定义,如果还不能定义,最简单可以定义业务、技术等的咨询人是谁,业务间存在关联关系的相互人员是谁,这样可以确保我们计划在一定程度被落地。项目经理遇到问题时,可以在网上需求解决方案、可以向专家或上级需求解决方案、很少在我们的手册中去寻找。

  最初在2002年,我在为公司准备CMM认证时,其中比较核心的管理部分,参考的基础是PMBOK2000版,经过4版的改进,很多好的工具被引入,对于项目经理的能力提升很有价值。

  另外,PMBOK一个核心点,帮助所有的项目经理梳理了一个项目在全生命周期中,在各个方面(知识领域)需要做什么。但对于每个项目按照要求将所有的内容都实施可能性不大,更不说需要将所有的工具用一次。我们如果有些工作不做,一方面是项目的特殊性造成,不做也没关系,另一方面,由于资源和时间等的限制,迫使我们不能去简化甚至不做,就可能在项目过程中出现风险,这些风险项目或组织是否可以承担或接受,决定了我们项目目标的完成状况。但大部分项目因为无法识别这些管理风险,造成问题出现或即将出现才被发现,对项目目标的影响、对团队士气等的影响都很明显,项目成功基本就和项目经理告别了。

  如果是还没有认证PMP,建议看书结合自身的项目管理实际,如果没有或只有较少的项目管理经验,建议不要认证;对于已经认证的,建议将自己关于认证的内容归零,踏实的认真的去看看PMBOK,虽然很枯燥,但是知识就是知识,需要去领悟,一点一点的学习,一点一点的应用,当项目出现问题时,也把书翻开,寻找一些帮助,很直接,比网上一边寻找一边过滤要更有价值、更快捷。

  作者:丹露成都网络技术有限公司 CTO  谢二菊


最新发布

    FreeMarker template error (DEBUG mode; use RETHROW in production!): For "#list" list source: Expected a sequence or collection, but this has evaluated to an extended_hash+string (com.jmis.contentmng.pojo.Content wrapped into f.e.b.StringModel): ==> [in template "jmis/pm/article/detail.html" at line 185, column 13] ---- FTL stack trace ("~" means nesting-related): - Failed at: #list content as chann [in template "jmis/pm/article/detail.html" at line 185, column 6] - Reached through: @cm_content_list count="5" titleLen="... [in template "jmis/pm/article/detail.html" at line 179, column 8] ---- Java stack trace (for programmers): ---- freemarker.core.NonSequenceOrCollectionException: [... Exception message was already printed; see it above ...] at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:285) at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:200) at freemarker.core.Environment.visitIteratorBlock(Environment.java:595) at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:81) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:67) at freemarker.core.Environment.visit(Environment.java:326) at freemarker.core.Environment.visit(Environment.java:368) at freemarker.core.Environment$NestedElementTemplateDirectiveBody.render(Environment.java:2727) at com.jmis.contentmng.action.directive.abs.TemplateDirectiveUtil.ProcessTemplate(TemplateDirectiveUtil.java:316) at com.jmis.contentmng.action.directive.ContentListDirective.execute(ContentListDirective.java:254) at freemarker.core.Environment.visit(Environment.java:426) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:101) at freemarker.core.Environment.visit(Environment.java:326) at freemarker.core.Environment.visit(Environment.java:332) at freemarker.core.Environment.process(Environment.java:305) at freemarker.template.Template.process(Template.java:384) at com.jmis.contentmng.common.web.springmvc.SimpleFreeMarkerView.renderMergedTemplateModel(SimpleFreeMarkerView.java:153) at org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:167) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1286) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1041) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:984) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861) at javax.servlet.http.HttpServlet.service(HttpServlet.java:622) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:209) at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:244) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:123) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.frame.core.cache.PageEhCacheFilter.doFilter(PageEhCacheFilter.java:102) at net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:86) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383) at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.frame.core.web.filter.XssFilter.doFilter(XssFilter.java:20) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1526) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1482) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748)