写点什么

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

  • 2009-12-17
  • 本文字数:1185 字

    阅读完需:约 4 分钟

潘正磊是微软 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 中文站近期会发布本次采访的完整视频,敬请期待。

2009-12-17 02:001956

评论

发布
暂无评论
发现更多内容

Git遇到冲突?解决也太简单了!

Jackpop

如何告别丑陋判空?一个Optional类就能搞定!

风铃架构日知录

Java 程序员 程序人生 后端 码农

使用 OpenAI ChatGPT 进行了编码尝试

devpoint

人工智能 openai ChatGPT

Flutter Hero 动画组件的飞行过程显示控制

岛上码农

flutter ios 安卓 移动端开发 跨平台开发

性能测试技术笔记(三):如何设计一个压测平台

老张

性能测试 压测平台

Apipost接口自动化测试功能详解

测试人生路

Postman 自动化测试 接口自动化测试

Smart Finance成为火必投票竞选项目,参与投票获海量奖励

鳄鱼视界

高并发系统设计的15个锦囊

小小怪下士

Java 程序员 系统设计 高并发

8 个很酷的 GitHub 技巧

devpoint

GitHub vscode 开发技巧

一加11:新的赛场,“不温和”的答卷

脑极体

CMD有哪些有趣的命令?

Jackpop

EditText(输入框)详解

芯动大师

android edittext 输入框设计 文本框(TextView)

推动GameFi走向新叙事的Smart Finance,成为火必投票竞选项目

股市老人

如何让你的架构设计应用做到高内聚、低耦合?

风铃架构日知录

Java 程序人生 后端 架构设计 后端开发

好家伙!阿里最新SpringBoot进阶笔记涵盖了SpringBoot所有骚操作

程序员小毕

程序员 后端 ssm springboot java面试

Java学习者看过来!这些优质项目千万别错过

Jackpop

如何使用Gradle构建一个多模块项目?

风铃架构日知录

Java 程序员 后端 码农 架构师

分享 7 个不错的 AI 工具

devpoint

人工智能 AI openai

数字人民币创新浪潮来袭,支付机构如何“乘风破浪”?

易观分析

金融 数字人民币 数字支付

你知道微服务架构中的“发件箱模式”吗

JAVA旭阳

Java 架构

创作技术博客以来的一些成就

嵌入式视觉

知乎 博客 CSDN 博客园

Github上有什么好的unity开源项目?

Jackpop

干掉 “重复代码”,这三种方式绝了!

风铃架构日知录

Java 程序员 码农 工程师 代码

Portraiture4人像智能磨皮插件下载亲测可用

茶色酒

Portraiture2023 Portraiture

2023-01-06:给定一个只由小写字母组成的字符串str,长度为N, 给定一个只由0、1组成的数组arr,长度为N, arr[i] == 0表示str中i位置的字符不许修改, arr[i] ==

福大大架构师每日一题

算法 rust Solidity 福大大

分享 7 个VUE项目用得上的JavaScript库

devpoint

JavaScript Vue 前端开发 前端开发框架

Apipost——让前端、后端、测试共用一份API文档!

不想敲代码

连续四年发布科技趋势预测,他们在探索中国科技的“主干道”

脑极体

Python专属搜索引擎!又一款Python库学习神器?

Jackpop

8.3K Star!这才是我们苦苦寻找的PDF阅读器。。。

Jackpop

Visual Studio研发过程中的敏捷实践_研发效能_霍太稳@极客邦科技_InfoQ精选文章