Welcome to TechNet Blogs Sign in | Join | Help

Visual Studio Team System 2010 Architecture: 前言

目前为止,你已经可以获取VSTS 2010 CTP的版本。而在今后的几个月中你很快可以获得VSTS2010Beta版本。这里,我们将有一系列文章来介绍VSTS Architecture版本的相关内容,以及在将来的RTM版本中我们将做哪些改进。

 

首先,我们来讨论一下我们产品的结构,每个组件的功能,以及这个产品所能提供的解决放案。

 

下面这张图是该产品的主要功能划分。这里将功能划分为三块:

  1. 理解现有代码
  2. 明确结构设计
  3. 团队合作

 

理解现有代码

我们产品的目标之一就是就是帮助你理解现有的代码。因为只有理解了它,你才能够正确地使用。在实际的工作中,我们经常会碰到这样的问题,只有了解现有代码能够做什么,我们才能开展后续的工作。

 

我们产品中有很多功能用来帮助理解现有或者遗留下来的代码。这里罗列了主要的三个:

  • Architecture Explorer

 

这个组件曾在TechEd 08Bill Gates keynote中展示过。这个组件能够为你的Visual Studio解决方案和工程提供可视化结构图,让你更方便地浏览,并回答一些你可能会问的问题:这个类是如何依赖其他类的?这个程序集引用了哪些其他程序集?这个方法中有多少行代码?等等。

  • 标准图表

 

2010 CTP中,你会在”Analyze”菜单项中看到3个选项,在Architecture Explorer窗口里,也有对应一致的选项:

 

”Analyze”菜单中: 

Architecture Explorer工具栏中: 

 

选取任何一个选项都会生成程序集,名字空间或者类之间的依赖关系图。我们希望在RTM的时候会有更多选项。 

  • 时序图(Sequence Diagram)的反向工程

当你在代码中右键点击方法中的任意位置,在右键菜单中选择”Generate Sequence Diagram…”,你会发现一个生成好的时序图已经展现在你面前。这里有一个PDC talk视频,在40分钟左右的时候演示了如何使用这个功能。 

 

明确结构设计

我们常常需要设计和描述软件的构架应该是什么样子的,为某一个特定问题定义名称来描述它,然后让小组内的其它成员也能接受并理解它。这也是VSTS 2010 Architecture致力于解决的问题之一。为了这个问题,我们不断地完善支持UML的模型,也为此改进了我们的DSL工具。

 

VSTS 2010中,我们将发布5UML图表:

  • 类图Class Diagram(我们称之为逻辑类图 Logical Class Diagram

 

  • 用例图Use Case Diagram

 

  • 时序图Sequence Diagram

 

  • 活动图Activity Diagram

 

  • 组件图Component Diagram

 

 

我们将在以后的博文中介绍这些图表。如果你想先睹为快,Mark Groves这里有一段演示视频。

 

值得一提的是,RTM以后我们将通过PowerTools或者其他方法发布更多的图表。

 

DSL工具是支持我们产品中很多功能的关键技术。比如,我们所有的UML图表都是通过DSL工具来建立,并运行在DSL运行库之上的。我们认识到DSL工具对我们来说是如此重要,所以我们重组了我们的开发小组,现在,开发DSL工具的开发人员已经成为我们的一部分!我们相信,这样的重组无论对我们开发小组还是对用户来说都是有益的。Stuart KentDSL工具开发的领导之一,已经在他的博客中描述了DSL工具最新的功能。

 

团队合作

最后,我们希望建模的结果能够成为整个软件开发周期中重要的一部分。这里,我们提供了多种方法可以让模型和Team Foundation Server以及Visual Studio自身进行交互。

 

2010 Architecture是和Visual Studio高度整合的。这样的整合不仅体现在所有的图表和功能都在Visual Studio内核中,我们还在Visual Studio中添加了全新的工程种类,称为Modeling Project,我们提供的UML图表和其他相关资源,比如通过Architecture Explorer创建的dgml文件,都将能够通过该工程添加。 

 

 

与其他工程一样,Modeling Project也支持版本控制。

 

同样,你也会发现新引入的工具窗口,现在称为UML Model Explorer,它是用来展示你创建的各种Modeling Project中模型元素之间的逻辑关系。

 

另外,我们之前所说的与Team Foundation Server进行交互并不仅限于版本控制。我们还支持一种名为Architectural Validation的功能,它可以作为编译和checkin流程的重要部分。在这个PDC视频30分钟的位置,Cameron介绍了这个部分。 

整合部分也包含了跟踪TFS中工作项的功能。可惜这个功能没有包含在2010 CTP中,不过我们会在以后的博文中介绍这个功能。概括来说,我们将允许模型中任意一个模型元素和某个工作项绑定,让你直观地了解某个模型是为哪个需求,或者测试用例定义的。

 

总结

这篇博文可以作为一个目录。我们希望将在以后的文章中详细讨论今天提到的各个部分。 

 

注:本文翻译自Cameron Skinner的博文: Visual Studio Team System 2010 Architecture: Prologue

Published Tuesday, April 28, 2009 2:55 PM by TeamArchChina
Filed under:

Comments

# Visual Studio Team System 2010 Architecture???????????? | Coded Style

Anonymous comments are disabled
 
Page view tracker