惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
有赞技术团队
有赞技术团队
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
美团技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Hugging Face - Blog
Hugging Face - Blog
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Check Point Blog
博客园 - 【当耐特】
The GitHub Blog
The GitHub Blog
Recent Announcements
Recent Announcements
The Cloudflare Blog
Microsoft Azure Blog
Microsoft Azure Blog
腾讯CDC
Vercel News
Vercel News
IT之家
IT之家
MyScale Blog
MyScale Blog
博客园_首页
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
罗磊的独立博客

博客园 - CC

聊聊程序员绩效那点事 救火队员的那些事(4)-关于流控 我对程序员身体健康的一点感悟 救火队员的那些事(3) 救火队员的那些事(2) 救火队员的那些事(1) jvm的代码缓存耗尽导致性能下降 几次印象深刻的网上事故 是时候对十二年的工作回顾了! 入园10年了 如何读程序设计艺术第1.2节 读TAOCP的算法形式化定义以及归纳法的一点感受 用了半年时间终于把具体数学看完了. 最近几个月潜心修练Concrete Mathematics的一点感想 Solaris下误删除根目录下文件的解决之道 Exercises of Concrete Mathematics 具体数学 一次LoadRunner的CPC考试经历 MFC的序列化的一点研究.
项目管理小记
CC · 2016-10-21 · via 博客园 - CC

软件项目的项目管理从个人经验来看是一项是主要靠经验的积累,所以看到软件工程的硕士研究生的招生的时候就好奇能从书本上学习到什么? 在学习项目管理的路上,我觉得自己是幸运的,因为我跟着老前辈们学习到很多珍贵的经验,书本上一般会面面俱到,它不会告诉你哪些重要的,哪些是不重要的,在遇到各种矛盾是如何权衡,而这些都是真正的项目中都会遇到。在这里我把8年里自己带的项目以及从老前辈身上学习到总结出来,希望对大家有用。

1、项目经理首先自己要相信没有做不成功的项目,这种信念是发自内心的,而不是挂在口头上,它体现在日常项目管理的事务中

  • 项目里不论遇到多大的困难,都相信并且积极的付出行动去解决,让团队所有成员都看到项目的进展,为团队树立信心。
  • 当项目的事务乱如麻时,项目经理临危不乱,冲在一线,把事务安排紧紧有条

2、项目经理最重要的是关注计划,你的项目计划应该是每天上班都是打开的,甚至可以作为你的电脑的桌面

  • 这一点是从一个在IBM从事项目管理二十年的老前辈身上学习到的,项目计划是用来执行的,而项目经验就是这个计划执行的最忠实的捍卫者
  • 计划不是不可以变化,而是经过深思熟虑的变化,随便的变化意味项目管理的随意,难以控制项目的成本

3、风险是项目难以按计划执行的最大阻力,项目经理应该善于识别风险并降低风险,这是非常考验项目经理的经验的地方。做项目多了以后,遇到困难多了,自然各种风险就知道了,所以在下面我把自己做项目经理遇到的项目的风险列出来供参考。如果是是新手,这些技能也可以向你的前辈们学习和请教.有兴趣的同学可以去看看《人月神话》和《与熊共舞》、《人件》这3本小书

  • 工作量的估计一定要让丰富经验的工程师去估计,最好团队中采用固定的工作量估计方法,比如delphi估计法、FP估计法。工作量估计是一个非常有挑战的工作,大部分程序员会过于乐观估计,也有一些能力不足的程序员估计的过于悲观,总之项目经理在工作量估计的地方要做足功夫,因为后续所有的计划都是依据这个
  • 项目计划的安排对外松,对内紧。对外松的原因是因为项目的开发过程中总会遇到一些意外,需要给项目留一定的buffer,对外承诺时间要谨慎。举个例子:一般开发完成以后自测通过以后,就会转测试,所以我们排计划就把2个紧挨在一起,但是在实际过程中可能测试环境的搭建并不是马上就好的,可能转测试的时候版本质量太差,转测试版本被打回等情况。相反,对内的计划要紧一些并严格的按计划执行
  • 开发和测试团队的成员安排要考虑哪些是核心,哪些是非核心。核心的不能全让新人去开发,否则到后面测试阶段容易陷入问题单无法收敛的情况
  • 开发过程中关键运作执行不要打折扣,项目经理不需要自己亲自亲为,但是要监控动作的落实并通过指标掌握这些动作是否执行到位。比如设计方案的评审、code review,通过评审的问题数以及项目组成员以及其它项目的基线缺陷数字来判断,举个例子:比如一个核心模块在设计方案评审时没有问题或者很少的问题,作为项目经理就要关注评审是不是走了形式,是不是参与评审的人员安排不合适等等。
  • 核心的人员要有备份,否则整个项目成功可以就会有单点故障。有的项目实际情况做不到这一点,在这种情况下,关键的设计方案务必文档化,既使其它人接手慢一点但也不至于影响过大

4、计划赶不上变化,项目经理要将外部的变化变成“可控的变化”,这也是项目经理承受压力的地方,实际中遇到的场景比较多,项目经理将将外部零碎的变化变得有序,否则如果直接透传给开发人员,开发人员会很快给折磨奔溃的。常见的招式有:将需求排到下一期、需求的置换、工期的延迟等

5、项目经理大部分的时间是在沟通,而不是坐在那里看邮件,多走动式管理。项目经理不要只是在那看组员写的日报或者周报,要多与组员面对面沟通,更容易发现潜在问题,同时面对面的沟通多了以后,能够加深项目组成员之间的信任。

6、尽可能利用各种机会激励组员,这种激励多用精神层面少用物质层面,比如:让员工承担小组长或者承担核心的开发设计、组织活动、在更高层面的邮件表扬等。

项目管理知识博大精深,感觉更像是一门艺术,懂业务、懂流程、懂人,能把各种问题拿捏的恰到好处,而这些没有捷径,唯有实践。