为 Visual Studio ALM 创建、自定义和管理报表

为了在 Visual Studio Application Lifecycle Management (ALM) 中更好地跟踪团队的进度,可以创建突出显示项目最重要数据的报表。 通过创建自己的报表,你可以跟踪 Team Foundation Server (TFS) 中的默认报表未显示的特定信息。 此外,你可以自定义组织成员运行、显示、发布和共享项目特定数据的方式。

若要通过简单列表查询创建简单图表,请转到此处

创建或自定义报表时,你需要考虑数据源、报表类型、报表格式以及你将与你的团队或直接组织外部的其他人一起使用和共享报表的方式。 你选择的报表类型、格式和共享方式将会影响你将使用的数据源和创作工具。 此外,对数据库的访问可能会影响你的决策。 若要刷新 Excel 报表,你必须授予对数据仓库的更广泛的权限,超出你组织的安全策略可能允许的范围。

如果你仅需将报表用于自助服务分析,则可查看或自定义一个默认 Excel 报表,也可以创建基于工作项查询的 Excel 报表。 如果必须创建用户广泛共享的业务报表,并且这些报表必须定期刷新且必须在需要时可用,则你可能需要在 SQL Server Reporting Services 中自定义或创建报表。

重要

Excel 中的大多数报表要求使用 SQL Server Analysis Services 配置承载你的团队项目的团队项目集合。Reporting Services 中的所有报表要求使用 Analysis Services 和 Reporting Services 配置集合。此外,若要访问 Excel 中的默认报表,你的团队项目必须已启用项目门户网站。如果未配置这些服务,则你只能访问当前状态报表。

你可以从你在 Excel 中打开的工作项查询轻松生成当前状态报表,也可以使用 Excel 工具生成数据图表。有关详细信息,请参阅查询工作项

通过 Team Foundation 数据创建报表

如下图所示,你可以通过三个数据库中的任何一个数据库中的数据创建报表。 也可以通过使用 Excel、Project 或 Reporting Services 来创建、自定义和查看报表。 你的团队项目包括 Excel 和 Reporting Services 中的内置报表,你也可以使用 Microsoft Excel 或 Microsoft Project 快速生成报表。

Team Foundation 数据存储和报表概览

单个关系数据仓库包括来自所有团队项目的所有可报告数据,这些团队项目都是针对 Team Foundation Server 的部署在所有项目集合中定义的。 之后将处理该仓库中的数据,并将其写入 OLAP 多维数据集。 由于数据已收集到单个数据仓库中,因此你可以跨多个团队项目集合进行报告。

有关跟踪工作、报表和团队进程的各对象间的相互依赖性的信息,请参见可在 Visual Studio TFS 中配置并自定义的内容的端到端视图

有关 TFS 和 SQL Server 之间的交互的详细信息,请参见了解 SQL Server 和 SQL Server Reporting Services

通过关系仓库数据库创建报表

你可以通过在关系仓库数据库中查询数据和创建显示状态的报表来跟踪进度并突出显示其他重要的趋势。 如下图所示,仓库中的数据是从操作存储区收集的,并且组织在一组表、视图和用于设计报表的表值函数中。

Team Foundation 仓库

仓库包含有关生成、源代码、测试结果和代码覆盖率以及工作项(如任务和 Bug)的数据。 Visual Studio ALM 中捕获的原始数据和这些数据集之间的关系将移至数据仓库。 你可以通过存储在关系仓库数据库中的数据直接查询和创建报表来了解集成数据集之间的关系。

有关详细信息,请参阅Visual Studio ALM 的关系型仓库数据库的表引用

通过 Analysis Services 多维数据集创建报表

如下图所示,Team System 多维数据集提供为所有度量值组定义的所有度量值。 通过使用 TFS 的 Analysis Services 多维数据集,你可以生成有关团队项目集合中存储的数据的聚合信息的报表。 可以使用此数据在 Microsoft Excel 中轻松创建数据透视表和数据透视图报表。

备注

说明说明

如果 TFS 数据仓库使用的是 SQL Server Enterprise Edition,则多维数据集列表中将包括 Team System 和一组透视。这些透视图提供了数据的集中视图,这样你就不必滚动为整个 Team System 多维数据集定义的所有维度和度量值组。

有关详细信息,请参阅下列主题:

备注

如果使用 Git 进行版本控制,则代码改动和代码覆盖率数据将不可用。

Analysis Services 多维数据集度量值组

