微软产品总监谈下一代Visual Studio vNext及DevOps
10月10日,微软望京办公室,InfoQ中文站对微软总部敏捷开发和Visual Studio产品线战略总监Sam Guckenheimer进行了采访。采访主要围绕以下几个话题展开:
- 微软是如何运用敏捷开发来进行微软产品研发?团队是如何组成的?团队协作是如何进行的?
- 如何提高应用生命周期管理(ALM,Application Lifecycle Management)流程的效能
- Visual Studio vNext亮点
- 如何通过Visual Studio vNext行团队协作
- Visual Studio vNext中增强的对敏捷开发的支持
- 微软与DevOps
- BUILD大会感悟
- Sam的著作《Agile Software Engineering with Microsoft Visual Studio, from Concept to Continuous Feedback》面向的读者群及主要内容
- Sam在北京Tech Ed 2011的演讲主题及介
下一代开发平台vNext通过专注于改善整个团队在开发中的工作流,从整体上加强了对软件解决方案的有效建立和后期维护的支持,主要具备以下几个特点:
- 敏捷规划工具——通过新的待办事项和任务板,提高整个团队参与的透明度。
- 轻量级需求——以一种更加自然的方式在软件过程中尽早获取和接受需求。
- 尊重利益相关人的反馈——写出真正符合利益相关人期望的代码。
- 持续测试——通过单元测试覆盖率的增强保证最终产品的质量。
- 敏捷质量保证——通过一系列方法提高代码质量:代码审阅支持,改善单元测试框架并支持新的探索性测试。
- 改善用户体验——改善的日常任务的体验。
- 开发与运营协调一致——增加业务运营与开发团队之间的联系和了解,减少修复产品缺陷所需的时间。
在提到微软与DevOps话题时Sam提到:
- 无需在生产主机上安装任何软件,仅通过PowerShell来捕捉服务器上生成的Tracelog,然后通过邮件、TFS将日志发送给开发者,开发者可直接通过BUG管理模块来打开该日志,日志可按时间查看,通过该日志,可以了解到生产服务器上发生了什么事情,还可以在不同的产品版本间保持有效隔离,同时支持回滚至特定历史版本。支持代码和SQL隔离,并且可以快速将修复增加到产品中。
- 在Visual Studio 11中,系统运维负责人可直接与TFS(TFS,Team Foundation Server)互通,运维经理负责在运营管理模块中管理产品实例,在产品Backlog中的产品实例允许开发人员直接看到相应的代码和SQL语句,由此可以形成一个闭环,从产品设计到开发再到运维,产品运行阶段问题修复后再回归到产品中。这样的一个持续的流程,正是DevOps中所提倡的。
- 在服务器端,增加了一些监控组件,这些组件可持续地对运行情况进行监控,可以看到服务的状态、来自全球各地的请求的相应时间等,同时还提供了相应的诊断机制,可以将遇到的问题与具体产品的代码行关联,在短的时间内将修复后的产品带给用户。
此外,在采访过程中Sam还提到了TFS所带来的改变:
在TFS中可以建立项目开发的知识,让团队成员间更有效的协作。项目包括了需求、Bug、程序代码、测试用例等。最显著的特点是减少浪费并让整个开发团队沟通更顺畅、提高项目的实时能见度以及完整的可追踪性等。这也是应用生命周期(ALM)的核心。
以下是其他相关信息,供参考:
- BUILD 2011大会的主题演讲和BUILD大会首日演讲(中文字幕)。
- Visual Studio vNext的相关主题、vNext路线图以及Visual Studio Team Foundation Server 2010介绍。
- 文中提到的Sam编写的书:Agile Software Engineering with Visual Studio: From Concept to Continuous Feedback, 2nd Edition
- 关于Tech Ed 2011微软技术大会:http://technet.microsoft.com/zh-cn/teched2011_community
本期视频采访会在近期发布,敬请期待。