近来项目基本处于停顿状态,所以有时间停下来好好总结下。
由于项目进行中经历了项目经理的更换,所以对不同的管理方法有一些自己的看法。
试着从程序员的角度来看看项目管理。
先看两个问题:
1.文档
很多程序员都有一样的想法,就是很讨厌写文档(起码是过多的文档),可是项目管理者偏偏最看重这个,他们整天催你交他认为必须的文档,拿到手后又这也不对,那也不对,吹毛求疵。程序员讨厌这样,但是却不能表现出什么不满,抵触情绪自然会影响到工作。
2.进度
一般项目开发都会有一个进度安排,用Project也罢,用其它的也罢,但是都会精确到
某一段时间内完成什么任务。程序员都按照这个来工作,进度落后了要加班,超前了会休息一下,看看书,学习学习。但是偏偏项目管理人员天天来问你,有时甚至一天几次:进度怎么样了?能完成吗?这时候开发人员会极度反感。“进度怎么安排的,我心里清楚,干嘛跟催命似的,我又不是奴隶,长工!!”但是有苦不能言啊,只能憋心里。
为什么出现这样的情况?
有的项目管理者在项目刚开始的时候作需求,作计划,估算等等,忙的不亦乐乎,但是随着设计,编码工作的展开,他们的职能似乎就退化了,不参与设计,更不要说编码了,他们的任务逐渐变的就只剩催交文档和进度跟踪了,而对于真正的软件不闻不问。不去了解设计,更不要说去看代码,看也是在评审的时候看你是不是遵守编码规范,或界面上的一些bug。而对设计和怎么实现的毫不关心。但是对文档却是一个也不能少,而且还在格式上费尽心机。他们以为这样就可以很好的证明项目还在自己的控制中,而且这些开发人员也很听话,可以向老板表明他也很忙,也作了很多事情。所以我认为这种现象的根本原因就在于项目管理人员认为他们作的是管理(而不是真正的参与),只要有文档,有可控的进度,项目就尽在掌握;更甚者,他们除了文档和进度就再也无事可作,变成了一个真正的”闲事主任“,他知道别人的进度,但却不知道自己的进度。
解决的办法就是真正的参与到项目的开发中,设计,编码,不需要很多精力,但是已经足够在开发中树立你的威信,在别人碰到问题的时候能够和他们进行更深层次上的讨论,交流。在评审时才能够看到问题的本质,而不是些细枝末节。一方面增加了自己在项目中的作用,另一方面能和开发人员真正成为一个团队,消除对立的情绪,和开发者的关系由“你们”变为“我们”,尽管立场和根本出发点仍然不同,但是已经可以互相理解,协作。更重要的是,知道项目当前最需要的是什么,文档?交流?或是一次“站立会议”?
而不是想当然的“瞎指挥”。
我并无意贬低项目管理在开发中的作用,更无意贬低项目管理人员,只是就我自己在开发中碰到的我觉得不合理的情况发表一点自己的看法(顺便发点牢骚),希望我的偏激没有冒犯那些真正出色的项目管理者,并且非常希望能看到来自项目管理者的观点。