数据刷新频率

为工作项捕获的所有数据将写入 WIT 数据存储,但仅精选数据将写入 Analysis Services 数据仓库。 当团队成员创建和修改工作项时,WIT 数据存储会实时更新。 分别每隔 2 分钟和 2 小时对关系仓库数据库和 OLAP 多维数据集写入增量更新。

分配给每个工作项字段的可报告特性将确定数据是仅被写入关系仓库数据库还是被同时写入关系仓库和 OLAP 多维数据集。 可报告字段的可报告特性已设置为详细信息、维度或度量。 所有来自针对 TFS 部署而在所有项目集合中定义的所有团队项目的可报告数据都将写入一个关系数据仓库。 之后将处理该仓库中的数据,并将其写入 OLAP 多维数据集。 通过将数据收集到单个数据仓库,可以跨团队项目集合进行报告。

下图中突出显示了工作项字段、字段特性以及全局列表,这些项显示在蓝色框中,并且适用于团队项目集合中的所有团队项目。 橙色框指示为团队项目定义的 WIT 对象。

用于跟踪工作和数据存储的字段

选择用于创建或自定义报表的软件工具

你可以使用可连接到 Analysis Services 关系数据库或 OLAP 多维数据集的任何创作工具来创建 TFS 报表。 例如,你可以使用 Excel、报表生成器和报表设计器。 通过使用 Excel,你可以快速生成报表来访问用于跟踪工作项的数据或存储在多维数据集中的数据。 通过使用 Project,你可以创建显示信息(例如依赖项、计划、资源使用情况和时间线)的报表。 通过使用报表生成器或报表设计器,你可以允许用户更新报表,而无需向其授予对数据库的读取权限。

除了这些工具外,Microsoft 还提供了其他工具和插件来扩展自定义和发布报表的能力。 有关详细信息,请参阅 Microsoft 网站上的以下页面:选择正确的商业智能技术以满足你的风格(白皮书)Microsoft 商业智能

如下图所示,你可以创建 Excel 报表来访问 Analysis Services 多维数据集中或跟踪工作项的数据存储中的数据。 这些报表有下列用途:临时和自助式分析、通过门户网站或面板与团队共享信息、通过使用 PowerPivot for Excel 与其他数据源集成。 对于更复杂的业务和操作性报表,你可以使用报表生成器或报表设计器在 Reporting Services 中创建或自定义报表。

生成 Team Foundation 报表的工具

下表提供了有关使用创作工具(可用于创建和自定义 TFS 报表)的工具、数据、优点和资源的信息。

软件工具

访问的数据

有助于

备注

Excel

用于跟踪工作项的数据存储

OLAP 多维数据集 (TFS_Analysis)

自助式分析

管理中小型数据集(100s - 约 1MM 条记录)

形式灵活、无限制的报表布局和格式

若要更新或刷新 Excel 报表,用户必须具有适当的权限。 必须保证访问数据仓库的权限,此仓库存储项目集合整个部署的数据。 用户必须手动或使用宏来刷新数据。

Project

用于跟踪工作项的数据存储

项目时间表和资源数据

显示甘特报表,此报表显示依赖项、时间线报表、资源使用情况和分配。

对于企业部署,Project Server 会提供各种报表,你可用来分析项目和一个或多个项目的资源性能。 此外,你还可以使用数据透视表和数据透视图报表与报表交互使用和更改构成报表的部分字段。

你可以通过在 Project 中打开工作项查询来立即通过 Project 访问报表。 有关详细信息,请参阅使用 Project 创建积压工作 (backlog) 和任务

若要通过 Project 访问企业级报表,你必须安装并配置 Project Server 的 Team Foundation Server 扩展。 有关详细信息,请参阅将 Team Foundation Server 与 Project Server 同步

报表生成器

OLAP 多维数据集 (TFS_Analysis)

关系仓库数据库 (TFS_Warehouse)

创建复杂且格式一致的报表。

向报表添加迷你图、条形图和指示符。

使用参数化的视图。

SQL Server 2008 R2 Report Builder 3.0 提供了一个直观、全面的报告环境,借助此环境,用户可通过使用与 Excel 功能相似的功能区来开发高度格式化的报表。 你可以从 Microsoft 网站上的以下页面中下载此工具并访问其他资源:Report Builder 3.0 入门

报表设计器

OLAP 多维数据集 (TFS_Analysis)

关系仓库数据库 (TFS_Warehouse)

