写点什么

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:001821

评论

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

SVN和GIT命令对比

百度搜索:蓝易云

Flutter OS外接纹理适配简介

flfljh

鸿蒙

恭喜!龙蜥赛项25支队伍获得首届中国研究生操作系统开源创新大赛一二三等奖

OpenAnolis小助手

开源 操作系统 龙蜥社区 龙蜥赛事

企业数字化转型对IT治理模式的影响研究

快乐非自愿限量之名

人工智能 大数据 运维

腾讯云的相关DDoS计费问题概览

网络安全服务

DDoS 带宽 API 接口 腾讯云服务器 DDoS 攻击

NocoBase 实战教程 —— 任务管理系统

NocoBase

开源 低代码 教程 无代码

“AI”就一起来!开放原子联合龙蜥推出 OS Copilot 学习赛,show 出你的创意

OpenAnolis小助手

Linux AI 操作系统 OS Copilot

UBBF 2024,建起超宽带与AI间的博斯普鲁斯大桥

脑极体

如何在IT项目管理中实现团队协作

爱吃小舅的鱼

项目管理 IT IT项目管理

重新理解RocketMQ Commit Log存储协议

百度搜索:蓝易云

管理团队的最佳实践

爱吃小舅的鱼

管理团队

Flutter与鸿蒙三方库ohos的适配

flfljh

鸿蒙

Hume.ai 升级:自研情感模型集成 Claude 和 Fal;数字嗅觉公司 Osmo 用 AI 实现气味「传送」

声网

快递鸟预约取件API接口代码流程

快递鸟

快递

【论文速读】| PathSeeker:使用基于强化学习的越狱攻击方法探索大语言模型的安全漏洞

云起无垠

项目管理流程图解:简化复杂任务

爱吃小舅的鱼

项目管理 项目流程 项目规划

龙蜥副理事长张东:加速推进 AI+OS 深度融合,打造最 AI 的服务器操作系统

OpenAnolis小助手

开源 AI 操作系统 龙蜥操作系统大会

CompletableFuture总结和实践

百度搜索:蓝易云

开源项目管理工具如何选?9款值得一试的选择

爱吃小舅的鱼

开源项目管理工具

并发编程之同步/异步/回调/任务 工作流程分析图解

肖哥弹架构

Java 并发编程 高并发

基于 EventBridge + DashVector 打造 RAG 全链路动态语义检索能力

阿里巴巴云原生

阿里云 云原生 EventBridge

ppt目录页怎么做好看?一键切换ppt模板布局的神器来了!

职场工具箱

效率工具 职场 PPT 高效办公 AI生成PPT

研发管理与项目管理:痛点分析与建议

爱吃小舅的鱼

项目管理 研发管理 管理项目

GO语言常用标准库fmt

百度搜索:蓝易云

认识鸿蒙Context

龙儿筝

鸿蒙

Openharmony的启动流程

百度搜索:蓝易云

MySQL数据迁移到SQLServer数据库

RestCloud

MySQL 数据库 数据传输 ETL SqlServer

共建行业生态,智谱大模型生态合作伙伴联盟成立

技术研究院

cleanmymac有必要买吗?Mac清理软件哪个好用?

阿拉灯神丁

软件包 清理工具 mac系统维护 CleanMyMac X中文版

10人小公司管理指南:从沟通到绩效评估

爱吃小舅的鱼

公司管理

SpringBoot启动原理详解(图文全面总结)

江南一点雨

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