贝壳电子书 > 网络杂集电子书 > 微软研发致胜策略 >

第27章

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

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

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



我想也许是因为加入了除错码的关系,所以我问他这
是不是正式版。
“是的,这是正式版。”说着他仍然继续示范。
“你有没有想过要加快速度。”
214
微软研发
致胜策略下载
这位程序设计师很疑惑地问:“您这话是什么意思?”
“我是说,难道你不觉得它的速度有点慢吗?”
“嗯,我也不喜欢这样,但是这对使用者来说应该已
经够快了吧。”
我非常惊讶:“你觉得你和使用者有什么不同吗?特
别是现在,使用者就是你,而你就是开发这个程序的程序
设计师啊!”
我从来都无法理解,为什么程序设计师会以为使用者
—不论是其他的程序设计师、牙医或糕饼店老板并不在
意执行速度或是软件质量上的问题,程序设计师以为这些
问题只有程序撰写人才会知道吗?
我认为使用者才更会在乎速度和质量的问题,因为
他们是真正与软件利害相关、休戚与共的人,程序的撰
写人反而不是。您认为撰写F O RTRAN 编译器的人会每
天使用F O RTRAN 语言吗?撰写Word 中“邮件合并”
功能的程序设计师,会一天到晚在用这个功能吗? E x c e l
的宏语言呢?这么多年来有数十位程序设计师每天的工
作是强化Excel 的宏,但是他们之中有几位曾经去写使用
者定义的宏?我的意思并不是说他们都很坏,长期漠视
使用者,而是要强调,这些每天在开发软件的人,自己
215
微软研发·致胜策略
态度问题下载
很少去当使用者,写的都是自己没有机会使用的程序,
想想您的项目,您的组员是否真正去使用自己写的软
件?
程序设计师自己不使用软件,当然就拉长了他们与使
用者之间的距离,偶尔,会有程序设计师觉得使用者都是
白痴,哪儿懂得速度和品质的问题?
为了时时提醒自己为使用者设想,程序设计师应该以
这句话作为工作准则(也许您可以做成一张海报,贴在办
公室入口):
使用者和程序的撰写者一样关心速度和品
质的问题。
当然是有一部分的使用者并不在乎软件执行速度稍
微慢些,只要求工作正确完成,但是如果您想做出最好
的产品,就不能以这种要求水平,来作为本产品所要满
足的目标,您应该把要求水平最高的顾客当作本产品的
目标使用者,他们会关心软件的执行速度、稳定、有无
各种造成死机的错误,使用者的要求高,表示本产品有
进步的机会。
216
微软研发
致胜策略下载
不要让程序设计师以为使用者并不在乎软件的质
量。
易用性
在80 年代末期,微软开始进行易用性研究,企图找
出使软件容易使用的法则。他们找了十位从未使用过该产
品的人来做测试,结果有六到八位受试者不懂如何操作使
用者界面,而且大部分的功能都不会用。当他们看到了研
究结果,有些程序设计师的反应竟然是:“我们是打哪儿
找到这么笨的使用者?”他们没想到笨的不是使用者,而
是他们的使用者界面。
如果您的程序设计师有意无意间流露出使用者是笨蛋
的想法,请尽快纠正这种态度。把使用者当成笨蛋的程序
设计师,不会认真倾听使用者的抱怨,不会从其中试图找
出改善产品的方向;那些认为使用者很聪明、有分辨能力
的程序设计师,才能做出真正适合使用者的产品。组员对
使用者的基本评价,会对产品产生重大的影响。
217
微软研发·致胜策略
态度问题下载
小心次功能
我过去总以为,给使用者一个慢得不像话、限制一箩
筐的功能,也总比完全没给的好,至少在我们下一版做得
更好以前,急需的使用者可以将就应急一下,没鱼虾也好,
这是我的理论。但是后来我才发现,我错了,使用者其实
不能体谅我“有总比没有好”的用意,当他们拆开包装、
执行软件后,发现这项功能运作远逊于预期,心中反而升
起不满和抱怨:“为什么总是要做两次,才能做好?”。
由于经常看到使用者的这种反应,我决定凡是雏型已
具、未臻理想的功能,我都不把它放进正式版中。使用者
既然从来未曾拥有,也就谈不上失去。如果我给他们质量
次的功能,反而造成使用者对产品质量存疑的印象,对产
品的信心开始打折扣,也许就想换别家的来用用看。
我很不愿意这样说,当您看到一个功能质量做得还不
够理想,即使它再怎么有用,您都不应该把它放进正式版。
等到下一版,这个功能已经完全符合质量标准了,再让它
出门。万一这项功能非常重要,甚至可以考虑为它延后推
出新版的时间,但是,一定要把它做到好,绝对不要有次
品。
218
微软研发
致胜策略下载
不要给使用者次品,宁愿延期交货,务必追求质
量完美。
程序设计师要懂得顾客心理
在第1章里,我提过一位负责开发窗口函数库的组长,
他从来没有把函数库的使用者当作“顾客”看待,所以他
从未想过版本不兼容的话会对其他的组员造成极大的困
扰。我看过太多类似的事例,因此,我认为程序设计师都
应该有这样的思考能力—把程序的使用者当作“顾客”,
去了解他们的心理,使程序更能满足他们。
当Windows 版的Excel 小组打算重写一部分的程序
代码,使它也能在Macintosh 上执行时,有一位程序设计
师采用键盘操作的方式来做菜单(keyboard…driven menu),
这是很多企业用户强烈要求,但是在Macintosh 上却做不
到的,对于Macintosh 使用者来说,这一部分向来是用鼠
标来操作的。由于在Macintosh 上没有标准的“键盘驱动
菜单”可以遵循,所以这位程序设计师采用了Wi n d o w s
219
微软研发·致胜策略
态度问题下载
的按键惯例来写键盘驱动菜单,这样的话,程序会最好写,
因为这样就不必为Macintosh 另外设计一套操作的流程和
逻辑。他完成了这一部分的程序,就到我的办公室来示范
给我看,他的Macintosh 版键盘驱动菜单和Windows 版的
看起来完全一样,做得非常精彩,我不禁暗中叫好,我操
作把玩他的程序时,忍不住发出赞叹。但是当我稍微冷静
下来,我想起了一个问题,我问程序设计师道:“我现在
不想使用Windows 界面的话,该怎么做?”
他显得非常纳闷:“你为什么想这样做?用键盘来操
纵菜单并不干扰鼠标啊,没有理由非把Windows 界面移
除不可吧。”
他的反应让我惊讶,因为在那个时候,随便找一本苹
果计算机方面的杂志,上面都充满了对Windows 的憎恨,
苹果的使用者对于Windows 的“超人气”非常反胃,他
们认为Windows 不过是个靠模仿起家的三流产品,
Macintosh 才是有看头的好东西,只可惜世人眼光多短浅,
竟把它当成古怪的玩具。对所有的Macintosh 迷来说,
Windows 是个不折不扣的大坏蛋。
所以,我对这位程序设计师说:“如果我们的E x c e l
采用Windows 习惯的菜单操作方式,势必造成Macintosh
220
微软研发
致胜策略下载
迷的强烈反感,如果我们把Macintosh 上的Excel 做得跟
Windows 完全一样,注定会被杂志批评得体无完肤的。”
这位程序设计师不太愿意修改他的程序,他认为自己
已经完成了这一部分的工作,而且他急着去做下一项工作。
后来我们找了几个比较有关的程序设计师来讨论这个敌对
性的使用者界面问题,结果大家意见一致: Macintosh 版
的Excel 不但要看起来像是Macintosh 的应用软件,它还
要打从骨子里流着苹果的血统,要让别人看着它时脑中浮
现苹果那六条鲜艳的颜色。于是这位程序设计师只好回去
改他的程序了。
过了一会儿,他从隔间里跑出来,给我看他的最新作
品。这次我真的是大惊喜,他不只是为Windows 式的按
键菜单做了开关,他还做出了Macintosh 式的按键菜单,
还有,他做了一个相当聪明的设计,程序在预设情况下以
Macintosh 式的按键菜单出现,使用者可以用热键的方式
在Macintosh 式和Windows 式之间切换,还不只这些,他
甚至把对话框也比照办理,使用者切到Macintosh 式的按
键菜单时,连对话框也一并自动变成Macintosh 式,使用
者切到Windows 式的按键菜单时,对话框立即自动变为
Windows 式。这回我们可以“通吃”啦。
221
微软研发·致胜策略
态度问题下载
程序设计师必须经常以使用者的观点来看自己写
的程序,程序设计师必须能体会使用者的感受。
产品的整体观
长久以来,微软的“程序语言部”里,把编译器、除
错工具( d e b u g g e r )、链接器(linker) 等等程序语言的软件
分别当作完全不同的产品。这样做是符合开发的观点,但
以使用者的观点来看则未必合理。因为对于使用者来说,
编译器、除错工具、链接器是他同时要用的,是同一个产
品,这一点实在显而易见,如果我不说,您可能根本不会
想到这些组件是属于不同的部门在制作。
很不幸,在微软的程序语言部并没有这种共识。全
世界的程序设计师都在要求改善除错工具,但是除错工
具小组没有足够的人力完成这个需求,而同时,编译器
小组却兴高彩烈地进行优化(code optimizations)设计,而
优化设计只有少数使用者需要。他们脑中想的是“我们
要不断改进本组的作品”,而不是“我们要不断改进整个
222
微软研发
致胜策略下载
产品”。
也正因为如此,微软的链接器长久以来都做得很差,
速度非常慢,而竞争者的链接器却强得不得了。微软内的
程序设计师全都知道自己的链接器是乌龟在爬,但是没有
什么改善的行动。公司虽然派了一位程序设计师来为链接
器想点办法,但是他还有其他的职务在身,虽然他已经尽
力了,但由于他没有很多时间来改善链接器的速度问题,
所以实际作用也有限。除此之外,程序语言部里似乎有种
观念,认为编译器才是最重要的,链接器只不过是个辅助
工具。但是使用者肯定不会这样想,因为他不会刻意去分
编译器或是链接器,对他来说,所有的东西都是同一个产
品:微软的××语言开发环境。
微软内部至少就有一组开发部门放弃本公司的链接
器,干脆去用竞争者做的链接器;而在应用软件部门,大
家也被功能低下的链接器弄得苦不堪言,被逼得宁愿自己
另写一个阳春型的链接器,还好用些。最终程序语言的部
门开始正视这个问题,改良链接器,让它和编译器搭配成
一整体。
最后,经过几次高层管理的人事变动,程序语言部终
于获得整合,把自己的产品定位为“程序开发环境”,而
223
微软研发·致胜策略
态度问题下载
不是编译器。结果Visual C++,一个令世人耳目一新的产
品,一个令微软的程序语言部改头换面的产品,才在这样
的理念中诞生。
在包装盒里的每一件东西,都是产品的一部分。
重复就是浪费
前两节中我提过的那位程序设计师,在为Excel 开发
“键盘驱动菜单” (keyboard…driven menu) 时,

返回目录 上一页 下一页 回到顶部 0 0

你可能喜欢的