首页 » Software Engineering » 正文

虚其心 实其腹 弱其志 强其骨——亦是软件工程管理的精髓

文|许野平

当你的开发团队个个都是顶尖高手的时候,而你过分依赖这些高手个人能力的时候,团队的战斗力实际上会很低下,甚至战斗力低于零。

软件工程管理的精髓是,把复杂问题化简为简单问题,把脑力劳动转化为体力劳动。如果能做到这一点,您的工程管理一定能能处于牢牢的可控状态。

当为您自己项目建立合理架构的时候,一种庖丁解牛的感觉会油然而生,庞大、繁杂的系统,在您游刃有余的刀功面前,被肢解成一个个简单的组件。这时,您的团队人人都有能力解决其中任何一个组件的开发。

虚其心,实其腹,弱其志,强其骨。这就应该是您对团队成员的基本要求——开发团队不需要人人都是智者,当系统被肢解后,大家有足够的体力和效率投入战斗就足够了。

老子这句经典的句子,是对软件工程管理本质的一个恰如其分的脚注。

我曾经非常鄙视老子的这几句名言,感觉这是一种愚民理论。在几经折腾以后,慢慢悟出其真正含义。

数年前,公司软件项目管理一度陷入困境,许多项目迟迟无法完成实施。其中一个ERP项目,当时公司几乎用尽了可想到 的任何办法,项目也更换过三班人马,每次从头返工,仍然无法有效改善进程。其实参加项目的研发人员都很敬业,技术也不错,但是结果如此令人沮丧,不得不令 人反思。

后来终于明白,对于复杂系统的软件系统,其工程管理本质上是一个科学问题。诸如瀑布模型、极限编程、RUP等传统理 论并没有触及该问题的核心。这个项目最终得以完成,我们对软件工程的管理也有了更为深刻的认识。项目完成验收后,我曾写过一篇博客《软件工程——从艺术走 向科学》。

再次读老子的这句话,感受和以往完全不同。我觉得对这几句话应当作如下的解读:

虚其心:

  古代有句话,“劳心者治人,劳力者治于人”。劳心者,实际上就是管理者,而劳力者,就是被管理者。 

        对于团队的管理,我们要让被管理者“虚其心”,其实就是告诫我们,不要把项目管理者应该做的事情推给下属去做。

  管理者自身应该“实其心”,尽到自己的职责。如果项目进展不顺利,不要靠所谓的考核去责怪下级。事实上,只有不会打仗的将军,没有不会打仗的士兵。如果把管理者自己应该做好的事情推脱给下属,项目很难取得成功。

实其腹:

  这句话应该容易理解。团队的领导人应当为下属提供良好的工作、生活环境,才能保障开发团队的战斗力。

弱其志:

  不要让您的团队成员争强好斗,这样最容易产生内耗。从某种意义上来讲,量化考核之类的举措弄不好就会带来负面效应。量化考核往往鼓励员工只对眼皮底下的个人利益感兴趣,每个局部细节合格,并不能保障项目整体合格,更不能保障所做工作符合公司长期利益。

  一般情况下,量化考核不仅会导致公司花更多的冤枉钱,而且会让开发团队人心涣散、责任心更差。

  好的团队应该减少内部竞争,而让团队成员没有后顾之忧地全身心投入有效的工作当中。

强其骨:

  应该确保开发人员技术过关。尤其开发人员较多的情况下,必须让开发人员能够理解上级意图、理解自身工作的技术要求。所以,项目启动之前,需要进行必要的培训工作,使得团队成员在系统设计概念、原理、技术等方面达到所需的要求。

  老子的这几句话,翻译成软件工程管理的语言来讲,应该是:管理者应该向下属“分派符合下属能力的任务、为下属提供充分的资源、减少不必要的内耗、提升下属的技能”。

  反过来,对于管理者自身的要求就应该反过来“实其心、虚其腹、强其志、弱其骨”。也就是说,做好自己份能工作、准备面对严峻困难、缔造战无不胜的团队、不与下属争功。