油条哥哥 发表于 2004-5-17 21:35:45

CMM,一种过时的东西【转】

CMM,一种过时的东西(程序员》:关注程序员自己的文化——专访Tom DeMarco)
原文

摘录:
CMM,一种过时的东西

《程》:我想知道您对CMM的态度。您认为CMM对哪些企业会有帮助?又会有哪些副作用?
TDM:帮助?CMM?对于如今的软件企业,CMM有百害而无一利。
《程》:我记得您曾经说过,在长期说来,CMM有助于提高生产率,只是在短期内会造成阻碍。
TDM:你记错了,我说的是“过程改进”,不是CMM。你知道吗,CMM已经有超过20年的历史,它的成功经验都是在1985年前获得的。CMM试图将一个固定的模型强加于一个日新月异的行业之上,它鼓励你效仿I
BM在1970年代所采用的软件开发方式。僵化,不敢面对变化,这是如今的软件业最忌讳的。所以我要说,对于绝大多数的软件开发,CMM毫无帮助。
当然,一定的过程是有必要的。但是,在这个变化的时代里,过程也必须拥抱变化,否则就不是好的过程。你一定还记得,CMM2级的特征是“可重复”,我认为这根本就是一个悖论:我们的每个项目都完全不同,我们的开发
环境每年都在更新,如何去寻求一个“可重复”的过程呢?你看,所有伟大的软件企业,有哪一家做的事情是“可重复”的呢?

《程》:可是有那么多人、那么多企业热衷于CMM呢。
TDM:他们根本就是无可适从——他们无法适应变化,他们无法在这种全新的环境中找到自己的位置,所以他们总得给自己找点什么东西来信仰。William Clifford曾经说过,人们常常会根据自己的愿望而虔
诚地相信一些东西,但愿望的强烈并不能使信仰变得可靠。
不过,对于只做外包项目的企业(例如很多印度软件公司)来说,CMM倒是一个不错的能力衡量标准。只有对于这种不需要动脑筋、不需要创新的企业,CMM才有意义。如果让我来评价,我会认为CMM是软件企业的耻辱符
:等级越高,说明企业越缺乏创造力。

让员工偷一点懒吧

《程》:我注意到您最近出了一本新书Slack,这个书名很是有趣,能不能请您简单介绍一下这本书?
TDM:其实这本书原来的名字叫《敏捷企业的秘密》(Secrets of the Agile Organization)。在我看来,要让企业具有适应新世纪、新经济所必须的敏捷性,需要做四件事:1)给员工
一点点偷懒的时间;2)帮助员工减轻压力;3)注重对员工培养的投资;4)评估风险、控制风险。

《程》:难道偷懒也能帮助提高生产率吗?这不是违反直觉的吗?
TDM:对呀,你应该让员工每周七天、每天十二小时地拼命工作,这样效率最高了——如果他们的工作是搬砖头的话。
你必须首先搞清楚,要让你的员工为你贡献什么,然后再决定如何安排他们的工作。对于软件开发者,我们需要他们贡献的是创造力,是他们的点子,是他们的聪明才智,所以,我们必须让他们常常放松,有自由思考的时间,这
样他们才能把自己的才华发挥出来。

软件本质

《程》:Fred Brooks说过,软件中的关键问题导致“没有银弹”。但是,难道每种软件的关键问题都是一样的吗?比如说操作系统和ERP系统。
TDM:Brooks说,软件的关键问题就是“找出需要做什么”,而“怎么做”则是次要问题——所有的技术、工具和过程解决的都是这个次要问题。我完全同意他的观点。在“怎么做”的问题上,我们取得了极大的进展;
但是,在“做什么”的问题上,几十年来情况似乎并没有太大的改善。我想,这是由于软件的本质造成的。

《程》:那么,什么是软件的本质呢?
TDM:我们的世界是模糊的、连续的、不精确的,但软件是精确的、离散的、形式化的,这就注定了软件不能完全描述现实世界。因此,我们需要知道描述哪些部分、忽略哪些部分,这就是软件的本质问题。显然,这是一件机
器无法完成的工作,软件的本质意味着开发人员的存在意义。

《程》:您认为对软件业最好的比喻是什么?是工程学?是艺术?还是工艺学?
TDM:都是,但又都不准确。软件中有工程学的成分,有工艺学的成分,也有艺术的成分,所以它才如此复杂。
在过去的几十年中,我们在“软件工程”这条路上做了大量探索,并且取得了极其可观的成果(很荣幸我在其中也做了一些贡献)。但是,现在看来,边际效用递减律正在起作用,对软件工程进行更多的探索所能收到的效果正在
变得越来越少。所以,我认为应该去考虑另一些以前很少考虑的问题。比如如何营造良好的工作环境,如何将新手培养成熟练的开发者……以前很少有人系统地考虑这些问题,所以如果在这上面投入努力也许能获得更大的效果。

春天梅花 发表于 2011-5-5 15:07:51

:)

春天梅花 发表于 2011-5-5 15:08:02

:)

春天梅花 发表于 2011-5-5 15:08:09

:time:

春天梅花 发表于 2011-5-5 15:08:18

:$

春天梅花 发表于 2011-5-5 15:08:24

:P

春天梅花 发表于 2011-5-5 15:08:30

;P

春天梅花 发表于 2011-5-5 15:08:38

:curse:

春天梅花 发表于 2011-5-5 15:08:45

:lol

春天梅花 发表于 2011-5-5 15:08:55

:'(

春天梅花 发表于 2011-5-5 15:09:04

:(

春天梅花 发表于 2011-5-5 15:09:20

:@

春天梅花 发表于 2011-5-5 15:09:28

:P

春天梅花 发表于 2011-5-5 15:09:39

;P

春天梅花 发表于 2011-5-5 15:09:51

{:3_80:}

春天梅花 发表于 2011-5-5 15:09:59

{:3_71:}

ruirui。 发表于 2011-5-5 15:33:29

楼上真行

tyrael_79 发表于 2011-7-4 13:49:08

没有过时的方法,只有用错的人:lol

jiazurongyu 发表于 2011-7-26 21:16:16

默默巫的背景飘着片叶子

IUHK 发表于 2011-8-3 15:11:58

恩,用同一种规则套其他所有的工作,本来就是不可行的。
很多大师并不是套用其他规则而成功的,是发现了现有规则对本身工作的不适用,改进了规则才成功的,但是他们成功后就开始把自己的规则当成可以套用一切的规则了
页: [1] 2
查看完整版本: CMM,一种过时的东西【转】