1、CompanyLOGO2010-08-09TFS学习进阶学习进阶目录目录 一、TFS概述 二、对安装TFS的服务器的要求 三、TFS逻辑结构 四、TFS与Visual SourceSafe 五、TFS对团队成员角色的支持 六、TFS源代码管理及其演示2一、一、Team Foundation概述概述3 简介:Team Foundation System(简称TFS)是可使团队在生成产品或完成项目时加强协调与合作的一套工具和技术。Team Foundation 可增强团队成员之间的交流,跟踪工作状态,支持团队角色,制定团队过程并可以集成团队工具。Team Foundation Server不仅仅是
2、一个版本控制软件,还提供了BUG管理、工作项管理、集成管理、自动化测试、架构验证等特性。一、一、Team Foundation概述概述 每个系统都有独立的存储空间,资源标识集,命令和工具集。要让整个系统工作起来,就像把一组自定义立体组件联接在一起:可以实现,但工作量较大,而且可能在一些地方出现纰漏2010-08-134一、一、Team Foundation概述概述 这是一种很普遍的工作场景,在一天之中,编写代码,编译一个可工作的软件提交测试,测试发现的bug,修复他们,这样不断的重复。整个过程的支持需要有一个统一的存储库进行支持,然后所有项目可以进行关联2010-08-135一、一、Team
3、Foundation 概述概述 TFS的完整版将会加入一些新的特性,包括自动化测试,虚拟实验室的部署和架构验证。左图是扩展后的工作流程2010-08-136二、二、Team Foundation对服务器要求对服务器要求 操作系统:WINDOWS 2003 SP2、WINDOWS SERVER 2008 必备组件:IIS SQL SERVER 2008(EXPRESS 版即可)、SHARE POINT(Windows SharePoint Service 3.0)VISUAL STUDIO 20102010-08-137三、三、Team Foundation 的逻辑结构的逻辑结构 数据层(Dat
4、a Tier)数据层由SQL SERVER组成,并把工作项、受版本控制的源文件、测试结果和其他项目指标存储在SQL SERVER中 应用层(Application Tier)应用层由基于Web的、与IIS集成的前端应用程序组成。这些应用程序包括(SQL SERVER Reporting Services,Team Foundation 核心服务,SharePoint)客户端(Client Tier)客户端由团队资源管理器组成,通过团队资源管理器与Team Foundation服务器端相连接2010-08-138四、四、Team Foundation与与Visual SourceSafe1.二者
5、特点概述2.结构区别3.功能差异2010-08-139四、四、Team Foundation与与Visual SourceSafe二者特点概述2010-08-13SuperMap10 Visual SourceSafe 和 Team Foundation 源代码管理 完成下列同样的基本任务:源代码管理。这两种产品都提供了命令行客户端和 Visual Studio 集成。四、四、Team Foundation与与Visual SourceSafe1数据存储方式不同:TFS的数据保存在SQL SERVER中,使用.NET Web Service访问;VSS的数据是存储在共享网络文件夹中的文件集合2
6、.存储容量:TFS理论上数据量可以达到SQL SERVER数据库允许存储且硬件支持的最大数据量;VSS最大的数据容量为4GB3.用户并发数量:TFS最多可支持2000名用户的团队,支持500个用户check in/out VSS建议团队人数是20个或者更少,支持12个用户在线同时进行check in/out2010-08-1311四、四、Team Foundation与与Visual SourceSafe功能差异2010-08-1312Visual SourceSafe 中不存在的中不存在的 Team Foundation 功能功能:n工作区 n变更集 n搁置集 nTeam Foundatio
7、n 工作项 n签入策略 n签入说明 n通过 设置警报 执行的电子邮件通知 Team Foundation中不存在的中不存在的 Visual SourceSafe 功能功能:n共享n固定n存档和还原n销毁n关键字扩展四、四、Team Foundation与与Visual SourceSafe功能差异2010-08-1313 在 Team Foundation 中,多个用户可以同时对同一项进行签出和更改。在 Visual SourceSafe 中,默认情况下以独占方式执行签出。但您可以在 Team Foundation 中锁定某一文件,以防止其他用户签出该文件或签入更改。五、五、Team Foun
8、dation对团队不同角色的支持对团队不同角色的支持项目成员 1.项目经理2.架构师 3.开发人员4.测试人员2010-08-1314五、五、Team Foundation对团队不同角色的支持对团队不同角色的支持2010-08-1315A项目经理项目经理工作项:工作项:1.工作项工作项-团队查询团队查询中的活动的Bug、已解决的Bug。目的:是分析现有Bug情况2.文档文档-项目管理项目管理中加入项目计划:目的是使项目的进展开发有一定的依据。3.报告报告-Bug(按优先级别按优先级别):项目管理:查看项目的提交的Bug状况。五、五、Team Foundation对团队不同角色的支持对团队不同角
9、色的支持2010-08-1316B架构师架构师工作项:工作项:1.工作项工作项-团队查询团队查询中的活动的Bug。目的:分配现有现有Bug的修改工作。2.文档文档-开发开发中加入需求分析类和设计规划类文档。目的:程序开发的重要依据说明。五、五、Team Foundation对团队不同角色的支持对团队不同角色的支持2023-6-317C开发人员开发人员工作项:工作项:1.工作项工作项-团队查询团队查询中的活动的Bug。目的:解决分配给自己的Bug。2.文档文档-项目管理项目管理中加入项目计划:目的是使项目的进展开发有一定的依据。五、五、Team Foundation对团队不同角色的支持对团队不同
10、角色的支持D测试人员测试人员团队团队-新建测试用例新建测试用例编写测试用例进行测试。目的:证明已知功能工作正常以及发现新的产品问题团队团队-新建新建Bug编写bug的说明。目的:提供 bug 说明以及易于理解和遵循的重新创建 bug 的步骤2010-08-1318六、六、Team Foundation源代码管理源代码管理(演示演示)1.源代码管理配置2.创建项目的解决方案3.工作项(Bug,任务,共享步骤,测试用例,用户故事)4.变更集5.搁置集6.生成2010-08-1319六、六、Team Foundation源代码管理源代码管理 搁置集 在开发人员第一次签入某个功能(或者签入重大的修复)
11、之前,为保证构造的稳定性,往往会将代码通过Team Foundation Server(TFS)的搁置集(shelveset)发给相关的测试人员做伙伴测试。伙伴测试常常是测试人员同某一新功能的第一次亲密接触,是实际测试的开端。同时,它也是一种非正式的手动测试,因为这些代码尚未签入,测试人员发现的问题并不构成bug,他们也不会将其记录到Bug数据库中。2010-08-1320六、六、Team Foundation源代码管理源代码管理中断 当您所具有的挂起的更改未准备好签入但您需要从事其他任务时,可以搁置这些挂起的更改以保留它们。集成 当您所具有的挂起的更改未准备好签入但您需要与其他团队成员共享这些更改时,可以搁置这些挂起的更改并让您的团队成员对它们取消搁置。评审 当您所具有的挂起的更改已准备好签入并且必须经过代码评审时,可以搁置这些更改并通知该搁置集的代码审阅者。备份 当您正在做的工作要执行备份但未准备好签入时,可以搁置您的更改并将其保留在 Team Foundation 服务器上。移交 当您正在做的工作要由其他团队成员完成时,可以搁置您的更改以便更容易地进行移交。2010-08-13212010-08-1322谢谢!