Using Telerik’s TFS Work Item Manager & Dashboard for Snapshot Views into Progress

As you know, our team spends a lot of time running software development projects such as the MDT 2010 Update 1 UDI feature set.  We are a very agile team with a few PMs, couple of test, and a handful of developers.   I manage this team of 8 and I’m very keen on setting the vision, the expected end-state, and then delegating a great deal of the day-to-day though I’m keenly interested in what is happening in each.  To help management, including myself, stay in-tune with the project(s) we utilize several things.  This post focuses on one of these…

Telerik Work Item Manager & Project Dashboard

Team Foundation Server (TFS) 2010 comes with dashboards out-of-the-box and utilizes SharePoint services (WSS or MOSS) to provide a dashboard view.  This is great for teams that have an investment in SharePoint and can easily integrate these dashboards into the greater SharePoint farm.  For those other development teams (e.g. non-SharePoint), I want to ensure that you are aware of how to utilize “similar” capabilities with the Telerik Work Item Manager & Dashboard free add-on for TFS.

Work Item Manager is better described on Telerik’s site but in general it is an all-inclusive tool that allows project managers to plan, execute, and monitor projects utilizing TFS.  This product is currently still in beta but our team has been using the TFS Project Dashboard since February 2010 (two releases) and we are very happy with it.

NOTE:  We do not currently utilize the Work Item Manager application as we use the built-in TFS Workbooks for managing our sprints and work items.  We also use these workbooks for sprint planning.

Using TFS Project Dashboard – Soup to Nuts in Corporate Environment

The project dashboard provides a number of templates for use in displaying data.  These templates are WPF XAML layouts and are customized based on two pieces of criteria -

  1. Screen Resolution
  2. TFS Widgets or Non-TFS Widgets

The Dashboard mostly works out of the box though it wasn’t scoped (from what we can tell) to be used by teams who are also using Work Item Manager (WIM).  In fact, you are unable to download only the Dashboard and instead are required to obtain the entire suite of tools (WIM + Dashboard).  This becomes completely obvious once you fire up the Dashboard and add your first project when the widgets such as Iteration Effort, Team Activities, and Team Progress are completely dorked and not working.

Let me explain why…

TFS has a concept of Iterations that define a set of time which work is being performed.  These iterations are defined using Visual Studio 2008 or 2010 and are a hierarchical set of “milestones” for the project.  image The key thing to note – iterations in TFS do not have a start & end date (unless you are using the recently released SCRUM template) thus causing the Dashboard to have no idea what period of time to ask TFS for information about.  This is where the Dashboard as a dependency on WIM.

Setup Iteration Start & End Dates

The first step is to open WIM and connect to your TFS project.  You will need to have the appropriate rights in TFS so ensure you’ve got Administrator rights to the specific projects you are interested in.

After connecting, you will need to do the following:

  1. Click View
  2. Click Iteration Schedule
  3. Click Sync from TFS
  4. Set the Start & End date for your iterations to match your schedule

clip_image002

The last step is to click Save in the top left corner.  This change *does not* need to be done directly on the Dashboard machine (if projected) but instead can be done from any workstation that has these tools installed.  You are now ready to test your dashboard…

Verdict:  Watch Progress Per Iteration

The reason I personally like the Dashboard is it is a glance-in-time (in our case, every 5 minutes) of our progress.  It is a constant reminder to the team of where they sit as it stands towards completion of our sprints.  As you can see below, it is also very powerful in providing our team a look into our velocity, code churn, and code coverage per our last 10 builds.

 image

Security:  Using TFS Project Dashboard in Corporate Environment

Unfortunately, TFS Project Dashboard doesn’t provide an option to run as a screen saver.  Because of this, you will be required to be actively logged in to the machine which is displaying the data.  This isn’t an issue unless you are “projecting” the data in a freely accessible area such as a hallway.  No problem, we would like to say.

The reason that having an unlocked machine logged into a domain environment is bad is due to the resources which that user might access.  For applications that must access network resources, but have to be done from an unsecured location, you can use the following to protect your assets while still helping the organization keep up with project progress.

On your Windows 7 (or whatever Windows-based OS), do the following:

  1. Log in as an Local Administrator on the projection machine
  2. Create a local user with no special privileges using Computer Management
  3. Log off
  4. Log on as local user with no special privileges
  5. Click Start, All Programs, Accessories, Command-promptimage
  6. At the command-prompt, type “runas /user:{domain}\username cmd and press Enter
  7. When prompted, enter the password for the domain account with access to TFS
  8. When the new CMD prompt opens, type cd %programfiles% (x86 for 64-bit)\telerik\work item manager 2010
  9. Type Dashboard.exe
  10. Close the command-prompt
  11. Add this to your startup folder and provide the credentials to run as and you are set.

The following is an example of how one of our dashboards looks that sits near our Directors office -

image Note:  The Code Coverage widget is empty as we’ve only written native code and thus unit test #’s are not available.

Summary

In today’s post, I focused on helping folks utilize Telerik’s TFS Project Dashboard with TFS 2010.  This third-party partner application is useful for software development teams who don’t have a SharePoint environment or who lacks knowledge to utilize it.  We use it internally for projection for our greater organization to understand our progress towards our large software projects.  I hope that this helps folks get up and running if you like to utilize it and really aids folks in seeing progress in their project, whether on your desk or in the hall.  Heck, put one in the elevator if you like…

Enjoy!

Thanks,

-Chris