机房360首页
当前位置:首页 » 云开发 » 微软的开发革命:从桌面到云计算

微软的开发革命:从桌面到云计算

来源:IT时代周刊 作者:Alice编辑 更新时间:2011-11-21 11:35:03

摘要:“微软生产和销售的所有软件将会被重新写到Azure平台的云中运行。”在微软首席执行官鲍尔默绘制的一张微软云计算的草图上,VisualStudio非常醒目地被单独放置在最右边。


  
  第二章生于敏捷
  
  事实上,VS2010是一个生于敏捷,用于敏捷的开发平台。
  
  敏捷是一种以人为核心、迭代、循序渐进的开发方法,自2001年提出以来,这种全新的软件开发管理模式和价值观已深入人心。如今,软件开发人员更关注如何将敏捷的概念应用到具体的开发实践中。VS2010不仅仅全面支持敏捷软件开发周期,同时,微软本身就是敏捷开发的受益者,研发团队身体力行,将敏捷开发方式融入VS2010开发过程中。微软的合作伙伴在使用这款工具进行开发时,同样将从中受益。
  
  敏捷之道
  
  在位于上海紫竹科学园区的微软中国研发大楼的办公室里,工程师抬头就能看见墙上记录着客户需求的陈列表。自VS2008起,微软开始运用敏捷开发方法,改善产品交付时间和质量问题。其中最重要的一点,就是变“瀑布式”为“迭代式”开发,这样做的好处是,可以在研发过程中根据客户需求不断改进质量。
  
  此前,微软开发一个产品,客户就要接受,其实对客户的真正需求并没有深挖掘。当客户需求开始显露出来之后,如果还是采用瀑布式开发方式,将影响整个项目的进展。微软VisualStudio商业软件部总经理兼微软亚太研发集团服务器与开发工具事业部联席总经理潘正磊告诉《IT时代周刊》,“迭代式开发则是将一个很长的产品周期,切成一个个短的迭代,每个子项目都具备集成和可运行的特征,可根据客户需求随时调整,而不会影响整个开发流程。”
  
  “敏捷是用最好的方法帮助团队完成项目,它需要和用户有非常多的交流,能帮助你的团队迅速团结一致地朝一个明确的目标行进,这才是敏捷的精髓。”潘正磊说。
  
  Visual Studio专门加入了团队开发管理平台,以帮助开发团队进行整个过程的管理。而VS2010对这一管理工具进行了强化。运用这一工具既保证了交付时间,也确保了产品质量。
  
  在VS2010的研发过程中,工程师不仅仅要写代码,更多时候要去了解客户需求。就在VS2010第二个测试版本发布后不久,中国研发团队接到客户提交的一个工具部件的问题。尽管这是一个小概率发生的问题,项目经理郭晓颖和软件开发工程师郑瑶海仍主动与这个客户联系,了解需求,并在VS2010候选版中予以解决。
  
  微软每一款产品上市前,都会先在内部进行大规模的试用,公司内部称之为“吃狗粮(DogFood)”。在VS2010正式发布前,仅内部大规模的试用就不下三次,每当一个部门结束一段开发工作之后,就会“敲锣打鼓”似的在微软发出号召:“快来试用新出炉的Visual Studio!”
  
  有一段“吃狗粮”时期,产品组发现了几个漏洞经常导致服务器性能不稳定甚至宕机,严重影响了整个开发团队的开发进度,虽然这几个问题只有在大规模使用情况下才会出现,但微软还是花费大量精力解决。“我们首先用自己的产品来进行开发,把一些潜在的问题都暴露出来,修复之后再交付给客户使用。”潘正磊说。
  
  中国团队撑起半边天
  
  2004年,当微软服务器与开发工具事业部高管来到中国,看到这里每天发生的巨大变化,以及优秀的人才储备后,决定在这里组建一支中国研发团队。“打难打的仗才能锻炼好队伍。”谢恩伟是这个团队的创办人之一,他说,“在团队建立之初,就将研发方向锁定在对微软具有战略意义,对全球用户而言至关重要的项目上。”
  
  五年间,这个团队从零开始,发展到现在已拥有近400位优秀的工程师,并成为VisualStudio这款微软著名开发工具的创造者之一。在VS2008的开发过程中,这支团队“小试牛刀”,得到了微软高层的肯定。
  
  通过几年的磨砺,微软中国开发工具研发团队积累了许多经验。在VS2010开发过程中,这个团队发挥了主要作用,主持了多个重要模块的开发,并承担了更多核心的开发任务。比如在并行开发工具的研发中,特别是调试和性能分析等领域,都起到了主导作用。
  
  还有许多工程师创造性地创建了很多工具,使整个开发流程更简单高效。
  
  为了提高小组的工作效率,商业软件小组的软件开发工程师胡世超和实验室经理刘擎利用两个多月业余时间,为他们的小组编写了一套系统,每天能自动创建十多个虚拟环境,以减少每天开发人员装载最新版Visual Studio的时间,很快这套虚拟化系统得到中、美国团队的认可,并逐步推广开来。
  
  中国团队还发现,一些“老”的开发语言的反弹,譬如C++的反弹得益于移动应用和游戏开发等一些领域,在国内依然有20.8%的市场占有率。因此,中国研发团队专门投入了资源,将C++融入到VS2010中。对于很多中国开发人员来说,在对项目进行编译时,都会发现新版本的效率有显著提高。
  
  “马可波罗”与“丝绸之路”
  
  敏捷开发的核心管理理念是强调沟通交流和协作。虽然是简单的一句话,但实施起来,特别是对于像VS2010这样一个跨国协作项目,却是一个艰难的过程。
  
  最大的障碍来自时差和文化上的差异,由此可能使一件很简单的事情最后变成一场“灾难”。“一封邮件要等一个晚上才能得到回复,如果碰巧有理解错误,得再发一封信过去解释,一个问题来来回回要几天才能解决。”一位开发人员说。
  
  时差问题较容易解决,只要确定一个双方都能接受的固定时间段就可以做到。但是,跨地区团队之间的高效沟通和相互信任不是一两个月就能做到的。因此,微软内部的“马可波罗”与“丝绸之路”计划开始了。与这两个举世闻名的历史典故一样,中美两边相互派出成员进行为期3-6个月的互访交流,因为相识相知,后来即使在异地沟通交流过程中,冰冷的电子邮件也变得感性有趣,促进了沟通效率。
  
  Sean是美方一位高级开发主管,申请来上海团队参加“马可波罗”计划,主要工作是指导一个6人小组在4周内完成公共语言运行时一个极富挑战性的项目。这个小组成员虽然技术能力很强,但开发经验与团队协调能力欠缺,这可是Sean的强项。在她的带领下,小组按时完成了这个让美国团队都认为不可能的任务。小组成员郭晓颖利用她的“丝绸之路”,为美国团队做了一次专题讲座。据她说,当时会议室都挤满了人,美国同事第一次领悟了过去从未意识到的中美差异,解开了种种疑团。
  
  “马可波罗”项目还获得了额外的收获:越来越多的外国同事在项目结束后依然留在中国,继续带领和指导年轻的团队开发产品。
  
  “有了项目管理工具,并不等于取代了管理者的重要性。”潘正磊说,“因为每个目标都需要团队的认可,让他们能够全心全意地、目标一致地前进,这种精神、这种力量,不是说哪个工具可以帮你做到的,起主导作用的仍然是管理者。”

本文地址:http://www.jifang360.com/news/20111121/n073231635.html 网友评论: 阅读次数:
版权声明:凡本站原创文章,未经授权,禁止转载,否则追究法律责任。
相关评论
正在加载评论列表...
评论表单加载中...
  • 我要分享
更多
推荐图片