投入Office 365研发至今有将近3年时间,微软将史上最成功的Office软件推向云端,变身为云服务提供商,其间遇到的压力和挑战,参与Office 365企业版全球研发的微软亚太研发集团Office商用软件事业部(以下简称MODC)的研发工程师们深有体会。微软如何从传统软件开发转向云开发?中国研发团队如何从为总部“打工”发展到有能力独立承担核心开发任务,从而进入全球商务软件创新的核心?Office 365的研发如何促进了微软的核心在云端时代的聚变?在这里,位于中国的微软研发团队将与大家分享Office 365的研发历程。
向云端转型:在真实环境中打拼
2010年3月,微软全球CEO鲍尔默发表了“We Are All In”的演讲,揭开了微软全线产品向云计算转型的序幕。也就是从那一年开始,历史上最成功、也被业界喻为“最保守”的微软Office软件开始了向云转型的研发历程。
据微软亚太研发集团Office商用软件事业部的多位工程师回忆,2010年的时候,中国的产业界才刚刚开始谈论云计算,而微软则面临着把史上最成功的Office软件全面向云端转型的巨大挑战,“我们就是在真实环境中打拼、一点一点摸索”,微软Office商用软件事业部SharePoint Online团队资深工程师毛永刚回忆道。
对于传统的SharePoint、Exchange、Lync,当在企业内部部署时,终端用户数量顶多是百万量级,但当Office 365以公有云的形式为全球企业提供服务,其终端用户数量骤增至千万量级以上。当一个平台扩展到如此庞大的规模时,平台的系统架构、底层设计、接口调用等都将完全不同,所遇到的问题将会是***,甚至是测试环境下永远都无法发现的。
以SharePoint中国研发团队为例,在传统Office的版本中,真正涉云组件还只是极少数, SharePoint中国研发团队从零开始,用了将近两年半的时间,创建了SharePoint Online全球云数据中心的健康监测、故障处理和大数据分析/报告管理平台,并成功交付给位于美国的全球运营中心使用。
三大挑战看如何云端聚变
微软亚太研发集团Office商用软件事业部Lync Online、Exchange Online及SharePoint Online的工程师们总结,在向云转型的过程中,克服了三大挑战,实现云端聚变。
一,从技术角度。因平台规模扩大带来的扩展性问题***,微软的研发团队必须通过引入新技术来解决难题。Office的研发工程师们通过向微软内部其它的部门取经,以及与微软研究院合作等方式,实现了向云端转型过程。比如不断与微软研究院、Bing及SQL Server等产品的研发团队交流,采用微软搜索引擎Bing的分布式数据处理架构作为云服务的基础等等。
二,从软件工程角度。之前,Office重大版本的发布以三年为一周期,而在Office 365时代,则缩短至一年,有的组件版本发布周期更缩短至几个月,整个产品开发模式面临着变革。由于开发周期的大幅缩短,使得微软的软件开发更趋向互联网软件的开发模式:从传统的瀑布式开发模式走向敏捷开发,云服务的研发里程碑以月为单位计算。而在产品规划的过程中,也引进了社交网络,近距离倾听用户的需求,把用户纳入到产品规划中,面对客户的新需求,及时反馈、快速开发和交付。
三,从客户沟通及客户体验角度。云服务体验意味着实时、快速的响应,面对任何突发事件都要能快速应对,若出现故障或发现潜在隐患,需要能快速追踪到问题所属产品模块,定位到相关技术负责人。也正因为此,Office 365的任何一个产品研发团队都要分配相关工程师随时待命任务(On Call),以应对重大故障处理。微软亚太研发集团Office商用软件事业部的Lync Online、Exchange Online及SharePoint Online团队每周都轮岗工程师,24小时待命,保障Office 365全球的服务质量。
为了增强与最终用户的互动,Office 365中国研发团队专门成了一个“Customer Insight”跨团队虚拟协作小组,目的是为了确保Office365在云和端的用户体验一致,这也从深层次上体现了云端聚变的核心:以用户为中心。
走进全球创新核心
微软亚太研发集团Office商务软件部大中华区总经理陈正弘表示:“中国研发团队从前过去协助微软总部团队开发某些功能模块,现在则有能力承担Office的核心部件的研发,成为所在领域内的全球领先团队,并开始影响微软全球研发方向。这意味着中国团队无论从执行力、创造力还是所担负的历史使命角度看,都与美国同行比肩并进。”
基于对混合云管理需求的深刻理解,Exchange Online中国研发团队开发的EAC(Exchange控制管理平台)可同时管理传统企业版和Exchange Online服务,在一个界面中,就可以实现跨公有云和私有云。基于微软在企业级市场的多年积累和其企业级产品与服务成熟度的大幅提升,Lync Online中国研发团队为云数据中心管理员提供了从规划、部署、配置管理到License使用状况管理、报表呈现统计结果的整个生命周期管理。SharePoint中国研发团队则从健康监测、故障处理和大数据分析/报告平台三个方面,打造出SharePoint Online健康、稳定、快速、安全的运营所必须的后台管理平台,支撑着全球成百上千万的终端用户的企业级应用。在“端”方而,Lync中国研发团队提供了对Windows以及MacOS、iOS、Android等非Windows平台的语音和视频的支持,真正实现了随时、随地、随心通,无论是何种网络状况,都能很好地实现语音、视频、应用程序的共享。
在几年前,中国的微软研发团队还处于为美国研发团队“打工”的状态。当开始Office 365研发时,中国研发团队分别独立承担了全球核心主题中的部分主题,从最初的架构设计到开发、测试,都由中国团队全权负责,真正进入全球商务软件创新的核心。在微软亚太研发集团Office商务软件部工作了接近8年的Exchange Online团队资深工程师任齐,对此尤感自豪。
在微软的第二次创业
从2003年在中国成立微软工程院开始,到2006年成立微软中国研发集团,再到2010年升级为微软亚太研发集团,微软的中国研发团队经历了一个“在微软创业”的过程。
那时微软的中国工程师浑身散发着创业企业的活力和创新力,在与微软总部的沟通与合作中,不断争取更多的项目,同时因为出色的项目执行力和创新能力获得更多信任,从而逐步承担更多核心项目。例如,Exchange Online中国研发团队开发的EAC(Exchange控制管理平台)的架构,不仅是Exchange Online的核心功能,更受到微软全球多个研发团队认可,直接被用以替代不同产品的原有架构。
今天,随着Office 365的全面交付,微软的中国工程师们又再次走上了“创业”之路。“云服务的开发,需要每天像创业公司一样,不断思考客户的需求,向客户进行调研,快速向产品转化,快速向客户交付,再快速开启新一轮规划,因此每天都充满了创新的活力。” 微软Office商用软件事业部Lync Online团队资深工程师张骏峰道出了云时代的新微软之魂。
随着Office 365企业版的发布,微软已经成功完成了向云转型的***步,而全球云计算产业还在刚刚起步中。微软亚太研发集团主席张亚勤曾表示,微软拥有创新的耐力。在未来的微软云图中,微软的中国研发团队将扮演更为重要的角色,把创业及创新精神,不断融入到微软全球创新及研发体系中,使中国成为全球创新的核心。
附录:更多花絮
如何更加实时、快速?
在美国总部有Office 365的运营控制中心,矗立着我们经常看到的一排排显示屏,或摆在桌面上、或悬在半空中、或挂在墙上,所有的屏幕上都是各种统计图、统计报表和系统状态评估数据,像仪表盘一样,中心管理人员就通过这些“仪表盘“来监控Office 365云服务的健康状况,及时发现和解决问题。
其中SharePoint的健康监测、故障处理和大数据分析/报告都是由SharePoint Online中国研发团队开发,需要通过对底层数据、用户反馈等各类数据进行抓取分析,在最快的时间内追踪系统问题所属产品模块,并定位到相关产品开发的负责人,以确保SharePoint的健康、稳定、快速、安全地运营。
这就意味着除了Office 365运营控制中心的工作人员都要实时在线之外,所有的产品研发部门,都要留人随时待命(on call),也就是说这些产品开发工程师除了要承担自己产品的开发任务,还要轮流值班,承担7X24小时的on call任务。
新技术学习量剧增
SharePoint Online中国研发团队在架构其大数据分析平台时,因传统的数据处理方式完全不足以支撑如此大的平台规模,而必须引进新技术来解决该难题。在不断探讨之后,他们决定采用微软搜索引擎Bing的分布式数据处理架构,并因此需要与微软亚洲研究院(MSRA)、Bing、SQL Server乃至Yammer团队进行多轮深入的技术探讨,其间遇到的问题,甚至是其他这些团队也从未见过的,他们在一起共同攻关这些前沿技术难题。例如,利用MSRA的计算模型后,从底层抓取数据,寻找故障源,所花费的时间从原来的7、8个小时缩减至半个小时。
这不仅考验了微软内部团队协作与技术共享机制,也意味着工程师们学习新技术的速度和数量都必须要远远超过从前。在考验研发人员个人综合能力和素质的同时,也是对微软全球研发管理机制和文化氛围的挑战。
中国团队承担全球核心开发任务
Exchange Online中国研发团队所承担的EAC平台开发,是Exchange全球8大核心主题之一——易管理性(Manageability),所有该主题相关的架构、设计、开发、测试任务都是由该团队独立完成,最终体现到EAC平台。该平台同时用来管理Exchange 企业版和Exchange Online服务,两个平台,同一套架构,一方面传承了Exchange企业版的强大功能优势,并进一步提升,另一方面兼顾了在线服务的轻量级优势,两个平台的管理员可合而为一,在私有云和公有云之间平滑切换,高效地实现混合云管理,大大降低了IT管理的复杂度和作量。目前,EAC的架构已被被全球多个研发团队认可,直接拿去使用以替代自己原有的架构。例如Office 365全球管理平台开发团队计划在下一个版本中使用这套架构,同时其Reporting Service模块的架构,也被其他团队相中并决定使用。
SharePoint Online中国研发团队所承担的全球核心主题名为Service always available,同样,所有该主题相关的架构、设计、开发、测试等任务也都由该团队全权负责。由于该平台在此次Office 365中的出色表现,在下一个版本的Office 365中,MODC将承担整个Office 365运维管理平台的开发。