从VISTA到WIN 7 揭秘全球软件开发模式的变迁
尽管微软的高层从未在正式场合承认VISTA是一失败的产品,但是市场的不接受、用户对兼容性、占用资源过大等等抱怨反馈无疑给微软从头浇了大瓢凉水,很多用户安装了VISTA又因上述原因卸载了VISTA转装WindowsXP,以至于微软不得不采取提前结束XP的升级服务迫使用户转移到VSTA的平台上来。 一个拥有30多年软件开发经验、做Windows操作系统超过20年历史的全球最大软件公司,在他创新推动Windows产品进入第六代(VISTA)之时,遭遇了前所未有的滑铁卢。两年后的2009年10月23日,微软在全球发布它新一代的操作系统Windows 7。在大家都聚焦于微软Windows进行的种种更新之时,《中国电子报》记者对微软中国公司及研发集团高层、合作伙伴进行了系列独家采访,希望揭秘VISTA的错误以及从VISTA到WIN 7升级背后,微软如何纠正错误、如何全球化制造软件,透视这些做法希望对中国的软件产业进行产品制造、创新带来借鉴。 微软VISTA遭遇最大问题是未适应计算模式的变迁 2006年11月和2007年1月微软历时5年时间耗资过百亿美金研发的Windows Vista企业版本和个人用户版分别发布,微软内部人士称VISTA是微软Windows历史上最具颠覆性的产品,并对他寄予了极大的期望。 但一年后,微软收到的是失望的市场反馈: 来自中国某数据机构做的一个区域性调查报告显示,VISTA的普及率为20%,被调查使用VISTA的用户中1/3都遇到了至少一个硬件兼容的问题。 一些企业的用户说:“XP支持我们工业上很多专业软件,但VISTA上却不能用,就最简单数空机床的PLC梯形图软件都无法运行。” 在中国,使用人数超过1.5亿网上银行用户,其网银身份认证系统在VISTA上无法运行。 不仅仅是在中国,全球VISTA的用户都遭遇了应用软件、硬件、网络的兼容性欠缺的问题,此外占用资源过大,启动和运行相关应用启动时间太久等等都成为用户头疼的问题。而这些问题的暴露,和VISTA操作系统更炫的界面、更好的易用性、更强的安全性等等相比较起来,用户还是更愿意退回到XP时代。 这对微软来说这无疑是一个重创式的打击。为了加快市场的接受,让用户尽快从XP升级到VISTA,微软不得不停止XP升级和服务来迫使用户选用VISTA, 2009年4月14日微软宣布停止对 Windows XP的升级和相关服务,后又因用户的强烈呼吁而将服务延期。 从1985年微软推出第一款产品Windows1.0开始到今天,微软做Windows 操作系统已经24年,从当年的1.0到到今天的WIN7 ,Windows的更新进入了第七代。1993年即加入微软并参与了微软全球WindowsNT开发现任微软中国研发集团战略合作部总经理的申元庆接受《中国电子报》记者独家采访时表示,在20多年的7代产品中,有颠覆性跨大步的产品也有革新性优化迈小步的产品,其中Windows3.1、 WindowsNT和Windows XP属于“里程碑式的跨大步产品”,而Winows 95 、 Windows98 、WindowsME、Windows2000算是对上一代产品的完善和优化, VISTA是“迈大步”的“颠覆性的产品”。却遭遇了市场的冷遇,尽管微软的相关人士几乎都不承认VISTA是一款失败的产品,给出的说法是“VISTA 这一步迈得太大了,而且对技术性指标,超越了业界全方位准备,包括微软自己的准备,所以暴露出很多的问题”。不管微软如何辩解、如何力挽狂澜,VISTA 的颓势已经无可挽回,微软必须在最快的时间内推出更新的产品,来重新赢回市场和用户,这也就是为何微软会在短短两年后发布WIN 7的关键原因。申元庆说:“业界和用户不会给微软第二次机会,WIN 7必须修正VISTA的所有失误”。 微软中国研发集团首席技术官、微软亚洲工程院院长张宏江接受《中国电子报》记者独家采访时坦言“VISTA的失误不是技术上的,而是运作上的失误。失误的地方表现在,一是对合作伙伴(包括硬件平台、应用软件和网络)的兼容性测试是在产品上市之后才进行,由于VISTA对原有的Windows安全性大规模的提升后,很多关键内核发生了变化,兼容性如果不同步进行解决就会造成很大问题,但微软并没有在初始研发VISTA之时将兼容性纳入规划;二是对技术、功能指标定得过高,导致资源的匹配上失衡,通常来看在市场上成功的软件产品都是取其性能的平均值,而不是所有功能极致化,但是微软给VISTA赋予了太高的性能要求;三是微软低估这个软件的复杂性。”也许大家还都记得,微软VISTA的发布时间曾一拖再拖,并因开发无法如期交付而换掉了VISTA开发团队的老板。 从笔者看来,VISTA开发经历了漫长的5年,而这5年正是全球软件产业从产品化时代向“软件+服务”时代转型的前夜,而这个转型要求软件制造的方法也必须改变,这是一个渐变的过程,但是当时的微软没有意识到,还依然沿用一直以来的产品化时代的开发模式:自己主导定义,自己开发,与生态链的互动并不紧密,导致软、硬件、网络兼容性的问题产生,此外在计算模式已经从完全的“软件”演变到“软件+服务”、演变到“云+端”的计算模式后,作为“端”的操作系统,不应该把所有的功能和压力都集中于“端”操作系统,应该将更多的功能考虑与“云”互动,与“云“分享”来共同构成一个新的操作系统。这才是一系列问题产生的根本原因。VISTA正是处于这样一个计算模式变化的时期,他所遇到的种种问题正是产品化进入软件+服务时代必然的不适反应。 在WIN7 发布的前夕,记者独家采访微软全球资深副总裁、中国研发集团主席张亚勤,求证软件+服务时代与软件产品化时代的开发方法区别。他认为,PC从单机时代进入 PC、手机等多元终端融合互联“云+端”的计算时代,软件的架构、软件提供服务的方式正在发生变化,一个平台式的软件历时4—5年“真空式”软件开发时代已经过去,这个变化意味着软件的开发制作必须是全球化的、分布式、开放式,必须与合作伙伴与产业生态链一起进行协作开发、不断互动沟通才有可能制造出具有广泛兼容和满足用户体验的平台化产品。 应该说,VISTA的失误不是微软开发的战术问题,而是开发战略的失误,微软这样的软件巨头在计算模式变化之时同样会存在反应滞后的问题,这为中国制造软件产品提出了更多值得思考的课题:如果在战略层面对计算环境的趋势性变化没有准确把握,那么战术上再多的调整也难以弥补软件的缺陷。如同微软与谷歌的竞争,今天微软之所以与谷歌的竞争日趋激烈,不仅仅是因为谷歌也做桌面的、手机的操作系统、办公软件,而是因为谷歌开创了一个新的应用模式,是在新的模式下谷歌全面侵蚀微软的领地,。目前中国正在推动“核高基”项目,推动基础软件的技术创新与市场化,对于中国软件产业来说,更应该从战略层面、从计算模式层面来寻求新的定位与突破,从VISTA的失误到微软与谷歌的竞争,我们看到战略的前瞻性与准确性对产品的命运的致命影响力,中国是否要重复别人已经相对成熟的产品发展之路还是我们开创新的应用模式来赢得更大战略空间,值得我们更深层次地思考。 VISTA升级WIN7 做减法 在微软公司发展了的30多年历史中,微软曾经经历过无数次的挫折,但都挺过来了,原因是比尔盖茨和微软善于快速纠正和修补错误,这次也不例外。 WIN 7被定位为“云+端”计算模式下的操作系统,在这样的定位之下,微软必须在最快的时间纠正VISTA的问题。张亚勤说,VISTA升级WIN 7必须要对原来的VISTA做“减法”。VISTA占用资源过大,开机等待时间太长、部分功能的用户界面太复杂的问题,必须在WIN 7解决掉。 记者曾在2006年在微软发布VISTA的前夜对话某LINUX厂商,该公司北亚区总经理给记者演示了最新一版的LINUX产品,VISTA能提供的各种“炫”功能,这款产品大多具备,而且比VISTA占用的资源少,运行时间快,无需太久的等待。 同样,使用苹果操作系统Mac OS的用户也有这样的体验,苹果操作系统够“酷”、够功能强大、够安全,运转起来同样快捷、方便、易用。为何VISTA占用如此巨大的资源,需要如此长久的等待,为何LINUX可以做到的Windows做不到? 针对记者的困惑,张宏江说:“在物理学中有带宽功率比的定律,当你需要覆盖的带宽越宽之时,功率相应的会下降。当一个平台软件需要覆盖更广泛的硬件平台、运行更多的应用软件,具有更广泛的兼容性又要求更高的性能和效率时是需要占用更多资源的。如果操作系统只需要针对一种硬件平台和某几类应用软件进行优化,他的工作相对简单得多。” 用户只看结果,不需要理由。目前市场上存在着三类操作系统LINUX、MAC OS和Windows,如果说LINUX是开发者们的理想产物、而MAC OS是“粉丝们”的御用品,那么微软就是“大众化”的产品,针对最广泛用户群使用的操作系统,Windows必须兼容大部分的硬件平台、兼容所有的主流应用和互联网服务,而且还需要非常简介和易用的使用体验,这是所有用户对微软的要求。 要实现这些,WIN 7必须对VISTA进行最大范围的优化,张亚勤说:“实现的方法就是做减法:在架构方面,更模块化;代码方面,把过去很多的旧代码清除掉;在用户界面方面,把复杂的功能都屏蔽掉,当使用需要的时候再调用出来。在过去我们使用应用程序想调用须打开运行才可以查看,WIN 7 只要鼠标移动到相应的位置,它就会动态显示。” 张宏江认为,VSITA在架构上迈向了新的台阶,而架构升级后,需要进行各个方面的优化。而这些优化正是这些来自于张亚勤所言的“减法”工作。 WIN7做减法和优化说起来是一句话,但是实现起来确是一个艰难的复杂过程。所以微软项目经理张琪在刚刚过去的两年时间里都处于有些“癫狂的恋爱”状态。因为这个微软中国研发集团的小伙子所在的团队所要做的工作是对Win7里的核心组件MSXML进行优化,以保证系统和应用程序运行的稳定高效。张琪需要拿出和姑娘恋爱的激情和持之以恒状态来做软件优化工作。他说“因为到了WIN 7编程模型和硬件条件都发生了巨大的变化,在以前很多小概率的事件,在Windows7就会频繁发生,很多问题是随机发生的,重现变得很困难,要解决这些问题就更加困难”。要优化要占用更少的资源代码一个也不能多,需要模块化、需要删掉很多旧代码。 应该说,计算模式向云+端计算模式演变后,我们需要简化作为“端”操作系统的巨大负荷,它需要变得更“轻巧”、更“飘逸”,软件的内核必须 “小巧”,需要把更多的资源和更多的东西通过服务和网络互动来实现,需要为用户提供更多的选择。从PC硬件层面看,笔记本也从当初的一个机器大而全向包揽一切向上网本及多元移动终端方向转变,为之服务的操作系统平台也需要更多元化、多种选择。如何可以在功能越来越完备的时候,内核越来越小,是用户的必然需求,在过去的两年里,微软投入了巨大的人力物力来给VISTA做“瘦身”优化。 产业生态系协同制造 我们回顾历史来看,几乎所有的领域,微软都不是第一个进入市场者,也不是所有进入者中技术做得最好的企业,但是微软依然能够成为该领域最大的市场份额拥有者,或者排名第二的企业,这一切来自于微软追求普及化和市场最大化的企业经营理念。要实现普及化和市场最大化,微软是以产业生态链的方式来组织竞争的。 这个定律同样表现在Windows操作系统上,相比LINUX和MAC OS无论从技术 “专业性”还是体验的“炫酷化”追求上,微软都不是LINUX和苹果的对手,但是微软能够成操作系统市场最大份额的拥有者,是因为LINUX阵营和苹果都 “不屑”去搞产业生态链经营,MAC OS只服务苹果硬件,而LINUX也还有派系之分。但对于绝大部分消费者来说,在互联和融合的时代,他们需要与广泛设备沟通、需要使用广泛的应用和网络服务,功能的极致化是未必是他们的必然需求,所以微软抓住更多的硬件平台和让更多的应用构建在其上就成为微软操作系统最重要的发力点。这曾经是微软超越LINUX和苹果的优势之一,但是在VISTA的时候微软忽略了这一点,因为底层架构的变化、安全性升级后VISTA对软件、硬件和网络的兼容性发生了变化,微软没有意识到,只是在VISTA产品上市之后才做相关的兼容性测试,其结果可想而知,抱怨自然铺面而来,这是VISTA最失算的地方。 所以到了WIN 7,微软必须重启“生态系”这张牌。于是从开发WIN7第一天起,微软就布下了天罗地网来从全球范围对硬件、软件、网络进行广泛的信息收集,进行兼容性测试。在中国2000家PC卖场的数据显示,销售的相关产品超过28000种,应用软件以万计数,如此多的产品实现兼容,如何收集信息、如何去做有关的兼容测试? 这令笔者想起了坊间传闻微软招聘新员工的一道测试题:“北京市共有多少个加油站”。这个问题其实没有标准答案,考的是你通过什么样的途径来拿到需要的数据,测试的是解决问题的方法。负责硬件、软件和网络兼容测试的WIN7中国开发团队,想到的方法是与中国主要的PC卖场合作,首先把这些销售的设备中找出与PC相关的,然后又把他们中销售占据80%的主流外设筛选出来,多维度查找,希望对主流的硬件、外设一个也不能漏网掉,首先是准确收集,然后联合不同的测试伙伴一起来做相关测试,进行Windows兼容性的徽标认证。 从两年前开始,微软中国研发集团的许建志和他的伙伴们就不断出现在北京的金融街,目标是拜访中国几大商业银行的网银中心,希望与他们的合作让中国各银行的网银系统能够在WIN7上良好地运行、能够兼容。但银行的态度都是冷淡的:“我们在XP上运行就好了,没有必要和WIN7实现兼容”,但这些研发集团的小伙们必须把不可能变成可能,如果中国1.5亿的网银用户的USB KEY在WIN7上无法识别,WIN7 就不能上市。所以许建志这样的研发人员通过锲而不舍的沟通说服了银行,网银的开发人员与微软的研发人员共同找问题、一起来开发,最后让所有的网银跑在WIN7 平台上都没有了问题。 在微软中国研发集团郑瑜的重要工作是看电视,因为她的主要工作是要解决WIN7 与中国数字电视的兼容性。中国数字电视出来的时候,在VISTA的平台上,兼容性有很大的问题,要想看电视,需要把所在使用地区设为德国才能看到。所以WIN7必须把这些问题解决掉,于是郑瑜的团队与美国的研发团队一起协作开发核心代码来支持中国的数字电视。刚开始去和电视台洽谈,电视台同样不愿意合作,郑瑜他们想了很多的办法,和电视台的供应商合作,联合“敲门”,最后在WIN7 上市前把数字电视的兼容性解决掉。 软件、硬件、网络的兼容性测试与研发工作,还是一个动态的过程。2008年年初,中国的上网卡大约有50%的上网卡在Windows7上不能正常工作,于是中国微软研发集团硬件创新中心宋鸿鸣和他的团队就在这年的年初展开与运营厂商合作,测试了大概 300款上网卡,把上网卡的兼容性从50%提高到了近90%,但就在他们踌躇满志的等待发布这一天到来的时候,突然市场发生变化: 517电信日电信运营商大范围的部署上网卡,主流厂商从的6家变成31家,因为厂商数量的暴增,使得WIN 7的市场兼容性也从90%跌到60%,面对突如其来的打击,他们又想出新的办法,第一是和运营商合作,把兼容性纳入产品规范。第二是和硬件厂商合作,帮助他们开发符合Windows徽标的产品。第三个用Windows7中最新的特性为用户提供高级的用户体验,使用户从五次点击可以上网变成两次点击。 申元庆说,现在微软全球研发团队与重点的合作伙伴公司会互派研发团队共同研发解决兼容性的问题。在英特尔微软就有专门的研发小组负责推动在芯片层面针对操作系统的优化,比如如何减少电池的使用时间,如何减少开机的时间等等。 作为一个平台性操作系统,其有一个庞大的产业生态链,自下而上是CPU的芯片厂商、主板厂商、PC笔记本整机厂商、外设厂商、应用软件厂商、网络服务提供商等等。说服产业链加入你的阵营、和产业生态链同步互动开发,实现更大范围的兼容性,这其实是操作系统能否更优化的关键。但其实是一个艰难又漫长的过程,其难度不亚于卖产品,要让产业生态链认同你的理念、认同你的平台、认同你的影响力、认同你的未来市场前景,生态链才愿意把自己的产品架构在你的平台上,与你一起协同、共同开发实现最大规模的兼容性。这是协作研发的过程,某种意义上也是产业生态链的销售过程。 当9月1日微软宣布在中国市场WIN7 和92%以上的硬件和91%以上的应用软件、95%以上的网络都实现兼容的时候,这些数字的背后,是一个无法用数字描述的巨大付出。 应该说在这个企业竞争即生态链竞争的时代,就连微软这样拥有90%市场份额的企业巨头,都会因为产业生态链战略的一次“闪失”而几乎断送一个产品的命运。对于正渴望进入更大市场、更全球化市场的中国企业来说,在我们不断追求技术、性能等等核心突破的同时,是否也意识到了,中国软件产业在进行技术创新的同时,更要关注生态链、生态系的深度协同,只有这样才能更快强化中国软件产品的市场化和用户接受度,更快速地走出市场迷局。而生态系的投入和建立,需要多维度地更调度各种资源、激发更多共赢的智慧。 基于需求又引领需求的用户体验 除了兼容性大规模提升、占用资源更少、更好的易用外,这次发布的WIN 7还有一个显著的特点是,在用户的需求满足上提供了更多地区化和个性化的选择。而这些更多的选择和更多丰富的用户体验的背后,透视着微软软件开发越来全球化和市场互动化的变化。 在10月23日,WIN 7中国发布会记者问答的环节,WINDOWS平台策略全球副总裁MIKE NESH对《中国电子报》记者说,微软WINDOWS产品的产品开发将越来越把市场运作与研发结合在一起。目前WINDOWS的核心功能开发美国团队参与更多。但是据IDC的预测在2011年中国PC市场的销售量将跃居全球第一,中国市场的用户需求在未来产品需求上将会越来越多的体现,在未来微软中国研发团队将更有机会释放更大的价值。 WIN 7在用户体验上进行了很多改进。有观点说,微软与其他几个阵营的操作系统厂商相比,之所以能够一直保持市场的领先性,除了更广泛的生态链运作,同样重要的是,经过这20多年的发展,微软创造了“一个基于大众需求又不断升华需求的微软式用户体验”,正是这样一个用户体验,造就了用户与微软之间的黏性。那么微软公司有什么样的体制机制进行用户体验收集、进行用户体验改进? 张宏江介绍,微软全球化的用户体验收集有这样几个重要的渠道: OEM厂商、微软内部用户、外部用户,此外,微软自己在全球各地建立用户体验实验室进行用户体验收集,微软把客户请到试验室,观察用户点击鼠标的位置、点击先后、方式和习惯等等。另外,微软会拼出一些虚拟的功能和场景,(后端不是真正的实现)让用户来使用,把用户接受度高的功能规划到产品中,然后组织开发推进实现。 张宏江认为,在引导和制造用户体验上,有几种做法:一种是完全创造和引导式。引导用户体验是一种艺术,苹果的IPOD和IPHONE在这方面做的不错。苹果是“粉丝”文化的创造者,他只需要满足“粉丝”这部分人群需求就可以,而“粉丝”只会占市场的5%左右。另一种是微软式的基于需求又升华需求式。因为微软是大众化软件的创造者,需要满足70%甚至更多人群的需要,所以微软不能完全自己定义用户体验,微软需要捕捉大部分人的需求,并做部分超前性引领设计。 研发全球化带给中国更多的合作机会 MIKE NESH说:“在WIN 7的开发过程中,微软不断倾听来自用户和合作伙伴的声音,投入巨大的研发力量来为WINDOWS这一拥有超过10亿用户的产品带来划时代的创新功能和强大的兼容性。像WINDOWS这样用户遍布全球的项目,只能以团队的方式完成,我们感谢来自全世界用户、合作伙伴和开发者的贡献,WIN 7是众志成城的结果。” 在这次WIN 7的二十多个核心功能中,有两个核心功能由中国研发集团负责研发。在全球化、开放式和分布式的开发模式下,每一个国家和地区的研发团队都将分担和获得更多的机会。张亚勤曾在三年前说,中国研发集团未来的人员希望到达3000人,在WIN 7发布的前夕,中国研发集团的人员已经提前到达这个数量。 此外,也将有越来越多的合作伙伴会加入到微软公司的研发链条中。可以说微软不仅仅改变了原来的软件制造模式,同样也给微软生态圈带来了更多的机会。在过去,微软研发大部分的外包订单给印度,但是随着中国外包企业和外包人才的不断成长,这个机会正在不断向中国倾斜。微软每年将近100亿的研发投入中,中国有希望外包到更多,而这些外包企业的开发人员也将因为与微软全球研发人员一起的协同研发,而获得全方位的技能提升。 记者曾于去年采访了文思创新的CEO陈淑宁,他说:“因为承接了许多微软的外包业务,随着这些业务文思成长起来了一批的人才,现在文思已经拥有7000名开发人员。因为拥有这些人才,文思已经准备在原有的外包业务基础上,进军行业解决方案市场,希望未来能够拥有更大的增值和发展空间。 这次WIN 7除英文版外,微软还做了22个语言版本,这22个其他语言版本的测试工作微软进行了外包。在发包之时,微软有几个选择:印度或是中国。当文思创新获悉这一订单消息,快速招募了一个包括全球22种语言的“多国部队”,从阿拉伯语到以色列语等等,这个团队的成员都是既熟悉软件测试又非常熟悉自己国家语言的复合软件人才,当微软总部的发包人来到文思创新进行考察,推开房间看到文思创新满满一屋子坐着几十个熟悉各国语言的软件测试团队时,非常讶异。之后迅速做出了将这一项目放在中国的决定。 微软中国公司承诺每年都有一定量的外包订单交给中国,并且每年保持着两位数以上的增长,透过微软的外包订单、透过与微软研发集团的协同开发,给中国软件产业的人才带来的将是更多潜移默化的提升。文思创新的微软WIN 7项目组的负责人在一次大学生招聘会上说:“如果你们有机会到微软公司工作,我恭喜你们,如果你们进不了微软来到文思,我们欢迎你们,你们在这里也将有机会与世界一流的软件公司开发人员一起工作的机会。” 中国正在大力发展软件产业,这需要一个庞大的软件产业生态系,中国要制造出全球化的软件产品,我们需要在软件的工程技术上做更多的积淀。张宏江认为工程型、长青型的软件产业需要人才、需要机制和体制的积累,只有有了这样的土壤,中国的软件产品才能够不断满足用户的需求、适应更全球化的挑战。张宏江举了上世纪60年代和70年代中国缝纫机的例子,他说,当时中国几乎每一个省都有一个缝纫机生产厂,但大家都只愿意购买上海的相关牌子,因为上海的缝纫机质量好,即便是里弄里的企业生产出来的缝纫机也会有很好的质量保证,因为上海有那样的人才、工业基础、工业管理和流程的积累,而其他省市的缝纫机相对就差很多。做软件同样也需要积累。 中国应该抓住全球软件研发模式的的变化,从产品设计、产品开发到市场运作更多的规划,同样也可以利用的这样的机会,为自己积累更多的人才,尽快做强中国的软件产业。页:
[1]