Looking for feedback

Dec 10, 2010 at 2:46 PM

We are looking for some constructive feedback on what you think of the Visual WIP project. Examples of feedback are:

  • How are you using it?
  • What TFS Template are you using?
  • Are the visual signals intuitive and clear?
  • What features are you missing?
  • Are you having any problems?

All feedback is welcome. Thanks Hakan Forss

Jan 13, 2011 at 5:38 PM

Hi Hakan,

Thanks again for doing such a great job with VisualWip. I have a couple of items of feedback. Firstly, we have difficulty getting VisualWip to work across two monitors If this is not a known issue I can supply specifics (i.e. problem symptoms, screen resolution, OS etc). Also it would be great to be able to be able to specify some sort of aging threshold, e.g. show any card older than three weeks as grey. 



Jan 13, 2011 at 6:12 PM

Hi Keith,

When using multiple monitors create a new window for every monitor and add the columns to the appropriate window.

I have had some problem with multi monitor support when the resolution is very low but otherwise no known problems. Please supply some details of your problem and I will take a look.

Aging threshold:

I have been thinking about this for a while but have not added any fully integrated support yet. It is quite easy to modify the xaml files that defines the UI design to do this based on your own preferences. How would you like this to work? If you could give me an example what you would like I will try to add it for you.

Best regards Hakan

Jan 16, 2011 at 10:57 PM

This is sort of off-topic, but I don't suppose you could pervert your code to create a TFS-based Story Mapping tool, could you?  (http://www.agileproductdesign.com/presentations/user_story_mapping/index.html)

Oh, btw, is that the same Keith Thomas I worked with at ABI?



Dan Schaeffer

Jan 17, 2011 at 8:27 AM

Hi Dan,

This just the kind of off-topic questions and suggestions I’m looking for.

I see no problem setting up Visual WIP to be a TFS-based Story Mapping tool. The design of the current board is done more or less 100% done in runtime loaded xaml files. If a column or row based design is adequate for your needs and that the different columns or rows are populated by TFS queries it’s just a question of making changes to the design xaml files.

I’m more than happy to try to make Visual WIP work as a Story Mapping tool for you. Start a new thread with your requirements or send me your contact information and I will get back to you.

/Hakan Forss

@hakanforss or @VisualWIP

Jan 17, 2011 at 5:16 PM
Edited Jan 17, 2011 at 8:34 PM

Hi Dan,

Great to see you being actively Agile. I hope things are going well for you. It looks like you are working at managing stories broken into thin slices.  If this is the case then I'd be very interested in getting together sometime to compare our experiences in this area. 

-Formerly ABI Keith

Jan 19, 2011 at 5:10 AM


I created the requested thread.  It's http://visualwip.codeplex.com/Thread/View.aspx?ThreadId=242178



Jan 19, 2011 at 12:32 PM

Thank you Dan

Mar 12, 2012 at 9:34 PM

Re the "aging threshold" feature idea mentioned on Jan 13 2011 above, it would be great if you could highlight all items that were modified >= x days ago, where x defaults to 1, but can be quickly changed to 2 or more (to handle weekends and statutory holidays, for example). For example, we would like to display the Kanban board at our daily standup meetings, and be able to see what changes have been made since our last standup meeting (approx 24 hours ago). So if all items not modified in the past x days are greyed out (by a button click), then the ones modified in the past x days will become highlighted. This will make it easier to answer the question "What did we do yesterday?".

Perhaps this is easily done by modifying the xaml file? I just don't know how to do that yet. But it would be better if the user can toggle this so that the greyed out items can switch back to non-grey (during the standup meeting, for example) - by simply clicking a button instead of editting the xaml file.

Mar 12, 2012 at 10:43 PM

Hi Kirk,

This sounds like a great idea. I will take a look at how this can be done in a user friendly way.


Apr 4, 2012 at 10:31 PM

Hakan, looking thru your Change Set Comments, I see that on 12582 and 13326, you made improvements so that the tickets would look more like sticky notes. You also mentioned that you set their color to red, yellow, green, or transparent according to the age of the most recent change on the ticket.

For the use case of having the VisualWIP Kanban board displayed all day, this is a good idea - so that you can easily see changes made in the past few minutes.

But the use case I was thinking of re "aging threshold" was if the team only looks at the board infrequently - say once a day during the Daily Standup Meeting.

In this case, maybe a simple enhancement would be to add a couple more colors (e.g. light-grey and dark-grey - or whatever) which get set when the aging threshold becomes 24 hours and 96 hours? The 24h threshold would show what changed in the last day, whereas the 96h threshold would show on Monday what was changed on Friday.