创建复杂且格式一致的报表。

报表设计器是图形查询和承载在 Visual Studio 环境中的设计工具的集合。 报表设计器提供一个“报表数据”窗格,以便你可组织报表所用数据,可以在“设计”和“预览”视图之间切换,以便你可以交互的方式设计报表。 报表设计器还提供了查询设计器,使用此设计器,你可以更轻松地指定要从数据源检索的数据,并且提供了“表达式”对话框,使用此对话框,你可以指定要在报表布局中使用的报表数据。 有关详细信息,请参阅 Microsoft 网站上的以下页面:报表设计器

若要进一步比较报表设计器和报表生成器的功能,请参阅 Microsoft 网站上的以下页面:比较报表创作环境

查看、创建和管理 Excel 报表以进行自助式分析

你可以使用团队项目的默认 Excel 报表来分析你的项目进度和质量。 也可以通过工作项查询或通过连接到 Analysis Services 多维数据集在 Excel 中创建临时报表。

有关查看、更新、创建和管理 Excel 报表所需权限的信息,请参见分配相关权限,供查看和管理 Visual Studio ALM 报表

默认 Excel 报表

你可以通过查看默认 Excel 报表来跟踪团队项目的燃速 (burnrate)、Bug 积压工作 (backlog)、软件质量、测试进度和其他度量值。 若要查看此类报表,必须满足下列配置:

  • 必须已使用项目门户网站配置团队项目。

    Excel 报表存储在为你的团队项目承载 SharePoint 产品的服务器上。 如果尚未为你的团队项目启用项目门户网站,则不能访问这些报表。 有关详细信息,请参阅配置或添加项目门户网站

  • 若要在 Excel 中打开连接到 TFS 数据存储的报表,你必须在客户端计算机上安装 Team Foundation Office 集成外接程序。 安装任何 Team Foundation Client 时都将安装此外接程序。

从下表中,你可以快速访问 Microsoft Solutions Framework (MSF) 的过程模板提供的每个 Excel 报表的相关信息。 从表链接到的主题中,你可以了解哪些数据可用,哪些信息项目团队必须跟踪以及如何解释、更新和自定义各个报表。 有关详细信息,请参见 Excel 报表Excel 报表 (CMMI)基于工作项查询创建 Excel 报表

报表区域

MSF for Agile Software Development

MSF for CMMI Process Improvement

项目管理

燃尽

问题趋势

任务进度(趋势)

用户情景进度(趋势)

燃尽

问题趋势

任务进度(趋势)

要求进度(趋势)

Bug 管理

Bug (按指派)

Bug (按优先级别)

Bug 进度(趋势)

Bug 重新激活(趋势)

Bug 趋势(趋势)

Bug (按指派)

Bug (按优先级别)

Bug 进度(趋势)

Bug 重新激活(趋势)

Bug 趋势(趋势)

测试管理

测试管理报表

测试用例准备情况(趋势)

测试计划进度(趋势)

手动测试活动(趋势)

失败分析(趋势)

用户情景测试状态(趋势)

测试管理报表

测试用例准备情况(趋势)

测试计划进度(趋势)

手动测试活动(趋势)

失败分析(趋势)

要求测试状态(趋势)

软件质量和发布管理

生成质量(趋势)

代码改动(趋势)

代码覆盖率(趋势)

生成质量(趋势)

代码改动(趋势)

代码覆盖率(趋势)

备注

如果使用 Git 进行版本控制,则代码改动和代码覆盖率数据将不可用。

通过工作项查询创建当前和趋势报表

你可以使用**“在 Microsoft Excel 中创建报表”**快速生成显示基于工作项查询的当前状态或历史趋势的报表。 这些报表将基于你的查询数据和 Analysis Services 多维数据集中的数据自动生成一组数据透视表和数据透视图报表。 此外,你可使用此工具快速生成数据透视表和数据透视图报表,你可自定义这些报表来支持其他报表视图。

有关详细信息,请参阅基于工作项查询创建 Excel 报表

基于 Analysis Services 多维数据集中的可用度量值创建 Excel 报表

通过使用 Analysis Services 多维数据集,你可以生成聚合团队项目集合中数据的相关信息的报表。 你可以轻松使用此数据在 Excel 中创建数据透视表和数据透视图报表。 你可以将多维数据集元素拖至数据透视表或数据透视图报表上,以便快速表述问题和检索答案。 此多维数据集经过了优化来回应下列类型的问题:

  • 项目每天活动的、已解决的以及关闭的 Bug 有多少?

  • 在给定时间段内,每个月激活了多少用户情景或要求?

  • 团队项目的所有生成定义测试结果的累计计数是多少?

