爱爱小说网 > 其他电子书 > 微软研发致胜策略 >

第15章

微软研发致胜策略-第15章

小说: 微软研发致胜策略 字数: 每页3500字

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



我绝对相信日程表的编定是为了准确追踪项目的进
度。毕竟,要推算出完成日期,没有比“加总所有的工作
时间”更合理的方法了。当然,没有人相信日程表可以把
所有的事情都算到、算准,但是就有人(尤其是高层管理
者) 要把“推估的完成日期”当成“实际非完成不可的日
期”。好在现在的微软人几乎都已十分了解理想和现实的
差距,后来的工作就逐渐顺利了,这些我们稍后会谈到。
147
微软研发·致胜策略
进度狂下载
适当的压力
您大概听人说过:“当经理的人要想属下拼命工作,
就得把日程排得紧迫逼人。”我相信绝大部分的主管多少
都相信这个论点,我自己也不例外。但问题是,要多紧才
是适当的呢?如果日程表能激发属下的潜能又不致摧残他
们,使项目以最合理的高速进行,那就很不错;但如果日
程是如登天一般不可能的任务,那就只会打击组员的士
气。
日程表必须有点紧,让程序设计师有一种急迫感,逼
使他们把注意力集中在最重要的事情上。假设您明天就要
休假去,一定会急着把手上的工作告一段落,因而加快了
做事的步调,不愿浪费时间在茶水间闲聊,也没有时间搞
那些e … m a i l,不必要的会就别开了,您一定把精神放在最
重要的事情。
最有压迫感的时候,就是期限快到的时候,我想任
何项目都是如此。在微软,主管大概会发出类似这样的
e … m a i l:
我们的期限快到了,请大家好好运用所剩
无几的宝贵时间。现在每个人的时间都很珍贵,
148
微软研发
致胜策略下载
我们必须全力朝向目标冲刺。要开会或讨论的
话,请三思而后行,为了向人求教而打断对方
的工作之前,请想一想能不能自行找到答案。
如果有额外的问题发生了,请别期望别人来解
决,大家都和你一样忙、一样紧张。请不要私
下保留一份待完成的工作清单,以为自己“终
究”能够做完这些工作,你没有“终究”的机
会,所以请把所有未完成的工作让经理知道,
至少我们可以决定它们的优先级。如果自己工
作都完成了,可别以为你可以闲着没事干,除
非是整个小组都完成了工作,你才算是大功告
成。我会提醒你们,但我知道你们都够聪明够
勤奋,你们都不是小孩子,我相信你们不会浪
费自己的时间。
每当我看到这样的e … m a i l,都忍不住纳闷:难道是项
目期限快到了才开始紧张,工作小组不是平常就该保持这
样的工作态度吗?
我这话听起来怪吓人的,您一定觉得可怕:我是不是
那种把员工榨干压扁的恶魔主管?当然不是,我一再倡导
149
微软研发·致胜策略
进度狂下载
的观念是:不要把规则当法律,要多想想如何聪明地工作,
不要浪费时间在没有价值的工作上,也不要浪费别人的时
间,要用积极的态度推动项目;这个观念在本质上与这封
e…mail 并没有太大的差异,只不过,在期限将至的时刻看
到主管发的这封e…mail,感觉就有点刺痛了。
如果您觉得时间非常紧迫,我想您在开会总结时一定
不会说:“乔治,关于这个问题,我们。。以后再来研究
好了。”您和组员们一定无法容忍事情拖拖拉拉,要不就
干脆删掉这项工作,要不就立刻把它完成。
如果组员没有那种急迫感,您想他们做事会全力冲刺
吗?如果时间多得很,多到大家早上闲闲散散来上班,翘
起二郎腿,一边看窗外的白云,一边慢慢想项目,这样的
沉思当然不是白浪费,也许会有极具突破性、非常震撼的
创意迸出来,但是这样不符合软件开发的快节奏,项目就
不那么刺激、兴奋了。好比是乡间小路的漫步和坐空中飞
车的对比,若有充裕的时间钻研和交流大家的创意当然是
不错,但是紧张、有压力的头脑风暴,也能激发很好的点
子。我相信要让大家的创意保持活跃,适当的压力是必须
的,而时间的急迫性就是一种激发能量的动力。
150
微软研发
致胜策略下载
让日程表维持适度的紧迫,但又是可以做到的,
好让组员振奋、不松懈,专心致力于项目的推
进。
紧逼盯人的最后防线:质量
时间的急迫性必须适度,如果日程表定得太紧,紧到
不太可能完成,组员就会为了赶进度而做出愚蠢的事情。
我曾经共事过的程序设计师中,有人就因为程序实在太多、
时间实在太少,程序就只好不测了—写完、编译过关、
第一次执行没有发生错误,这样就算是完成了,然后继续
赶另一个程序。他自己很清楚这样的工作毫无质量可言,
但是迫于时间的压力,他别无选择,只能祈祷测试小组能
够找到所有的错虫。
身为主管的您,一定要时时注意组员有没有为了赶时
间而做出蠢事。您必须随时提醒他们,日程固然重要,但
是为此而牺牲品质是划不来的,与其勉强交出一个设计不
良、没有测试完整、拼拼凑凑的程序,不如认真把它写好,
151
微软研发·致胜策略
进度狂下载
即使需要多花点时间。超过期限对项目不好,质量不合格
的程序却造成产品永远的困扰—除非将来有人不计代价
地逐行检查、修正这些草率的程序。
绝对不要草率定出不可能的期限,导致组员为了
赶进度而损害产品的质量。
草率的期限
在我的经验中,大部分的期限都是上级主管随意指定
的,也许他会对您说:“这件工作应该在某月某日完成
吧?”如果您同意了这个期限,到时候就得做出来。事实
上,您和主管虽然彼此同意了一个日期,但这个期限可能
是草率定出的,绝不表示它比质量重要。想想看,如果您
晚了一个月交差,会对公司的长期发展有什么影响吗?六
个月后还有人会在乎这件事吗?但是如果您交出的是错误
百出、表现恶劣的程序,您想那一种对产品的伤害比较大
呢?是稍微迟延,或是外界无情的抨击?
除非您的程序对产品有决定性的影响,而且这个程序
152
微软研发
致胜策略下载
的完成日期不容更改,否则您大可不必为了遵守期限而牺
牲一切(话又说回来,如果您的程序如此重要,那么万一
有错虫岂不更糟)。软件产品的推出就像航天飞机发射一
般不容发生错误,如果航天飞机有一个零件尚未就绪,您
不会为了准时发射而牺牲造价奇昂的设备和航天员的生命
吧,您一定宁愿延期一下的。
当然,我这样的论调也许会让您觉得要想把工作做好,
似乎需要很长的时间才行,其实不然,就我的经验来说,
如果方法对了,花的时间应该会比较少。在项目刚开始的
时候有一些基础工作不能忽略:设定明确的目标和优先级,
预先思考设计上和开发上的问题并设法预防,建立测试计
划,设定质量水准规范,这些工作在日后可以节省很多时
间。您想一想,在项目进行中一发现错虫就立即除错,和
项目快结束时才一并除错,哪一种用的时间比较短?答案
很简单。当其他的小组每周工作80 小时,仍然为大量的
错虫焦头烂额时,您的小组早已清完了错虫,而在宝贵的
最后数周内,再做彻底的测试,把可能存在的最后一个错
虫揪出来。
153
微软研发·致胜策略
进度狂下载
稳操胜算的日程表
稳操胜算的日程表能够兼顾公司和员工的利益,正如
我所说过的,必须有点紧迫,又不会太紧迫,要让产品及
时完成,也要让组员觉得时间刚好够完成最棒的产品。另
一个日程表重要的观念是,好的日程表必须能够肯定小组
的工作进展,让大家有“赢的感觉”。
我在叙述Excel 的开发历程时,以大象作比喻的日程
表,一周又一周的辛勤工作,然而上面的待办事项始终没
有减少。将近两年的时间,我每天一大早踏进办公室,第
一件事情就是在这张超级大表中找出最重要的几件事情来
做。对于完成日期在两年之后的项目,您想我会有时间紧
迫的感觉吗?老实说,没有,直到期限将至的几个月前,
我才开始觉得火烧眉毛。
也许您听过这么一句谚语:“没有期限的目标只不过
是梦想而已。”期限会促使您赶紧去做最重要的事:开发
产品,期限会迫使您尽量丢开无聊的行政程序,有期限,
您才会设法用最有效率的办法做事。当然我们Excel 项目
也有完成的期限,但是两年似乎还太遥远,因而没有激励
的作用,我们当时只觉得:“别急,反正总有一天我们会
完成Excel。”
154
微软研发
致胜策略下载
我所参与过的每一个令人兴奋的项目,期限都没有超
过两年的,无一例外。并不是这些项目的规模比较小,需
要的时间较短,事实上这与项目的规模并无关连,我们是
把整个项目分割成好几个较小的项目,每个小项目的完成
期限大约是两个月。每一个小项目的期限在两个月后,必
须完成一项短期目标,这样既能创造适当的紧迫气氛,也
能让小组有完成目标的成就感。换言之,我们并不是整个
项目结束时才完成产品,而是每两个月就“出货”一次。
还好,在Excel 之后,微软的项目大部分都是采用这
种阶段式的日程控制法,而把每一个小项目称之为一个里
程碑。若是单纯把日程表切割成每两个月一块,其实不够,
除了每隔两个月要来一次推出虚拟产品之外,并没有改变
什么,最后的期限仍在两年以后。并不是要多加几个期限
来制造压力,重点是每一个小项目就是一个目标的完成,
让大家感觉到工作的推进,提升整个团队的成就感和工作
热情。下面我们来谈谈项目应该如何切割成小项目,才会
有效果。
“把工作项目中最优先的全都做完”也许是很重要的,
但是工作清单上最优先的未必能构成一个完整的小项目,
分属各大类中的最优先项目,可能只是一堆彼此不怎么相
155
微软研发·致胜策略
进度狂下载
干的工作。
然而,“完成绘图子系统”就是一个完整的小项目了,
所有的工作项目都属于同一主题,各工作项目之间需要紧
密协调。您不妨用一个独立的日程表和工作清单来提醒组
员该做的事情,但是总体来说仍然是属于大项目的开发路
线。小项目并不是分头完成3 5 2件毫不相干的工作,而是
完整地完成一个子系统,而是可以被当成即将出货的产
品。
假设您打算在家里请客,所以去超级市场大采购,您
大概不会只买请客用的东西,只要是需要的都不妨顺便买
齐,您也不会到了超市才开始想我要买什么,或是我忘了
买什么,或是我一定还有什么地方没想到。您一定是把请
客采买当作目标,先拟好一张购物清单,买好了就打个勾
勾,而且同类的东西一起买。很简单的常识,因为这样做
最快嘛。
我前面引述过的那件e…mail 中,那位主管强调每件
事都得设想周全,每一件事都要好好收尾,不要因此而
“为山九仞、功亏一篑”。组员在审视自己的工作清单时,
重心会放在自己,我还应该做什么;审视小项目时,重心
则在整个软件,去找出所有相关的工作,还有什么是该完
156
微软研发
致胜策略下载
成的。
任何没有主题的阶段性工作就得依赖工作清单来推
动,因为没有主题,您当然没法子找出与这主题相关的工
作,这样的话,整体工作的进行就比较零零散散;如果是
分成各有主题的小项目,整体工作的进行就会比较系统
化。
把长期的大项目,分成几个完整而独立的小项目,
各小项目必须有一个主题。
哇哟!真棒!
同样是从大项目切割出来的小项目,想想以下哪种较
令人兴奋?是完成某一主题的全部工作、还是完成许多不
相关的工作?我想用装璜房子的比喻来说明其中的差异。
您有一间新房子正在装璜,工作进行到了一半时您去看看,
下面那一种情况是您会感到很明显的惊喜?情况一是某间
卧房的墙壁粉刷好了、起居室的灯饰安装好了、客厅的地
毯铺好了,情况二是客厅全部完成,其他部分则是都还没
157
微软研发·致胜策略
进度狂下载
开始,我想答案是后者。同样的,当您完成了一个小项目,
最好能带来一种“哇哟!”的惊喜气氛,让每一个人—
包括整个开发小组、Beta 测试参加者、高层主管—都
明显感觉到项目又向前推进了一大步。相反地,如果每一
个小项目都是这里改点东西、那里加点东西,整体看起来
似乎没有明显的进步,就没有令人振奋的效果。
当然,唯一的难题是如何将大项目切割成小项目,才
不会在各小项目之间造成掣肘或冲突,不过以我的经验来
说,这个难题是可以解决的。
想办法创造一些“哇哟!真棒!”的欢呼吧,因为这
是激发小组创意的动力之一,对于士气的鼓舞是非常有效
的。
加强“哇哟!”的效果
如果小项目的目标是“把工作项目中最优先的全都做
完”,也就是依照总工作表的优先级划分小项目,那么,
小项目只不过是一大堆互不相干的工作混杂在一起。如果
小项目的时间紧迫,项目经理可以悄悄调整总工作表中的
优先级,这就掩饰了这个问题,也许可以让项目经理觉得
舒服些,但却埋下了隐忧。
158
微软研发
致胜策略下载
如果小项目的目标是“完成所有关于画面的程序,好
让文件小组确定手册中的执行画面”,这就是有明确主题
的目标,而且根据这个目标,很容易可以判定哪些工作该
做,哪些是不该做的。对于任何一件工作项目,任何人
(哪怕他是笨蛋) 都可以立即判断它是否会影响使用者界
面,应该现在完成,或是延后到下一个小项目。
您可以采用各种不同的方式来将项目切割成小项目,
只要记得您的原则是:小项目应该有一个明显的主题,能
够产生令人惊喜、振奋士气的效果,这样就对了。当我们
在开发M a c i n t o s h的C/C++ 交叉发展系统( M a c i n t o s h
C/C++ cross development system) 时,我们的各个小项目的
目标如下:
把编译器中所有英特尔80x86 的专属指令区隔开来,
以使编译器能够支持其他类型的处理器。
◆ 在编译器中加入MC680x0 的程序代码产生器。
◆ 撰写MC680x0 的汇编程序码表列功能。
◆ 撰写MC680x0 的对象文件(object file) 产生器与相
关的支持工具。
◆ 连结单段(single…segment) 应用程序,让它能够执
行。
159
微软研发·致胜策略
进度狂下载
◆ 连结多段(multi…segment) 应用程序,让它能够执
行。
◆ 在编译器中加入程序代码优化的功能。
◆ 。。
我之所以定出以上这几项小项目的目标,是因为它们
都可以在两个月内完成,且容易理解,同时,除了第一个
目标“隔离80x86 专属指令”之外,其他各小项目都有明
显可见、令人兴奋的结果。当我们第一次看到编译器能够
正确产生可执行码,以及第一次看到屏幕上印出正确的汇
编程序码时,全组都跳起来疯狂欢呼。当我们第一个测试
程序完成正确的链接而执行成功时,我们确定这个产品已
经合格了,而优化功能确实可以发挥作用时,我们相信自
己的作品已经能与市场上的其他两个编译器竞争了,我们
的兴奋真是笔墨难

返回目录 上一页 下一页 回到顶部 1 2

你可能喜欢的