Visual Studio Team System简介
Visual Studio Team System简介
一.VSTS概念
1.什么是Visual Studio Team System?
“Visual Studio Team System 是一套高生产力的、集成的、可扩展的生命周期开发工具,它扩展了Visual Studio 产品线,增强了软件开发团队中的沟通与协作。利用Visual Studio Team System,开发团队能够在开发过程的早期以及在整个开发过程中确保更高的可预见性和更好的质量。
Visual Studio Team System 还包含了微软解决方案框架(Microsoft Solution Framework),MSF提供了一套经过长期考验的软件开发过程,能够帮助开发团体交付企业级解决方案。”
在MSDN的VSTS主页上有更为详细的介绍:http://msdn.microsoft.com/vstudio/teamsystem/default.aspx
VSTS的用户覆盖在整个软件开发生命周期中(Software Development Life Cycle - SDLC),为软件开发项目流程中不同角色的人员提供相应的工具,并且最重要的是将这些工具很好地整合在一起。
所谓可扩展性就是它提供了一套标准的开发接口,任何开发商都可以基于该接口开发出第三方的组件,从而使该工具更加丰富,灵活而强大,实际上在VS2005发布后就有很多ISV(独立软件供应商)发布了他们的基于2005的插件。
2. 什么是MSF
Visual Studio Team System包含了微软解决方案框架(MSF),Microsoft® 解决方案框架 (MSF) 是一种成熟的、系统的技术项目方法,它基于一套制定好的原理、模型、准则、概念、指南,以及来自 Microsoft 的、经过检验的做法。
MSF的定义并不是一套项目管理的步骤, MSF所提供的是一套指导性的原理、模型、准则、概念等,比如MSF核心有八个基础原理,他们是:
• |
推动开放式沟通; |
• |
为共同的前景工作; |
• |
赋予小组成员权利; |
• |
建立清晰的责任和共同的职责; |
• |
关注交付业务价值; |
• |
保存灵巧,预测变化; |
• |
质量投资; |
• |
学习所有的经验; |
这些基本原理是MSF的核心,它们贯穿于项目开发过程中的各个方面。
MSF的准则包括项目管理准则、风险管理准则和就绪管理准则。这些准则对于 MSF 小组和过程模型的良好运作十分重要。它们起源不在 MSF 之内;它们在行业内部得到了很好的检验,并有全面的知识体系来支持。MSF 具有与基础原理和模型相配套的特定准则,并在需要的时候用它们对框架的其他元素进行补充。总之,MSF 并没有尝试去完全重建这些准则,而是去突出在被应用到 MSF 环境里的时候它们是如何去适应的。
MSF 的远景目标是为软件专业人员提供由软件专业人员开发的高效、集成和可扩展的流程指导。
高效:MSF 的一个关键远景目标是提高人们的工作效率。MSF 的流线型和自定义的流程指导表示,提供对高效性的支持。利用清单和指导(而不是详细的内容),用户可以迅速确定完成一项任务或活动的需求。
集成:通过整套工具的无缝集成、以及帮助和 MSF 内容的集成,在工具内即可提供解决方案和指导。所有这些元素均可轻松地在 MSDN 及整个工具集的所有方面进行更新。可以对内容本身进行组织,以实现轻松维护
可扩展:流程指导和帮助在 MSF 内是完全自定义的。用户可以选择一个灵活或正式的方法,整合基于方案的开发,并通过内容确定他们自己的路径。
MSF 指导关注的是对“人与流程”的管理。因为软件开发小组的需要和做法在不断发展,所以收集到 MSF 中的材料也同步进行不断地更改和扩展。另外,MSF 与 Microsoft Operations Framework (MOF) 相互配合,从而为操作环境提供平稳过渡,这是长期项目成功的要求。
VSTS中为用户提供了两套过程模板(Process Template),在这里我还是给出它的英文名称,请原谅我,因为我实在找不出合适的中文名称来翻译这两个模板,不过我相信读者都能够明白他们字面上的意思。
MSF for Agile Software Development
MSF for CMMI Process Improvement
这两个模板包括了工作项类型的定义以及状态转换流程、源码控制的策略、安全设置、项目站点的内容、预定义的报告等等,也许你现在并不理解他们的含义,后面我们会有一章专门介绍所有这些内容。你只要知道这两个模板定义了很多项目开发中要用到的元素,并且你可以完全自己定制这些元素,使得它们适合用户自己的项目。其中Agile模板适于小型团队的开发,比较轻巧,简单。CMMI模板则是一套比较完全而复杂的模板,其中提供了满足SEI CMMI三级的基本要求的敏捷开发模式。
除此以外,VSTS中还有很详细的帮助文档,介绍每一种过程模板的开发流程。
3.VSTS 功能和组成
![.](https://www.cnblogs.com/kenly33/admin/art/Worksoft_VSTS_01.jpg)
图 1.1
如图1.1所示,VSTS是以角色为基础的,包含项目开发中的各类角色成员:
• |
项目经理(Project Manager) |
• |
软件架构师(Software Architect) |
• |
开发工程师(Software Developer) |
• |
测试工程师(Software Tester) |
• |
解决方案构架师(Team Foundation Server) |
各类角色成员通过使用VSTS而在项目开发过程中紧密地结合起来,及时有效的完成角色的任务。
Product Suites:
• |
VS2005 Team Edition for Software Architects |
• |
VS2005 Team Edition for Software Developers |
• |
VS2005 Team Edition for Software Testers |
• |
VS2005 Team Foundation Server |
• |
VS2005 Team Test Load Agent |
• |
VS2005 Team Suite |
Team Suite 是VSTS的组成部分,它为核心软件开发团队中的每个角色成员提供了相应的工具,比如软件设计,开发和测试,以及团队沟通和管理方面,是成员之间形成自由,无缝的连接。通过和Visual Studio Team Foundation Server的整合使用,, Team Suite帮助项目管理者更好的控制产品在软件生命周期中的每个环节。
![.](https://www.cnblogs.com/kenly33/admin/art/Worksoft_VSTS_02.jpg)
图1.2
图1.2说明了VSTS的产品功能,在软件研发团队中的作用以及和各角色之间的关系。其中VSTS的一个重要组成部分就是Team Foundation。他基于TFS(Team Foundation Server),是团队协作的基础。
二.VSTF相关概念
1.Visual Studio Team Foundation的组成:
• |
Team Foundation Server |
• |
Team Foundation Client |
其中,TFS是服务器端,基于SQL Server2005的支持,它由Application Tier—AT,Data Tier—DT,Team Foundation Build,Team Foundation Server Proxy组成。在TFS端有Dual – server和Single – server的概念,对于Dual – server,即AT和DT分别安装在两台独立运行的服务器上,分别完成各自的功能;Single – server,即AT, DT安装在同一台服务器上。 所有项目涉及到需要管理的数据都保存在TFS上,无论是Work Items , Source control , Build , Documents还是Reporting,它们的存取都是通过对TFS的访问来实现的。
TFC被称作客户端,它通过四种方式来实现与服务器的连接,Team Explorer (VS2005IDE),MS Excel,MS Project,IE Browser (SharePoint portal)。这四种方式通称作Project Management,它负责从客户端建立连接到服务器,查询数据,创建新项目,浏览项目网站(Team Portal),创建查询等等。
2.VSTF的新特性
• |
Work Item Tracking(WIT) 整合了所有的工具用来创建,追踪,管理用户自定义的工作项目。 |
• |
Version Control 是类似于但是比SourceSafe更高效,功能更全面的代码管理工具。 |
• |
TFS Build 作为Build工具提供了强大的build功能,例如自动编译并发布,定时编译。 |
• |
TFS Reporting 基与Yukon Analysis Services 可以通过工具实现整体数据报告和趋势分析报告。 |
• |
TFS Process Guidance |
• |
MSF – Microsoft Solution Framework |
• |
可以使用Office 管理项目数据,通过Project和Excel能直接对工作项目数据进行同步更新管理。 |
• |
Project Portal 是为整个项目建立的WebService,基于Windows SharePoint-Services,方便用户随时随地通过浏览器来访问项目数据,查看报表,监督项目进度等。 |
WIT是Team Project中对数据项目,如Task , Scenario , Bug等进行跟踪,管理;并且所有的数据项目用户都可以采取自定义化处理,用户能够根据项目的实际需要定制适合的Work Item.特别是ClearQuest Converter提供了将IBM Rational中的数据,经过格式转化导入TFS 数据库的功能。
3.VSTF的安装
安装VSTF的基本需求包括:
系统要求: Windows server 2003 SP1 (Ent / Std)
软件需求:
• |
SQL Server 2005 (Ent / Std) , with hotfix KB912838 |
• |
.NET framework 2.0 with hotfix KB913363 |
• |
Windows SharePoint Service 2.0 with SP2 |
• |
Excel 2003 , MS Project 2003 (client side) |
帐户需求:
• |
TFSSETUP (必须已加入administrator组) |
• |
TFSSERVICE |
• |
TFSREPORT |
• |
TFSPROXY |
硬件需求:
Configuration | Tiers | CPU | HD | Memory |
One server, less than 20 users. |
Application and data tier server |
single processor, 2.2 GHz |
8 GB |
1 GB |
One server; 20 to 100 users. |
Application and data tier server |
dual processors, 2.2 GHz |
30 GB |
2 GB |
Two servers; 100 to 250 users. |
Application tier server Data tier server |
single processor, 2.2 GHz dual processors, 2.2 GHz |
20 GB 80 GB |
1 GB 2 GB |
Two servers; 250 to 500 users. |
Application tier server Data tier server |
dual processors, 2.2 GHz quadruple processors, 2.2 GHz |
40 GB 150 GB |
2 GB 4 GB |
单服务器部署方式:
• |
将服务器配置成Application Server |
• |
更新Windows(W2003 SP1) |
• |
安装SQL Server 2005,并尝试http://hostname/reports可以打开 |
• |
安装SQL Server 2005的补丁KB912838 |
• |
安装WSS2.0 (with Server Farm mode),访问http://hostname |
• |
安装Team Foundation Server |
双服务器部署方式:
DT:
• |
SQL Server 2005 |
• |
Team Foundation Server Data Tier |
AT
• |
Application Server |
• |
SQL Server Reporting Services |
• |
WSS with SP2 |
• |
Team Foundation Server Application Tier |
详细文档请参照Visual Studio Team Foundation Installation Guide http://go.microsoft.com/fwlink/?LinkId=40042
三.Project Management
下面介绍一下关于ProjectManagement更加细节的部分。
1.Team Explorer (TE):
![.](https://www.cnblogs.com/kenly33/admin/art/Worksoft_VSTS_03.jpg)
图 2.1
Team Explorer是 VS 2005中集中项目管理的工具,就像是Server Explorer,但它是用来管理所有和项目相关数据的工具。
当把TFC安装到用户的客户端机器上后,就意味着已经可以使用和项目相关的一些管理工具或功能了,在VS2005,Excel 和MS Project里都会出现“Team”菜单和工具栏,在这些菜单和工具栏中,提供了相应的功能,如连接TFS,下载Work items,发布或刷新work items等。
Team Explorer是在Visual Studio环境里用来管理项目数据的工具,以下简称TE,我们可以通过运行菜单或者点击工具栏来打开Team Explorer窗口,如图2.1所示。它是一个树状结构的管理工具,根目录是TFS的域名,每一次只能连接一个服务器。在服务器根目录下面,是保存在该目录下的所有项目的名称,我们可以选择其中的一个或者多个显示出来。
2.创建一个新的项目(Team Project)
当我们需要创建一个新的产品项目的时候,可以通过TE工具窗口来实现,在服务器根节点上执行右键菜单“New Team Project…”,将会打开一个创建新工程的向导(“Project Creation Wizard”)跟随向导,用户可以自定义一些设置,选择合适的模板或用户自定义模板。确定是否要创建Source Control.
其中模板的选择是尤为重要的,因为选择不同的模板就意味着定义了所使用的Work Item类型以及安全设置等信息。通常情况下VSTF会提供2个符合MSF规范的样例模板, 如“MSF for Agile software development” and “MSF for CMMI process improvement”,这两个模板分别适用于规模和复杂程度不同的项目。当然,Team Foundation的可扩展性允许用户自定义模板,并使用自定义模板创建新项目。
3.工作项目(Work Item)
在Team Foundation中,允许用户定义任何数据类型当作是过程中所使用的工作项目,比如Bug , Task , Scenario , Risk等等。 也可以定义工作项目的组成,状态,还有传输过程等信息。
在TE里,有一个节点叫做“Work Items”,在这个节点下面可以对bugs,tasks等进行查询,修改,管理。通常用户可以通过选择”Work Items”下的Query来查询Work Items. 这里有两个查询的文件夹,一个是Team Queries,它保存的Queries是对当前TFS所有用户都可见的,而另一个My Queries只保存当前用户的石油记录。
4. Documents
名字叫做Documents的文件夹的功能是存放和项目相关的一些文档和资料。这些文档也可以通过访问Team Portal而获得。
5. Reports
Reports文件夹用来管理和生成项目的报告。可以创建新的报告或是打开已经存在的报告。Team Foundation是通过使用SQL 2005的reporting服务来实现此功能的。
6. Team Builds
通过Team Builds节点,实现对项目Build服务的管理,比如可以创建新的Build类型,打开已有的Build类型或即时编译。
7. Source Control
源代码管理窗口通过Source Control节点打开。
8. Team Portal
创建新Project的同时TFS也为该项目创建了相应的网站支持(Team Portal)。Team Portal使用Share Point服务提供支持。Team Portal可以通过IE浏览器访问,也可以右键选择 “Show Project Portal…”打开。
9. Excel Integration
![.](https://www.cnblogs.com/kenly33/admin/art/Worksoft_VSTS_04.jpg)
图 2.4
图2.4显示的是如何使用集成到Excel中的TFC功能来实现连接Team Foundation服务器, 查询数据,修改记录,同步/保存结果。 能够自由选择需要导入Excel的列。
10. MS Project Integration
![.](https://www.cnblogs.com/kenly33/admin/art/Worksoft_VSTS_05.jpg)
图 2.5
可以通过类似的方法使用MS Project来实现同样的功能,功能来实现连接Team Foundation服务器, 查询数据,修改记录,同步/保存结果。
梁羽 Worksosft ( www.worksoft.com.cn )软件开发测试工程师,一年半VSTS自动测试经验,爱好广泛,视工作生活同等重要。