项目成本

项目管理的另一个重要内容是成本管理,项目成本的主要构成是人力成本。控制项目成本的核心是控制项目对人力资源的占用。在项目管理中需要一种机制来限制项目经理对人力资源的无限占用。在项目中有两种相互矛盾的因素约束项目经理的作为,一个是项目的进度,另一个是项目的成本。项目进度约束使项目经理有对资源的无限需求,而项目成本控制则限制他对资源的贪求。两种约束都要足够强,任何一种约束的缺失都可能造成项目的困难。特别是成本控制约束的弱化是导致资源紧张的重要因素。在日常工作中我们更多的强调进度的约束而忽视成本的约束,反而最终导致进度的失控。要有一种机制,使得项目经理非常不愿意要人,除非不得已才把人员招进项目组,用完之后就赶紧把资源释放。释放的资源可以形成一个人力资源缓冲池,这样人力资源就可以更有效的利用起来。一种设想是项目经理的成本承包制,在保证项目进度的前提下,项目经理使用的成本越少,可供他提成的基数就越大。形式上的承包制其实并不重要,重要的是项目经理要与项目的成本挂钩,他花费的成本越少,他得到的奖励就越多。

对于成熟环节,比如写JSP或者JavaBean可以采取记件的方式考核开发人员,并与其收入挂钩,这样可以保证真正干活的人的利益。

项目监控

项目管理的基础是项目的监控,就是要有量化的指标,没有量化的指标就只能是粗放的管理。由粗放到精细就是项目管理可以提升的空间。但为追求精细的管理而可能增加管理的负担,工作量的增加,在目前大部分项目进度压力巨大的情况下,可能会引起不好的结果。比如为能够准确把握每一个成员的进度情况而要求每一个成员要写日志(这在很多项目中存在),写日志成为每一个成员的额外工作,同时又为项目经理增加了大量的阅读日志的工作,项目经理还要通过日志去分析项目进度的真实情况,由于每个人写日志的风格都是不一样(既使是对日志的格式规定的很仔细,看两个人的日志仍然会感觉有很大的差别的),更增加了管理者分析的难度。对于写日志的人,如果他今天的工作没有任何进展,就比较难写,有可能写一些不真实的话在上面,目的在于表示我仍然在努力工作。对于项目经理来说,情况更糟,如果看日志,然后再从中分析数据,这个工作量是巨大的,如果不看日志吧,成员的日志就白写了,这种方法就没有起到其应有的作用,只是白白浪费大家的时间了。所以在谋求获取一种数据或信息时需要仔细考虑,是否增加的大量的工作量。对于写日志来说,不少管理者会说:“在下班前5分钟大家把日志写写”,这看起来是5分钟时间,好像是个小case,但这是每一个人的5分钟,如果再加上管理者对日志的阅读和分析,这个工作量会变得惊人。

有没有一个比较好的方式来获取数据呢?有,而且只有一个原则,就是从项目的必要环节上要数据。什么是项目的必要环节?我们分析一下写日志,如果我们不写日志,项目是否也能够完成,回答是肯定的,所以写日志不是项目的必要环节。写设计文档是不是呢,没有设计文档,程序员就不知道下一步该做什么,项目就不能完成。所以写设计文档是项目的必要环节。以最抽象的形式来说,项目就是一个个过程和一个个(中间)结果组成,过程导致结果,结果是可以统计的。项目可以看作一个大过程,也可以看作一系列小的过程的集合,判断大过程的进度可以通过分析细小过程产生的结果的统计数据得到。顺着这个思路,我们首先分析项目的必要环节都有哪些,中间结果都是什么,然后选择一种好的表现中间结果的形式,以方便我们的统计。这需要我们在项目开始的时候就要对项目环节进行设计。针对不同的项目可能会有不同的设计结果,不可完全套用一种模式。

对于完成的项目要善于整理和归类,提取有价值的东西保存下来,为以后的项目积攒经验。