BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Visual Studio研发过程中的敏捷实践

| 作者 霍泰稳 关注 1 他的粉丝 发布于 2009年12月18日. 估计阅读时间: 3 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

潘正磊是微软Visual Studio Business Applications团队的总经理,也是微软中国研发集团服务器与开发工具事业部开发工具的总经理。1992年加盟微软后,她一步步从程序员成长为微软全球2000多名总经理中为数不多的华人之一。近日InfoQ有幸就Visual Studio研发过程中敏捷相关的话题独家专访了潘正磊,本文是采访的摘录。

在Visual Studio产品的研发过程中,微软研发团队很好地应用了敏捷,那么在从传统的开发方法到敏捷的转型过程中,微软经历了一个什么过程?作为Visual Studio整个研发过程的亲历者,潘正磊提到这也是一种“被迫的”结果。很多.NET领域的开发人员都比较清楚,Visual Studio 2005产品比预期发布的时间延迟了近一年的时间,另外产品还存在各种各样的质量问题,一发布就开始不停地进行打补丁。按照潘正磊的话说,她认为Visual Studio 2005是一个比较失败的产品。经历了2005版的挫折之后,痛定思痛,研发方面负责人对下一代产品提出两个新的要求:高质量、准时交付。整个研发团队也进行了一次大的转型,开始采用敏捷,其直接导致的结果就是Visual Studio 2008从CTP(社区预览版)开始,用户反馈就非常好。

具体而言,和以前动辄对整个产品推翻重来不同的是,Visual Studio 2008研发时采取了在保持核心内容不变的同时,提供新的功能。对Visual Studio整个产品体系来说,CLR相当于地基,.NET Framework相当于钢筋结构,而Visual Studio就是这个大楼,三个方面联系在一起,如果同时对这三个均做修改,那么要完成这个建筑是非常困难的。于是研发团队确保对CLR做最少的改动,对.NET Framework做小幅度的延伸,地基和结构稳定之后,不断从社区收集对产品的期望和反馈,然后生成原型文件。然后明确用户的真正需求,通过多次迭代逐渐完善产品。其结果就是原计划9月份发行的Visual Studio 2008,10月份就上市了,比2005版有了很大的进步。

对于Visual Studio这样的大型项目,如何去控制它的进度?工具在里面起到什么样的作用?对于这个问题,潘正磊结合开发过程中对Team Foundation Server的应用进行了阐述。TFS可以自动产生一些报表,显示哪些功能已经完成,哪些功能还需要继续测试,以及测试的覆盖率是多少,还需要增加哪些应用场景等,不同级别的人员可以看到不同的视图。另外,不论团队大小,都会有很多的约定存在,这些约定如果只是让工程师记住的话,是比较困难的,这时工具的作用就显现出来了。比如在研发过程中,我们曾经实现过这么一个工具,作为工程师,在将你的代码嵌入之前,你需要经过六七个不同的步骤,每一个步骤都会告诉你注意什么。这样做的好处就是可以保证所嵌入的代码比较完善,不会出现解决了一个Bug,却有更多Bug出现的情况。不过潘正磊也强调,工具虽然重要,但其起到的也只是一个辅助的作用,最关键的还是使用它们的人!

InfoQ中文站近期会发布本次采访的完整视频,敬请期待。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

TFS用着不是很“敏捷” by han isaac

在最近的项目里刚刚用过TFS,很不方便,修改文件还要遵守checkout-modify-checkin的流程。不知道MS内部是如何应用TFS的?

整个文章其实就一句话 by Wu Junyin

VS2008采用的敏捷式开发,按时按质完成的。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

2 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT