连接开发和运营

[原文发表地址] Connecting Development and Operations

[原文发表时间]   17 May 2011 12:04 PM

 

在过去的一年左右的时间里,我一直在讲关于软件发展趋势的话题尤其是关于ALM(译者注:Application Lifecycle Management)的。 我把开发和运营之间需要更好的合作描述为即将到来的大趋势之一。即使现有的技术,这种合作的状态仍不是很好。然而,随着云架构越来越普及,以及采用短的发布周期来保持“最新”的需求不断增强,对开发和运营团队紧密合作的需求不断增强。在一些机构中,我们甚至将会看到二者之间界限更为模糊。最近有许多关于一个新的角色- DevOps(译者注:该词为development和operation二词的词首缩写)的讨论。

 

 VS ALM一直都是关注于把参与软件生命周期里的人联系起来。当发布VS2010及推出一系列新的测试工具的时候,我们讨论了许多关于开发和测试之间的真空---缺乏一致的工具、机构设置上的障碍、糟糕的沟通、大量浪费的时间,精力以及挫折。发布的VS2010的支柱之一就是解决这个问题。

 

  在下一个VS版本中,我们将解决利益相关者(Stake holder)与开发团队的合作问题。你可以在这里阅读更多我们关于此问题的声明:https://blogs.msdn.com/b/jasonz/archive/2011/05/16/announcing-alm-roadmap-in-visual-studio-vnext-at-teched.aspx。接下来的几周,我将写更多与此相关的文章。

 

 我一直在讲述运营<->开发团队之间的协作问题将会在Visual Studio V.NextNext里得到解决。关于那将会成为什么样子,我曾经和System Center产品团队有过几次谈话,但这进行的相当低调,因为我们仍然一直是专注于我们的当前开发中的产品。然而,令我吃惊的是,大约一个月以前,我被System Center产品团队邀请去参加了一个演示,该演示展示了System Center与TFS的互联。我非常兴奋,痴迷于整个演示。。昨天Jason在TechEd宣布了这项新技术的一个CTP版本。我担心,其中没有准确说明的是:这不是VS V.Next的一个功能。该功能如今已经可以用于TFS2010 了! 目前这只是CTP版本,虽然我们还有一些工作来完善它 --–但是这已经是一个可以使用的解决方法了。我还不知道最终的发行计划是怎样的,当我们有更多信息后,我会向大家透露更多内容。

 

 关于它是如何工作的,让我来扩展一下,(超出我之前在白皮书上提到的内容):

 

 首先,SCOM-TFS Connector是在你的SCOM Root Management Server (RMS)上运行的一套服务,这些服务负责在System Center与TFS之间进行数据同步。它使运营团队像往常那样在Operations Manager里工作,同时能够轻松的和开发团队进行合作。让我们来看这样一个场景….

 

  一个操作员得到了生产环境中的一个操作问题的警报,然后打开Operations Manager来复查这个警报

 

image

 

操作工程师复查与这个警报相关的知识库并看到这类特定的问题不能由配置来解决而是需要升级到开发团队去解决。

 

image

 

操作员可以右键点击这个警报并把状态设置为“Assigned to Engineering”(是的,请忽略, 这在截图中的菜单中缺失了--如果你安装了连接器它就会在那儿。很抱歉,使用了这样不完全的截图)。

 

image

 

 System Center的每一个警报都与一些部署的组件相联系。当你设置连接器时,你就把每一个组件匹配到了一个TFS工程。连接器将会注意到System Center中的状态变化,并且会自动地无纰漏地在相关连的TFS团队工程里创建一个新的工作项(work item)。这个新的工作项将会为“Operational Issue”类型(它将会被添加至每一个映射至系统中心组件的团队工程的过程模版中)。Operational Issue捕获所有来自System Center警报的信息,并实现了一个简化的操作流程。

 

  如今,那个新的Operational Issue将会神奇地出现在你的开发环境的TFS工程里。你可以查询它们,指派它们任务等,就像你在TFS处理其它的工作项一样。此外,你还可以由工作项里的链接,直接定位到储存在System Center里的信息。

 

image

 

最终,使用中的问题(operational issue)将有可能以下面三种之一的方式来处理:

 

1. 开发人员诊断警报,并向运行团队推荐一个解决方法。他/她只需在TFS的operations issue中添加正确的解决办法步骤就可以了,然后TFS-SCOM连接器会自动拾取这些信息并把它们复制到System Center警报中,以便让操作者看到并采取行动。

2. 开发人员可以创建一个新的Bug并把它与operations issue关联起来。接下来这个Bug被确定优先级,然后安排在团队认为合适的时候进行处理。。

3. 开发人员可以忽略这个问题,关闭掉这个issue就可以了—--好吧,你的运行团队将会指责你,但是你确实可以这么做J

看到这个由TFS-SCOM connector所能解决的这个非常重要的场景,我真的很兴奋。这是把开发和运营团队联系起来以使他们能够构建、部署及运行一流的服务,的漫旅程中第一步。

 

如果你有机会,请尝试一下这个工具,让我知道你是怎么想的。

 

Brian