有关详细信息,请参阅Visual Studio 的 Analysis Services 多维数据集中提供的透视和度量值组

共享和管理 Excel 报表

你可以通过下列任一方式共享 Excel 报表:

  • 以电子邮件方式发送报表数据。 查看数据不要求特殊权限。

  • 以电子邮件方式发送 Excel 工作簿。

  • 将 Excel 报表上载到项目门户网站。

  • 将 Excel 报表添加到面板。

  • 将 Excel 报表上载到一个共享网络站点,并将该位置的 URI 添加到工作项窗体。

用户必须具有所需权限才能刷新数据,同时必须具有所需的 Team Foundation 外接程序才能打开其数据连接到 Team Foundation Server 的报表。

在 Reporting Services 中查看、创建和管理报表

通过使用 Reporting Services,你可将更多的控件应用于报表的格式,并且你组织内的团队成员和其他成员可更轻松地对其进行访问。 你可以使用团队项目的默认报表来分析你项目的进度和质量。 这些报表聚合来自工作项、版本控制、测试结果和生成的度量值,有助于回答下列类型的与项目实际状态有关的问题:

  • 团队是否可能按时完成迭代?

  • 按照当前燃速,团队能否完成所需工作?

  • 团队是否以可接受的比率解决并关闭重新激活的 Bug?

  • 测试通过率如何?正在测试多少代码?

  • 一段时间内所有生成的状态如何?

Reporting Services 中的报表为报表定义 (RDL) 文件,此类文件为 XML 格式,包含数据源、数据和布局的相关信息。 报表定义不包含任何数据。 处理报表后,数据和布局会合并然后传递给用于确定每页上适合哪些数据和布局元素的报表呈现器。

为了便于你访问 Reporting Services 的报表,必须为包含你的团队项目的团队项目集合配置 Reporting Services。 当打开 团队资源管理器 并展开团队项目节点时,如果未出现 报告“报表”,则这些报表不可用。在创建你的团队项目后,Team Foundation Server 的管理员可以将报表服务器添加到你的部署中。 有关详细信息,请参阅添加报表服务器

有关查看、更新、创建和管理 Reporting Services 的报表所需权限的信息,请参见授予对 Visual Studio ALM 数据仓库的数据库的访问权限

Reporting Services 中的默认报表

从下表中,你可以快速访问通过 Microsoft Solutions Framework (MSF) 或 Visual Studio Scrum 的过程模板创建团队项目时自动在 Reporting Services 中创建的每个报表的相关信息。 通过阅读这些主题,你可了解每个报表提供的数据、项目团队必须跟踪的信息以及如何更新、筛选和解释每个报表。 筛选器包括时间段、迭代和区域路径、工作项类型以及工作项状态。 有关详细信息,请参阅报告 (SQL Server Reporting Services)

备注

如果在 Reporting Services 中创建或自定义报表,则你可以将这些更改保存到过程模板中。有关详细信息,请参阅向过程模板添加报告

报表区域

MSF for Agile Software Development

MSF for CMMI Process Improvement

Visual Studio Scrum

项目管理

燃尽 (Burndown) 和燃速 (Burn rate)

剩余工作

计划外工作

所有迭代的状态

情景概述

情景进度

燃尽 (Burndown) 和燃速 (Burn rate)

剩余工作

计划外工作

所有迭代的状态

要求概述

要求进度

积压工作 (backlog) 概述

发布燃尽

冲刺 (sprint) 燃尽 (Scrum)

速度

Bug 管理

Bug 状态

Bug 重新激活

Bug 趋势

Bug 状态

Bug 重新激活

Bug 趋势

  

测试管理

测试用例准备情况

测试计划进度

测试用例准备情况

测试计划进度

测试用例准备情况

测试计划进度

软件质量和发布管理

生成质量指示器

每日生成结果

生成摘要

生成质量指示器

每日生成结果

生成摘要

每日生成结果

生成摘要

备注

如果使用 Git 进行版本控制,则代码改动和代码覆盖率数据将不可用。

在 Reporting Services 中创建和自定义报表