You could also have another color for 120h - to cover what changed over a 3-day weekend (so that on the day after a long weekend, you don't miss reporting on tickets that were changed on the day before the long weekend). Another thing that the 120h color (dark-grey?) would do is highlight tickets that may have been on the board "far too long".

This new idea would avoid any GUI changes (and usability issues) - it's just a couple extra threshold values in the xaml file (that already sets the colour to red/yellow/green/transparent), isn't it?

Apr 4, 2012 at 10:48 PM

It is not hard to make that change in xaml file. If you locate the WorkItemResources.xaml file and look at line 500-520 you will find the age thresholds.

Change this:

<DataTrigger Binding="{Binding 'Changed Date',Converter={StaticResource ageInMinutesConverter},ConverterParameter=0}" Value="true">
      <Setter Property="Fill" Value="Red" />

To this:

<DataTrigger Binding="{Binding 'Changed Date',Converter={StaticResource ageInMinutesConverter},ConverterParameter=1440}" Value="true">
      <Setter Property="Fill" Value="Red" />

and you will have all tickets that has changed within the last 24 hours marked with a red marker


Apr 6, 2012 at 12:07 AM

Thanks, Håkan. You may have seen this other codeplex project called "Kanban 2010 Process Template", written by David Anderson, here: http://kanban2010.codeplex.com/wikipage?title=Objectives%20of%20this%20Project&referringTitle=Home  On that page, Anderson recommends this "nice to have" feature: Canned report for daily-delta, showing what changed since yesterday.

That's exactly the feature that your xaml file change (above) implements. Thank you!

There's other "required" and "nice to have" features that he recommends there. I haven't done a point by point comparison to Visual WIP, but coming from the author of the Kanban Method, I think this is quite a good list to strive for.

Apr 6, 2012 at 12:31 AM

Further to my previous comments, I'm trying to see how I can use Visual WIP on our existing corporate VSTS / TFS system. The problem I'm faced with is that we have hundreds of existing defects (up to a year old) that I'd like to use a Kanban process to chip away at. However, it appears that you must set up a Kanban Template first, so that the TFS database has all the right columns to determine lead time and cycle time. At the moment, we only use CreateDate, ResolvedDate, and ClosedDate. Clearly, this isn't enough to set up the columns needed for tracking lead time and cycle time.

We need additional date columns to populate "Analyzing", "Analyzed / Ready to Develop", "Developing", and "Testing" Kanban board columns - which are missing. Once we have these, we'll be able to compute lead time and cycle time based on these Kanban columns:

Backlog (query based onthe existing TFS "Created" date)
Analyzed / Ready to Develop
Developed / Ready to Test (query based on the existing TFS "Resolved" date)
Tested / Ready to Deploy (query based on the existing TFS "Closed" date)

Has this issue ever been solved with VisualWIP before, or if not, how do you suggest I solve it? I'm now thinking that I can't use VisualWIP as I intended to, until I add the additional columns. Since our TFS database columns are controlled by head office (it's a mult-national corporation), it's may take quite awhile to get these additional columns authorized - unless there's another way. Is there?

My problem is also nicely stated here: http://social.msdn.microsoft.com/Forums/en-US/tfsreporting/thread/3a3c57bf-2f27-4f79-8bfc-2a413eadd741, but no one has provided an answer yet. I"m hoping that the VisualWIP guru has some ideas. ;)

Apr 7, 2012 at 12:38 AM

Just to make it clear David J. Anderson has not developed the "Kanban 2010 Process Template" on codeplex. When I last talked to him he endorses the project but are not actively involved.

The feature list is indeed a good starting point for developing an electronic Kanban tool. Visual WIP is not intended to be an electronic Kanban tool. Visual WIP is intended to be a visualization tool for process data stored in different electronic systems. At this moment TFS is the only data source but it can be extended to support systems like JIRA, SharePoint, QC and others.

/ Håkan Forss

Apr 7, 2012 at 12:53 AM

Hi Kirk,

Why would you need a Kanban Template to get chipping away on resolving your defects? Why is lead time and cycle time important to you in this context? What would a Kanban Template solve for you?

I added a suggested answer to the question at http://social.msdn.microsoft.com/Forums/en-US/tfsreporting/thread/3a3c57bf-2f27-4f79-8bfc-2a413eadd741

In short you simply need to add date fields for all the states and set the date when you make the transitions. This can be done in the work item definitions.

Visual WIP is designed to use TeamQueries so if you can by any means divide your work in different "states" using TeamQueries you can have Visual WIP visualize it.

If you don't have access to change the work item definitions but can make changes to iteration path and/or area you can use them to simulate states. Then create TeamQueries that will only show work items that is in that particular iteration path or area.

/ Håkan Forss