随笔|杀人不见血系列之二(项目中的【政治】)


#彻底搞定这类因素也许需要读《资治通鉴》,这里所能做的不过是提请注意而已。



先分析一下项目政治的起源。




假设说在限定的条件下(人力,时间约束等)存在着一种最合理的运作项目的方法,那么会导致和这种合理性产生偏差的主观因素即是【政治】。

与项目管理相关联的政治起源于这样的基本事实:

① 管理层的视角更加宏观。宏观意味着忽略细节。

② 管理层也有非理性的情绪。比如:好大喜功。

③ 商业因素拥有更高的权重,容易受到过度关注。

④ 软件自身在度量上的不确定性。一个人可以抗60公斤的东西或100公斤的东西是明确的,也是可以清楚度量的,而5个人月究竟能干多少软件相关活则是含糊的,不好度量的。在这点的认识上,管理层可能和项目成员不一致。

⑤ 直接可见的东西比隐约可见的拥有更高的权重。因为隐约可见的东西更不容易看到。我们可以反过来看盲人摸象的故事,对于盲人而言,摸到的才是象,虽然其他的人可能知道象的全体像,但摸的那个人其实并不知道。

①②③④⑤几乎是项目中所有【政治】事件的起点。我们来基于某些常见事实做一点分析。


  • 运作项目的时候,可能会遇到一些反常的现象。比如:日期往往比质量更关键,形式比内容关键。


原因正如上所述,日期晚一天是明显的,是直接可见的。而质量好一点和差一点,很多时候并没有清楚的界限是隐约可见的。对于流程而言,形式是直接可见的,没有一种确定的形式是不可能通过CMMI的评估的,而实用性则是隐约可见的,即使稍微有点不实用,也只有现场的人才知道。


  • 日期安排的游戏。


有时候管理层总是希望项目能尽早的完成,但这种希望却未必有什么现实根据,而只是希望而已。这时候日程的制定就会更像一个讨价还价的过程:

A: 10块钱怎么样?

B: 太贵了,便宜点吧。

A: 那8块吧!

B: 还是太贵。

和讨价还价不同的是,卖东西的人气急了可以说我不卖了。项目经理则很难对管理层说:我不干这活了。

【随笔|杀人不见血系列之二(项目中的【政治】)】这类事情的根源可能是上面的②④,管理层的要求可能是起源于偏好。而另一个问题是在项目开始的阶段,项目经理未必能够让人信服的证明,以确定的人力项目一定要5个月,6个月一定不行。


  • 我不管你用什么办法,这个功能必须有,要不然我们就死定了。


上面这句话的变种可能很多人都听到过,这强调了某个功能的必要性。这种要求大多时候也不是恶意的。问题在于,实现这个功能的代价可能被低估,比如说它可能导致其它功能无法被准时实现。而这个时候,另一个伴生的要求可能是:所有过去确定的功能也都是最高优先级,必须都被实现。这个时候政治色彩出现了,原因可能是①③④。商业因素扮演更重要角色的同时,程序员这一群体再次被定义为无所不能。

从起源上来看【政治】这个词并没有什么不良的意思,可惜的是在项目运作的时候,有时候政治因素确实并非起正面作用。接下来我们来看一个可以载入史册的,政治因素影响项目的例子:

李开复先生在《世界因你不同》这本书里提到了Vista的开发历史,这段历史让我们可以清楚的看到【政治】因素是如何对一个项目产生影响。我们来看一下李开复先生讲述的这段历史的概要:

Bill Gates对Vista项目设定目标:

(1)支持新语言C#,所有操作系统软件都改用C#来写。因为C#语言的运行较慢,但是开发速度很快,这样微软不会落后于多人参与的开源Linux操作系统的发展。

(2)开发WinFS (Windows File System),它是新一代档案系统,可以将每一个文件存成数据库。如果WinFS能够成功,慢慢的,全世界的数据就都存到微软的数据库,不但可以击败Oracle、IBM的数据库,也可以防止别的网络公司(例如Google)掌控这些数据。

(3)开发 Avalon——新一代显示系统,让用户在浏览器里看到的网站或服务和传统的应用软件感觉一样。如果某网站的服务和用户端软件看起来一样,用户也更难理解网站服务的优点在什么地方。


  • l了解到目标之后,很多总监对目标的难度心存疑虑。事实上这表征着,既定目标和项目自身所蕴含的合理性产生冲突。对这种疑虑,李开复先生的描述如下:


很多总监看到这个设想就倒吸了几口凉气:“技术难度太高了!C#这么慢,怎么能做操作系统啊?数据库不够快啊?怎么可能当做档案系统?”还有些研究芯片的专家常常看着Intel的芯片计划就开始担忧:“一定是微软习惯Intel芯片加速的速度,才这么乐观。但是每18个月芯片速度就快上一倍的日子已经过去了,别说2004年推出了的这些芯片,照这样,2007年Intel的芯片都不够快啊。”


  • 作为影响了一个时代的人,Bill Gates具有无与伦比的影响力,对此李开复先生说:


大部分的团队,就像我的团队一样,说服自己做了leap of faith (信仰的飞跃),相信在盖茨的督促之下,这三大目标都可以完成。


  • 最终项目陷入困境。对此,李开复先生说:


经过了三年的奋力拼搏,微软视窗团队的工程师们都已经疲惫不堪。但是,Windows Vista的成功却似乎遥遥无期。其实灾难早就在酝酿,因为大家在一开始就知道,这个伟大的计划实现起来,其执行难度实在是太大了

WinFS团队虽然承诺了盖茨提出的三大目标,但是在实际的工作中感到了迷茫。 WinFS团队认为他们的任务是“不可能的任务”,但是也不敢告诉盖茨。任何一个接 触过Vista团队的人都知道,每次把测试版的Vista搭建出来以后,都发现庞大的系 统根本无法运行。

这段历史之所以可以被看做是一个政治因素影响项目的例子,根本原因不在于最初设定的项目目标过高,而在于认识到最初的目标不切实际竟然花了三年时间。

上述这类政治因素即会影响到项目里的人,也会影响到项目自身。

从项目的角度看,预先预防是比发生后面对更为有效的处理这类政治方法。而为了预防,那么就需要参照前文提到的政治起源来确定自己的措施了。



------------------------------------------------------------------------------------------------------------------------------------
理想流 + 软件 = 《完美软件开发:方法与逻辑》
理想流 + 人生 = ??
理想流 + 管理 = ??
理想流 = 以概念和逻辑推演本质,追求真理。

    推荐阅读