若要创建将通过 Reporting Services 承载的更复杂的报表,你可使用报表生成器或报表设计器。 你可以使用创作工具来访问关系数据仓库和 Analysis Services 多维数据集。 如有可能,应使用报表生成器,这是因为该工具相对较简单。 如果要执行下列一项或多项任务,则应在 Reporting Services 中创建报表:

  • 允许用户更新报表,而无需向其授予对数据库的读取权限。

  • 在团队资源管理器中的报表文件夹下共享报表。

  • 支持对可在每天通过电子邮件发送的报表的订阅。

  • 管理报表的属性,以便于更快地返回结果并且使用更少的服务器资源。

  • 使用 Transact-SQL 查询来为报表检索数据。

有关更多信息,请参见下列主题之一:

管理 Reporting Services 报表

你可以通过团队资源管理器、Team Web Access 或团队报表站点访问 Reporting Services 报表。 你可以使用团队资源管理器或报表管理器管理报表和报表文件夹。 若要从 Team Web Access 访问团队报表站点,请在主页上选择 报告“报表”

随着**“报表”节点下列出的报表越来越多,你可能需要创建子文件夹,以便分组或组织报表。 此外,还可以使用“我的收藏夹”**文件夹来存储最常用报表的快捷方式。

有关详细信息,请参阅查看、上载和组织报表(Reporting Services 报表)

添加数据以支持报告要求

你可以通过下列方式添加数据来支持报告要求:

  • 向数据存储、关系数据库或数据仓库添加工作项字段。

  • 创建适配器以将数据添加到数据仓库。

  • 使用 PowerPivot 将数据从其他资源纳入 Excel 报表中。

添加工作项字段

可以使用工作项字段跟踪工作项类型的数据、定义查询的条件以及设计报表。 若要支持报告,你可以添加字段或更改现有字段的特性。 对于要在报表中显示的任意字段(系统字段除外)将跟踪的工作项类型,你必须在定义文件中定义该字段。 系统会自动为每种类型的工作项定义系统字段。 但必须将系统字段包含在工作项窗体中才能支持数据输入。 添加或更改字段时,你将应用系统命名约定以确保按逻辑将数据分组到 Analysis Services 多维数据集中的各个文件夹。

有关详细信息,请参阅添加或修改工作项字段以支持报告

创建仓库适配器

如果要向仓库添加数据类型,则你可能需要创建一个适配器作为实现 IWarehouseAdapter 的托管程序集。 适配器将使用仓库对象模型与 Team Foundation Server 的仓库交互。 当适配器将数据字段添加到仓库时,它会以编程方式扩展定义移至仓库的数据的架构。 有关详细信息,请参见Data Warehouse ExtensibilityHow to: Create an Adapter

PowerPivot

PowerPivot for Excel 2010 是 Microsoft Excel 2010 的数据分析外接程序。 通过使用此外接程序,你可以生成将来自其他数据存储或数据库的数据与来自 Team Foundation Server 的数据合并的报表。 有关详细信息,请参阅 Microsoft PowerPivot

解决架构冲突和管理数据仓库

当可报告字段的一组特性在团队项目集合之间有所不同时,将发生架构冲突。 架构冲突可能会阻止数据仓库和 Analysis Services 多维数据集的处理。 你必须更正冲突才能取消对仓库处理的阻止,并且报表才能正常运行。 有关详细信息,请参阅解决数据仓库中发生的架构冲突

你可以管理数据仓库和 Analysis Services 来处理下列情况:

  • 解决报表不是最新的或包含丢失数据的问题。

  • 在解决仓库中发生的架构冲突后,处理仓库或多维数据集。

  • 更改处理仓库或多维数据集的刷新频率。 默认情况下,每隔两分钟在关系数据库中提取和写入一次数据。 多维数据集每两个小时更新一次。 如果你频繁更改并且要查看反映了这些变化的报表,可能需要提高刷新频率。

  • 排除与仓库处理作业相关的应用层服务器的事件查看器中出现的错误。

  • 在对 Team Foundation 的数据层服务器进行移动、还原、重命名或故障转移之后,重新生成仓库和多维数据集。

使用仓库控制 Web 服务执行多项任务。 有关详细信息,请参阅管理数据仓库和 Analysis Services 多维数据集

其他资源

你可以从 Microsoft 网站上的下列资源中获取更多信息:

请参见

概念

TFS 数据仓库的组件

可在 Visual Studio TFS 中配置并自定义的内容的端到端视图

使用 Visual Studio ALM 和 TFS 跟踪工作