【理想流】项目管理本质论 . 分类: 项目管理 2014-06-14 14:51 183人阅读 评论(0) 收藏
引言
在项目管理这样的领域中有一种很不好的趋势,那就是许多局中人逐渐的迷失自我。而在偏向社会学的领域中,一旦我们相信理论多于相信自己,也就意味着我们开始犯错。项目管理是与数学等自然科学完全不同的学科。数学上,一旦有人证明了1+1=2,那么这条规律可以放之四海而皆准。但项目管理不行,A说他用了某方法做指导取得了巨大成功,B却可能说他也用了,基本没什么帮助,而他们却可能同时都是对的。项目管理虽然本身并不神秘,却碰巧有着几层神秘的面纱,为了揭开这类的面纱,我们从项目管理的本质说起。
项目管理的本质
项目管理的根本目的是使团队的效能稳定的维持在高端上。
稳定的含义是短期目标需要和较长期目标需要取得一定平衡,“揠苗助长”和“将来很美”实质上是项目管理失败的两种不同类型而已。
高端的含义是团队的整体绩效大于所有个人绩效总和。
为达成上述目的,一切管理手法都需要基于项目管理这项工作的本身特性,即被管理对象:人和项目的基本特性。
对软件项目而言,项目的基本特性只有在被参与项目的人认识之后,其影响力才逐渐得以体现,因此人几乎是软件项目管理的一切。
对于一个团队而言,提升绩效的契机完全在于人的效能能否得到提升,这点几乎已成定论。无论电脑的计算速度多快,电脑本身永远也不会成为企业的核心竞争力,并且只有标定的能力。
而人则在具有协调,整合,判断和想象(创造)的能力的同时,又可能具有消极,排斥异己,懒惰,好高骛远等电脑所不具备的负面意识。这也就使团队的生态千差万别,效能具有非常大的伸缩空间。而能引领团队生态,维持团队生态的手段则只有管理。
也正因此前文才强调,能否营造一种生态,让团队的效能长期保持在高端上,是项目管理的根本使命。
在完成这一使命的过程中,项目管理自身所创造的价值可以体现在下面两个方面:
一方面,在管理过程中,可以通过监督,惩罚,批评,鼓励等手段对人的负面情绪进行遏制,进而抑制内耗等的负面效果,最终营造一种生态。在这种生态下,所有的人不止对自己做的事情负责,同时也主动的进行工作,进而提高每个人的效能。
另一方面,一旦上述生态可以达成,那么团队对项目的特性也就会有更加深刻的认识,把这种认识融合进管理工作之中后,就可以避免时间的浪费,最终达成团队效能大于个人效能之和的目的。
管理对上述两个方面的影响体现在项目各处,这里试举两例:
例1:项目的关联要素往往形成一定的因果关系。如果这种因果关系发生混乱,那么会导致人员空闲或者返工等现象出现,进而降低效能。假设说为开发某个程序需要购入某款设备,而设备的购入周期为一个月。如果预先购入设备,那么项目无疑能够平滑进行,但如果在使用前才意识到需要购入这款设备,那么很可能所有团队成员都需要空等一个月。
例2:项目中人员的能力,兴趣和擅长领域是不同的,如果在项目执行到一定程度的时候,才发现,一个人在做根本不适合他做的工作,那么无疑的团队的效能会被降低。任何项目的问题都具有一定时空特征,而在大多时候,早发现问题并进行应对,代价总是要比晚发现,在问题已经变严重后再进行应对,成本要低。
上述两类问题能否被意识到,并且被预先对应,很大程度上取决于管理所创造的生态。
因此说,管理能够产生价值,主要来源于上述这两个方面。
反过来讲,如果所有人都由于兴趣而工作,热情高涨,那么管理的价值将大幅缩水。
《大教堂与市集》这篇文章里专门提到了管理,在列举了一些管理的基本任务(如:确立目标,监督,激励,组织,资源监护)后,Eric Steven Raymond 说:
显然所有这些目标都是有价值的。但是在开源模式以及其社会语境中,这些目标会变得出奇的不靠谱。
Eric Steven Raymond的表述略显夸张,因为不管在那种模式下,任务分配这类基本管理工作都很难被忽略,但这至少表明在某些情形下,管理并非总是有确定的价值。
但在非开源社区中,大多时候Raymond预设的一些前提仅止于是理想,那么管理价值凸现。我们需要承认,在现实中的大多团队里,对工作的投入程度,对项目自身特性的认识往往是不足够的。
COCOMO模型中多个因素同人有关,人件中一再强调软件这个行业的主要问题实质上更侧重于社会学,而不是科学技术,这些观点事实上与Raymond的观点并不矛盾,都是在强调管理中人的重要性。而现实中,对人的效能产生主要影响的手段则是管理。
经常有人提到项目管理的本质目的是使项目成功,其实这种理解是有所偏颇的。项目管理从来不能保证项目成功,他只能使项目成功的几率增大。
由于项目管理最终对效能负责,所以项目管理本质上是一种实践,而非一种理论。检验项目管理成败的标准应该是绩效,而非是与某种特定知识(比如CMMI)的吻合程度。
项目管理的原则
经济学家凯恩斯曾经讲道:经济学家与政治学家的思想,其力量之大,往往出于常人意料。实际上,统治世界的不过就是这些思想。
这段话道出了真实社会中的一条基本规律,历史由人创造,而人的方向则由思想把握,因此最终左右世界进程的仍是思想。
项目也是人的活动,所以也逃不脱这条规律,因此项目管理的第一条原则就是团队需要怎么样一种精神,而以此精神为依据,又可以推导出那些所有人需要遵守的行为规范。
通常一提到精神或意识,话题就容易分散,为收拢话题,这里给出一点参考。
这里所说的团队精神其实可以非常简单,对大多团队而言,也许两点即已足够:责任感和主动性。
责任感是一种努力把自己所做的事做到好的精神,同时责任感也是相互信任的前提。
主动性则是一种独立思考的精神,独立的去面对未知的问题,并找出答案,即使这件事不在限定的责任范围之内。
虽然精神真实的在各个层面影响着项目中各种各样的活动,但精神从来不能脱离现实基础而单独存在,否则必然沦为口号。也就是说真正的运作项目,单有好的团队精神是不够的,我们还需要解决项目运作过程中遇到的这样,那样的问题。
不同的人,不同的文化背景,不同的知识领域,导致可能的问题千差万别,进而也就导致对管理而言,普适的规则永远都只有参照价值,以为可以用普适的规则可以解决所有的问题,几乎必然是错误的。
所以项目管理的第二条原则就是:不盲从,从客观环境出发,从实际出发,从具体问题出发,独立思考,采取措施去解决问题。
不盲从说的是不要去相信这本书,或者那本书怎么说。书里的东西永远是处在被借鉴的地位,只有读书的主体,把书里的知识融汇贯通后,书里的内容才可能对现实起正面作用。任何一种方法论,都有其成立的根源,都有其自身的合理性,但事实是两种方法论通常不能同时实施,这个时候你选择那个?
从客观环境出发,是指要正视现实,同样的问题,A公司用A方法会成功,B公司用却可能失败。忽略这方面的差异,单纯套用PMBOOK或CMMI中的思想和观念是错误且危险的。
从问题出发是指先要弄清楚你的问题的本质究竟是什么,比如A公司的核心问题可能是工作人员coding能力不够,这时候你要用流程来解决问题,岂非南辕北辙?
以管理自身而论,其所对应的工作范畴往往并非恒常不变的,而受到来自于人和项目特质的制约。
比如说:一个团队主要是由爱因斯坦这类的科学家组成,其研究课题为宇宙是否为有界无限;另一个团队主要是由技工组成,其目的是按照既定时间生产主板。显然的,管理这两种团队的时候,流程的详细程度,人员的时间自由度,团队文化等等必须要有所不同,否则将对项目造成伤害。
现实中,不同软件项目中之间,项目特性的差异和人员的差异不会像研究团队和生产团队这样大,但终究是有差异的,这种差异通常不能被忽略。
这也就要求项目管理最终要达到一种,不唯上,不唯书,只唯实的状态。
当我们应用第二条原则去解决问题时,必然会发现要解决问题首先要团队成员间互相了解。兵不知将,将不知兵可能是很多问题的起因。
如果管理者了解他的团队,那么因势利导后,必然是事半功倍。但这个时候事情却也趋于危险。在这种条件下,一旦管理者的选择趋于功利,而缺乏真诚,缺乏双赢的哲学,长线下来,必然难以获得支持。在任何合作中,如果一方的成功始终是以牺牲另一方的利益为前提,是一种你多我少的关系,那么这种合作必然难以长久。而管理有的时候,确实可以被看做是一种管理者和被管理者之间的合作。
心术不正的人,在这种情况下可能会想到欺骗这类手段,但在时间面前,秘密往往不成为秘密。
由此也就可以推导出来第三条原则:真诚的坚守双赢哲学,公平的解决团队中的事务。
这里双赢指的是个人和项目的双赢。
公平则具有双重含义,一是个人和项目间的公平,;一是处理内部事务的时候,团队成员和团队成员间的公平。公平的这两重含义实际构成了双赢的基础。
管理工作大致可以分为两部分:一种偏向于技术,另一种则偏向于文化建设。偏向于技术的有规模估计,任务分解,日程表制作,进度跟踪,汇报等。偏向于文化的则是团队建设,文化建设。但无论对于那一部分,欠缺的往往不是具体的方法,而是选择的原则。所以这一节叫做项目管理的原则。