In my last post, I wrote about the relational warehouse and cube schema changes coming your way in TFS 2010. We just released 2010 Beta 2 and I wanted to outline additional schema changes we have made in the cube, especially to polish it for final release and also address a few key usability aspects.


Here’s a comparison between TFS 2008, TFS 2010 Beta 1 and TFS 2010 Beta 2:


TFS 2008 TFS 2010 Beta 1 TFS 2010 Beta 2
image

image

image

Here are the main changes to the Team System cube in Beta 2:

  • The following dimensions that are no longer supported have been removed:
    • Dimensions related to load test - Load Test Counters, Load Test Page Summary, Load Test Result, Load Test Scenario, Load Test Transaction
    • Machine
  • Corresponding measure groups have also been removed:
    • Load Test Counter, Load Test Page Summary, Load Test Summary, Load Test Details, Load Test Transaction Summary
  • Probably one of the biggest changes that we have made in this category is to collapse the ‘Work Item History’ and ‘Current Work Item’ measure groups into one ‘Work Item’ measure group which dynamically shows trend if you include Date and current data otherwise.

    image 

  • The above change to the Work Item measure group also meant:
    • We didn’t need ‘Cumulative Work Item Count’ and ‘Current Work Item Count’ measures, so we just have one ‘Work Item Count’ measure
    • We didn’t need different perspectives either, so we just have one Work Item perspective. Note: Perspective is a SQL Enterprise feature and is not available in SQL Standard.
  • Dimension names have been updated to address usability. Here’s a mapping for the name changes:
    Old Dimension Name New Dimension Name
    File Version Control File
    Changeset Version Control Changeset
    Configuration Test Configuration
    Linked Work Item Work Item Linked
    Source Project File Build Source Project File
    Work Item Test Case Test Case
  • ‘Test Result’ measure group has been renamed to ‘Test’ and it includes a new ‘Test Case Count’ measure.

    image

  • The following measure names have been renamed as well:
    Old Measure Name New Measure Name
    Cumulative Build Result Count Build Result Count Trend
    Cumulative Point Count Point Count Trend
    Cumulative Result Count Result Count Trend
  • Calculated date and numeric measures that are meant for being used as filters gets their own measure group.

    image

  • And, finally, we updated the names of the display folders within the Work Item dimension to follow a consistent pattern so the custom work item fields that are provisioned still fit into this pattern rather than ending up at the root of this dimension. This is a cosmetic change and will not affect reports. Here are some rules around how attributes are organizes in this dimension:
    • Folders are named based on field reference name, so fields under one namespace are grouped together to help finding them in the cube when building a report
    • System fields are the only ones that show up at the root of this dimension as they are commonly used. E.g. Work Item Type, State, Assigned To etc.

      image


One last thing I wanted to call out isn’t related to cube schema, but we have changed the name of the Analysis Services database we create by default. The name of database is ‘Tfs_Analysis’. We want to straighten out the terminology instead of overloading the term warehouse to mean both the relational warehouse database as well as the analysis database. Of course, this is just the default and in 2010 you get the flexibility to name this database however you like using Team Foundation Administration Console.


If you have any questions or feedback please leave me a comment of send me an email at sunder.raman at microsoft.com.


[Update 10/21/2009] John Socha-Leialoha has written detailed blog posts, Part 1 and Part 2, to help upgrade custom reports written against TFS 2008 to work with the new schema changes I outlined in this post.